OmniParser omnitool 使用体验和使用中踩过的坑

我来帮你重新组织这篇技术体验文章,让它更有结构性和可读性。

OmniParser 与 OmniTool 实践体验总结

前言

最近我尝试了 Microsoft 开源的 OmniParser 和 OmniTool 这两个工具,这里记录一下使用体验和踩坑经历。作为一名开发者,我觉得这套工具组合挺有意思的,特别是在 AI 控制计算机这个领域。

工具介绍

OmniParser

OmniParser 是一个图像识别工具,主要功能是:

  • 自动识别图片中的元素
  • 为识别到的元素打标签和编号
  • 记录元素位置信息

个人使用体验:

  • 在我的 RTX 4070 笔记本(8GB显存)上,处理 720p 图片仅需约 1.5 秒
  • CPU 模式下性能差距明显,同样的任务需要 30 多秒
  • 识别准确度令人满意

OmniTool

OmniTool 是建立在 OmniParser 基础上的自动化工具:

  • 将 OmniParser 的识别结果传递给 LLM
  • 解析 LLM 的响应并通过 pyautogui 控制计算机
  • 使用 QEMU 和 Win11 企业版镜像作为沙盒环境

实践经验

模型对比

我测试了两个模型:

  1. Qwen 2.5-vl-72b-instruct

    • 响应速度快
    • Token 消耗大(简单任务就用了 20 万 token)
    • 执行可靠性有待提高,经常中途出错
  2. Deepseek-r1-distill-llama-70b

    • 目前免费使用
    • 同样存在执行中断问题
    • 结构解析准确度需要提升

踩坑记录

  1. GPU 加速问题

    解决方案:手动下载 GPU 版本的 PyTorch
    参考:https://pytorch.org/get-started/locally/
    
  2. 虚拟机连接问题

    • 错误提示:Validation errors: Windows Host is not responding
    • 解决方案:
      1. 在虚拟机中重新克隆 OmniParser 项目
      2. 使用 PyCharm 运行 win11setup/setupscripts/server/main.py

Docker 使用建议

在国内环境下,Docker 镜像拉取可能比较慢,建议:

  • 使用国内镜像源
  • 或搭建私有镜像仓库

下面就是中文教程

OmniTool 中文文档

通过 OmniParser + 您选择的视觉模型控制 Windows 11 虚拟机

主要亮点

  1. OmniParser V2 比 V1 快 60%,可识别多种操作系统图标、应用程序图标及内部界面元素!
  2. OmniBox 虚拟机比同类测试环境节省 50% 磁盘空间,同时提供完整的计算机操作 API
  3. OmniTool 原生支持主流视觉模型:OpenAI (4o/o1/o3-mini)、DeepSeek (R1)、Qwen (2.5VL) 和 Anthropic 计算机操作模型

系统架构

包含三大核心组件:

omniparserserver运行 OmniParser V2 的 FastAPI 服务器
omnibox运行在 Docker 容器中的 Windows 11 虚拟机
gradio提供操作界面,可实时观察AI推理和执行过程

演示视频

OmniParser V2观看视频
OmniTool观看视频

注意事项

  1. OmniParser V2 支持 CPU 运行,但建议部署在 GPU 服务器以获得最佳性能
  2. OmniBox 需要 KVM 虚拟化支持,建议在 Windows/Linux 系统运行(无需 GPU)
  3. 建议将 omnibox 和 gradio 部署在同一 CPU 服务器,omniparserserver 部署在 GPU 服务器

安装步骤

  1. omniparserserver 服务端:

    a. 如果已有 OmniParser 的 conda 环境可直接使用,否则按以下步骤创建:

    b. 确认已安装 conda(通过 conda --version),未安装请从 Anaconda 官网 获取

    c. 进入项目根目录:cd OmniParser

    d. 创建 conda 环境:conda create -n "omni" python==3.12

    e. 激活环境:conda activate omni

    f. 安装依赖:pip install -r requirements.txt

    g. 下载 V2 模型权重(确保权重目录名为 icon_caption_florence):

    rm -rf weights/icon_detect weights/icon_caption weights/icon_caption_florence 
    for folder in icon_caption icon_detect; do huggingface-cli download microsoft/OmniParser-v2.0 --local-dir weights --repo-type model --include "$folder/*"; done
    mv weights/icon_caption weights/icon_caption_florence
    

    h. 进入服务目录:cd OmniParser/omnitool/omniparserserver

    i. 启动服务:python -m omniparserserver

  2. omnibox 虚拟机:

    a. 安装 Docker Desktop

    b. 访问 微软评估中心,下载 Windows 11 Enterprise Evaluation (90天试用版,英语-美国) ISO 文件[约6GB]。重命名为 custom.iso 并复制到 OmniParser/omnitool/omnibox/vm/win11iso

    c. 进入管理脚本目录:cd OmniParser/omnitool/omnibox/scripts

    d. 创建虚拟机[400MB]并安装系统[20GB]:./manage_vm.sh create

    e. 管理命令:

    • 启动:./manage_vm.sh start
    • 停止:./manage_vm.sh stop
    • 删除:./manage_vm.sh delete 并手动删除 OmniParser/omnitool/omnibox/vm/win11storage
  3. gradio 界面:

    a. 进入界面目录:cd OmniParser/omnitool/gradio

    b. 激活环境:conda activate omni

    c. 启动服务:python app.py --windows_host_url localhost:8006 --omniparser_server_url localhost:8000

    d. 打开终端显示的 URL,设置 API Key 即可开始使用!

风险控制

遵循微软人工智能原则和负责任AI实践:

  1. 通过负责任AI数据训练图标识别模型,避免推断敏感属性
  2. 建议仅处理不包含有害/暴力内容的截图
  3. 使用微软威胁建模工具进行安全分析
  4. 保持人工监督以最小化风险

致谢

感谢以下优秀项目的启发:

特别感谢 Francesco Bonacci、Jianwei Yang、Dillon DuPont、Yue Wu、Anh Nguyen 等专家的宝贵建议。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值