Home
Login

一個面向純視覺GUI智能體的簡單螢幕解析工具

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

OmniParser 項目詳細介紹

項目概述

OmniParser 是一個全面的方法,用於將使用者介面截圖解析為結構化且易於理解的元素,這顯著增強了 GPT-4V 生成能夠準確定位到介面對應區域的操作的能力。

項目地址: https://github.com/microsoft/OmniParser

核心功能

1. 螢幕解析能力

  • 互動式圖示檢測: 能夠可靠地識別使用者介面中可互動的圖示
  • 語義理解: 理解截圖中各種元素的語義,並準確地將預期動作與螢幕上的對應區域關聯
  • 結構化輸出: 將 UI 截圖轉換為結構化格式,改善基於 LLM 的 UI 智能體

2. 技術架構

OmniParser 包含兩個主要組件:

  • 互動式圖示檢測資料集: 從流行網頁策劃並自動標註,突出可點擊和可操作區域
  • 圖示描述資料集: 將每個 UI 元素與其對應功能相關聯

主要特性

OmniTool

OmniTool:使用 OmniParser + 您選擇的視覺模型控制 Windows 11 虛擬機器

支援功能:

  • 多智能體編排
  • 軌跡本地日誌記錄
  • 為您的領域構建訓練資料管道
  • 改進的使用者介面體驗

支援的模型

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

安裝和使用

環境配置

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

下載模型權重

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

運行演示

python gradio_demo.py

性能表現

  • 在 Windows Agent Arena 上達到最佳性能
  • 在 Screen Spot Pro GUI 定位基準測試中達到 39.5% 的最新最佳結果
  • 顯著提升 GPT-4V 在 GUI 操作任務中的準確性

應用場景

  1. GUI 自動化測試: 自動識別和操作使用者介面元素
  2. 智能助手開發: 構建能夠理解和操作圖形介面的 AI 助手
  3. 無障礙技術: 幫助視覺障礙使用者理解螢幕內容
  4. 流程自動化: 自動化重複的 GUI 操作任務
  5. 使用者體驗研究: 分析使用者介面的可用性和互動性

技術優勢

  1. 純視覺方法: 不依賴於底層 UI 代碼或 API,僅通過視覺資訊工作
  2. 高精度定位: 能夠精確識別可互動元素的位置和功能
  3. 跨平台兼容: 支援多種作業系統和應用程式
  4. 可擴展性: 支援與多種大型語言模型集成

資料集和模型

檢測模型

  • 基於 YOLO 架構
  • 使用 AGPL 許可證
  • 專門訓練用於 UI 元素檢測

描述模型

  • 基於 BLIP2 和 Florence 架構
  • 專門用於生成 UI 元素的功能描述

相關連結