Tutoriales de implantación local de Microsoft open source magic OmniParser-v2.0

Instalación del entorno python

Estoy aquí con una versión previamente instalada: python 3.11.5, que no cubriré aquí, pero puedes encontrar tutoriales en línea si los necesitas.

Instalación de Anaconda

Estoy aquí con una versión previamente instalada: conda 23.7.4, que tampoco describiré aquí, pero puedes encontrar tutoriales online si los necesitas.

Instalar OmniParser

git clone https://github.com/microsoft/OmniParser.git
cd OmniParser

Crear entornos exclusivos

conda create -n "omni" python==3.11
conda activate omni

Ejecute el siguiente comando para descargar los paquetes de dependencias necesarios.

pip install -r requirements.txt

descargando microsoft/OmniParser-v2.0 El fichero modelo, pero no puedo acceder al sitio web (https://huggingface.co), así que elegíhttps://hf-mirror.com/.

微软开源神器OmniParser-v2.0本地部署教程

Buscar microsoft/OmniParser-v2.0

微软开源神器OmniParser-v2.0本地部署教程

Una vez dentro, haz clic en las carpetas icon_caption e icon_detect) y descarga los archivos de cada una.

微软开源神器OmniParser-v2.0本地部署教程

Principalmente los seis documentos siguientes.

icon_detect/train_args.yaml
icon_detect/model.pt
icon_detect/model.yaml
icon_caption/config.json
icon_caption/generation_config.json
icon_caption/model.safetensors

Cree un nuevo directorio en el directorio del proyecto como sigue

mkdir -p weights/icon_detect
mkdir -p weights/icon_caption_florence

El resultado final es el siguiente:

微软开源神器OmniParser-v2.0本地部署教程

Descarga los archivos del apartado anterior y colócalos en las carpetas correspondientes.

微软开源神器OmniParser-v2.0本地部署教程

Ejecuta el comando python gradio_demo.py, y tras una breve espera, se produce el siguiente error.

[2025-02-25 20:11:26,669] [ WARNING] easyocr.py:80 - Neither CUDA nor MPS are available - defaulting to CPU. Note: This module is much faster with a GPU.
Traceback (most recent call last):
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3connection.py", line 203, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3utilconnection.py", line 85, in create_connection
    raise err
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3utilconnection.py", line 73, in create_connection
    sock.connect(sa)
