AI Personal Learning
und praktische Anleitung
TRAE

Microsoft Open-Source-Magic OmniParser-v2.0 Tutorials für die lokale Bereitstellung

Installation der Python-Umgebung

Ich bin hier mit einer bereits installierten Version: Python 3.11.5, auf die ich hier nicht eingehen werde, aber Sie können online Anleitungen finden, wenn Sie sie benötigen.


Installation von Anaconda

Ich bin hier mit einer bereits installierten Version: conda 23.7.4, die ich hier auch nicht beschreiben werde, aber Sie können Tutorials online finden, wenn Sie sie brauchen.

OmniParser installieren

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

Schaffung exklusiver Umgebungen

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

Führen Sie den folgenden Befehl aus, um die erforderlichen Abhängigkeitspakete herunterzuladen.

pip install -r requirements.txt

Herunterladen von microsoft/OmniParser-v2.0 Die Modelldatei, aber ich kann nicht auf die Website zugreifen (https://huggingface.co), also wählte ichhttps://hf-mirror.com/.

Suche nach microsoft/OmniParser-v2.0

Klicken Sie dort auf die Ordner icon_caption und icon_detect) und laden Sie die Dateien herunter.

Im Wesentlichen die folgenden sechs Dokumente.

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

Erstellen Sie ein neues Verzeichnis im Projektverzeichnis wie folgt

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

Das fertige Ergebnis sieht folgendermaßen aus:

Laden Sie die Dateien aus dem vorherigen Abschnitt herunter und legen Sie sie in den entsprechenden Ordnern ab.

Führen Sie den Befehl python gradio_demo.py aus, und nach einer kurzen Wartezeit tritt der folgende Fehler auf.

[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'.

Es sieht nach vielen Fehlern aus, aber in Wirklichkeit sind es nur https://huggingface.co Der Grund für den fehlenden Zugriff. Ändern wir die Datei constants.py in der https://huggingface.co Ersetzen durchhttps://hf-mirror.com.

Aus diesem Grund suchte ich im Internet nach Anleitungen und fügte oben eine weitere Zeile mit Einstellungen hinzu.

Geben Sie den Befehl python gradio_demo.py erneut ein und er wird erfolgreich ausgeführt, wie unten gezeigt:

Geben Sie sie in Ihrem Browser ein:http://127.0.0.1:7861Die Ergebnisse sind nachstehend aufgeführt:

Machen Sie einen Screenshot des Desktops und lassen Sie ihn analysieren:

Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " Microsoft Open-Source-Magic OmniParser-v2.0 Tutorials für die lokale Bereitstellung
de_DEDeutsch