首页 / 开源榜单 / OmniParser

OmniParser

一个面向纯视觉GUI智能体的简单屏幕解析工具

Jupyter NotebookCC-BY-4.0Agent
⭐ GitHubhttps://github.com/microsoft/OmniParser
25,193
Star 数
+279
Star 增速
2026年7月20日
最后更新
1,791
点击数

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元素的功能描述

相关链接