Home
Login

Ein einfaches Bildschirm-Parsing-Tool für rein visuelle GUI-Agenten

CC-BY-4.0Jupyter Notebook 22.5kmicrosoft Last Updated: 2025-03-26

OmniParser Projekt – Detaillierte Beschreibung

Projektübersicht

OmniParser ist ein umfassender Ansatz zur Analyse von Screenshots von Benutzeroberflächen in strukturierte und leicht verständliche Elemente. Dies verbessert die Fähigkeit von GPT-4V, Operationen, die den entsprechenden Bereichen der Benutzeroberfläche entsprechen, präzise zu lokalisieren, erheblich.

Projektadresse: https://github.com/microsoft/OmniParser

Kernfunktionen

1. Bildschirmanalysefähigkeiten

  • Interaktive Icon-Erkennung: Kann interaktive Icons in Benutzeroberflächen zuverlässig erkennen.
  • Semantisches Verständnis: Versteht die Semantik verschiedener Elemente in Screenshots und ordnet erwartete Aktionen den entsprechenden Bereichen auf dem Bildschirm genau zu.
  • Strukturierte Ausgabe: Konvertiert UI-Screenshots in ein strukturiertes Format, wodurch LLM-basierte UI-Agenten verbessert werden.

2. Technische Architektur

OmniParser besteht aus zwei Hauptkomponenten:

  • Interaktives Icon-Erkennungs-Dataset: Kuratiert und automatisch annotiert von populären Webseiten, wobei klickbare und bedienbare Bereiche hervorgehoben werden.
  • Icon-Beschreibungs-Dataset: Verknüpft jedes UI-Element mit seiner entsprechenden Funktion.

Hauptmerkmale

OmniTool

OmniTool: Steuern Sie eine Windows 11-VM mit OmniParser + Ihrem gewählten visuellen Modell.

Unterstützte Funktionen:

  • Multi-Agent-Orchestrierung
  • Lokale Protokollierung von Trajektorien
  • Aufbau einer Pipeline für Trainingsdaten für Ihren Bereich
  • Verbesserte Benutzeroberflächenerfahrung

Unterstützte Modelle

  • OpenAI GPT-4o/o1/o3-mini
  • DeepSeek R1
  • Qwen 2.5VL
  • Anthropic Computer Use

Installation und Verwendung

Umgebungskonfiguration

cd OmniParser
conda create -n "omni" python==3.12
conda activate omni
pip install -r requirements.txt

Modellgewichte herunterladen

for f in icon_detect/{train_args.yaml,model.pt,model.yaml} icon_caption/{config.json,generation_config.json,model.safetensors}; do huggingface-cli download microsoft/OmniParser-v2.0 "$f" --local-dir weights; done
mv weights/icon_caption weights/icon_caption_florence

Demo ausführen

python gradio_demo.py

Performance

  • Erreicht die beste Leistung in der Windows Agent Arena
  • Erreicht das neueste Bestresultat von 39,5 % im Screen Spot Pro GUI Lokalisierungs-Benchmark
  • Verbessert die Genauigkeit von GPT-4V bei GUI-Bedienungsaufgaben erheblich

Anwendungsbereiche

  1. GUI-Automatisierungstests: Automatische Erkennung und Bedienung von Benutzeroberflächenelementen
  2. Entwicklung intelligenter Assistenten: Entwicklung von KI-Assistenten, die grafische Oberflächen verstehen und bedienen können
  3. Barrierefreiheitstechnologien: Unterstützung sehbehinderter Benutzer beim Verständnis von Bildschirminhalten
  4. Prozessautomatisierung: Automatisierung sich wiederholender GUI-Bedienungsaufgaben
  5. Benutzererfahrungsforschung: Analyse der Benutzerfreundlichkeit und Interaktivität von Benutzeroberflächen

Technische Vorteile

  1. Rein visueller Ansatz: Funktioniert ausschließlich mit visuellen Informationen, ohne auf zugrunde liegenden UI-Code oder APIs angewiesen zu sein
  2. Hochpräzise Lokalisierung: Kann die Position und Funktion interaktiver Elemente präzise erkennen
  3. Plattformübergreifende Kompatibilität: Unterstützt verschiedene Betriebssysteme und Anwendungen
  4. Skalierbarkeit: Unterstützt die Integration mit verschiedenen großen Sprachmodellen

Datensätze und Modelle

Erkennungsmodell

  • Basiert auf der YOLO-Architektur
  • Verwendet die AGPL-Lizenz
  • Speziell für die UI-Elementerkennung trainiert

Beschreibungsmodell

  • Basiert auf der BLIP2- und Florence-Architektur
  • Speziell für die Generierung von Funktionsbeschreibungen von UI-Elementen

Verwandte Links