TimeoutError: timed out

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3connectionpool.py", line 790, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3connectionpool.py", line 491, in _make_request
    raise new_e
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3connectionpool.py", line 467, in _make_request
    self._validate_conn(conn)
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3connectionpool.py", line 1096, in _validate_conn
    conn.connect()
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3connection.py", line 611, in connect
    self.sock = sock = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3connection.py", line 212, in _new_conn
    raise ConnectTimeoutError(
urllib3.exceptions.ConnectTimeoutError: (<urllib3.connection.HTTPSConnection object at 0x0000019B3B7505D0>, 'Connection to huggingface.co timed out. (connect timeout=10)')

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:DevelopmentToolsPythonLibsite-packagesrequestsadapters.py", line 486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3connectionpool.py", line 844, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagesurllib3utilretry.py", line 515, in increment
    raise MaxRetryError(_pool, url, reason) from reason  # type: ignore[arg-type]
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: /microsoft/Florence-2-base/resolve/main/config.json (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x0000019B3B7505D0>, 'Connection to huggingface.co timed out. (connect timeout=10)'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:DevelopmentToolsPythonLibsite-packageshuggingface_hubfile_download.py", line 1376, in _get_metadata_or_catch_error
    metadata = get_hf_file_metadata(
               ^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packageshuggingface_hubutils_validators.py", line 114, in _inner_fn
    return fn(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packageshuggingface_hubfile_download.py", line 1296, in get_hf_file_metadata
    r = _request_wrapper(
        ^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packageshuggingface_hubfile_download.py", line 280, in _request_wrapper
    response = _request_wrapper(
               ^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packageshuggingface_hubfile_download.py", line 303, in _request_wrapper
    response = get_session().request(method=method, url=url, **params)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagesrequestssessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagesrequestssessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packageshuggingface_hubutils_http.py", line 96, in send
    return super().send(request, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagesrequestsadapters.py", line 507, in send
    raise ConnectTimeout(e, request=request)
requests.exceptions.ConnectTimeout: (MaxRetryError("HTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: /microsoft/Florence-2-base/resolve/main/config.json (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x0000019B3B7505D0>, 'Connection to huggingface.co timed out. (connect timeout=10)'))"), '(Request ID: 3ae795ae-e87f-45e3-8c1b-26c359494139)')

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:DevelopmentToolsPythonLibsite-packagestransformersutilshub.py", line 342, in cached_file
    resolved_file = hf_hub_download(
                    ^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packageshuggingface_hubutils_validators.py", line 114, in _inner_fn
    return fn(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packageshuggingface_hubfile_download.py", line 862, in hf_hub_download
    return _hf_hub_download_to_cache_dir(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packageshuggingface_hubfile_download.py", line 969, in _hf_hub_download_to_cache_dir
    _raise_on_head_call_error(head_call_error, force_download, local_files_only)
  File "D:DevelopmentToolsPythonLibsite-packageshuggingface_hubfile_download.py", line 1489, in _raise_on_head_call_error
    raise LocalEntryNotFoundError(
huggingface_hub.errors.LocalEntryNotFoundError: An error happened while trying to locate the file on the Hub and we cannot find the requested files in the local cache. Please check your connection and try again or make sure your Internet connection is on.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "E:OmniParsergradio_demo.py", line 16, in <module>
    caption_model_processor = get_caption_model_processor(model_name="florence2", model_name_or_path="weights/icon_caption_florence")
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:OmniParserutilutils.py", line 63, in get_caption_model_processor
    processor = AutoProcessor.from_pretrained("microsoft/Florence-2-base", trust_remote_code=True)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagestransformersmodelsautoprocessing_auto.py", line 305, in from_pretrained
    config = AutoConfig.from_pretrained(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagestransformersmodelsautoconfiguration_auto.py", line 1075, in from_pretrained
    config_dict, unused_kwargs = PretrainedConfig.get_config_dict(pretrained_model_name_or_path, **kwargs)
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagestransformersconfiguration_utils.py", line 594, in get_config_dict
    config_dict, kwargs = cls._get_config_dict(pretrained_model_name_or_path, **kwargs)
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagestransformersconfiguration_utils.py", line 653, in _get_config_dict
    resolved_config_file = cached_file(
                           ^^^^^^^^^^^^
  File "D:DevelopmentToolsPythonLibsite-packagestransformersutilshub.py", line 385, in cached_file
    raise EnvironmentError(
OSError: We couldn't connect to 'https://huggingface.co' to load this file, couldn't find it in the cached files and it looks like microsoft/Florence-2-base is not the path to a directory containing a file named config.json.
Checkout your internet connection or see how to run the library in offline mode at 'https://huggingface.co/docs/transformers/installation#offline-mode'.

Parece un montón de errores, pero en realidad es sólo https://huggingface.co La razón de la falta de acceso. Cambiemos el archivo constants.py en la carpeta https://huggingface.co Sustituir porhttps://hf-mirror.com.

微软开源神器OmniParser-v2.0本地部署教程

Por eso, aún inseguro, busqué tutoriales en Internet y añadí otra línea de ajustes en la parte superior.

微软开源神器OmniParser-v2.0本地部署教程

Introduce de nuevo el comando python gradio_demo.py y se ejecutará correctamente como se muestra a continuación:

微软开源神器OmniParser-v2.0本地部署教程

Introdúcelo en tu navegador:http://127.0.0.1:7861Los resultados se muestran a continuación:

微软开源神器OmniParser-v2.0本地部署教程

Haz una captura de pantalla del escritorio y pídele que la analice:

微软开源神器OmniParser-v2.0本地部署教程
© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...