ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

如何启动 OmniTool Gradio 界面、指向 VM 与解析服务地址并配置 API Key

如何启动 OmniTool Gradio 界面、指向 VM 与解析服务地址并配置 API Key 如何启动 OmniTool Gradio 界面、指向 VM 与解析服务地址并配置 API Key【免费下载链接】OmniParserA simple screen parsing tool towards pure vision based GUI agent项目地址: https://gitcode.com/GitHub_Trending/omn/OmniParser这篇文章解决 OmniTool 部署中的最后一环在 OmniParser 解析服务和 OmniBox Windows 11 虚拟机都就绪之后如何启动 Gradio 界面、用启动参数把界面指向 VM 与解析服务的地址并配置好视觉模型的 API Key使第一次 computer use 请求能够提交并执行。适用前提是你已按 omnitool/readme.md 建好omniconda 环境、安装依赖并下载了 OmniParser V2 权重OmniBox VM 依赖 KVM只能在 Windows 或 Linux 上快速运行而 Gradio 界面和解析服务都可以在纯 CPU 机器上运行。先弄清三个组件与两个地址OmniTool 由三个组件构成见 omnitool/readme.mdomniparserserver运行 OmniParser V2 的 FastAPI 服务omnibox跑在 Docker 容器里的 Windows 11 虚拟机compose.yml中把容器内 8006 端口映射到宿主机的 8006 端口用于 Web 查看器访问gradio提供指令、查看模型推理与执行过程的 UI。文档建议的部署拓扑是omnibox 和 gradio 放在同一台 CPU 机器上omniparserserver 放在 GPU 服务器上。这直接决定了后面两个启动参数的取值两个服务在同一台机器时用默认的localhost地址即可解析服务在另一台 GPU 机器上时需要把--omniparser_server_url改成那台机器的host:port。启动前确认权重与 VM 状态解析服务依赖的权重如尚未下载OmniParser 权重放在仓库根目录的weights下。在 Hugging Face PR 37 合并之前需要先手动下载 detector 与 caption 权重以下命令在仓库根目录执行摘自 omnitool/readme.mdhuggingface-cli download microsoft/OmniParser-v2.0 icon_detect_v3/model.pt --revision refs/pr/37 --local-dir weights rm -rf weights/icon_caption weights/icon_caption_florence huggingface-cli download microsoft/OmniParser-v2.0 --local-dir weights --repo-type model --include icon_caption/* mv weights/icon_caption weights/icon_caption_florence其中rm -rf会删除weights/icon_caption与weights/icon_caption_florence两个子目录仅影响本仓库weights文件夹内已有的旧权重用于避免与新下载内容混放再执行时请确认路径确实在仓库根目录下。根目录 README.md 的 Install 一节给出的 caption 权重下载命令与上面略有不同逐文件下载icon_caption下的 3 个文件后再重命名两者最终都把 caption 权重落到weights/icon_caption_florence本文按 OmniTool 部署文档 omnitool/readme.md 的写法给出。确认 OmniBox VM 处于运行状态如果 VM 尚未创建需要先完成 omnibox 的完整初始化确保剩余空间 30GBISO 5GB、Docker 容器 400MB、存储目录 20GB、安装 Docker Desktop并下载 Windows 11 Enterprise Evaluation ISO90 天试用版重命名为custom.iso放到OmniParser/omnitool/omnibox/vm/win11iso。然后在 manage_vm.sh 所在目录执行cd OmniParser/omnitool/omnibox/scripts ./manage_vm.sh create首次创建会构建 Docker 容器并安装 ISO 到存储目录文档说明耗时 20–90 分钟常见约 60 分钟完成后终端会输出VM server is up and running!。期间可通过 NoVNC 查看器 http://localhost:8006/vnc.html?view_only1autoconnect1resizescale 观察 VM 内部应用安装进度注意 setup 结束前桌面里会出现一个终端窗口看到它时等待、不要点击桌面。可选分支如果网络较慢、想要更精简的 VM可以在创建前注释掉 setup.ps1 第 57–350 行定义的应用安装列表文档同时提醒此做法下重新创建 VM 时要按下面的 factory reset 步骤清掉旧的 omnibox 设置。如果 VM 已经创建过状态保存在vm/win11storage只需要启动即可cd OmniParser/omnitool/omnibox/scripts ./manage_vm.sh startstart会轮询 VM 内部的 5000 端口 probe返回 200 后输出VM started。你也可以手动验证 VM 内的命令服务是否可用该命令在容器内发起 curl只读、无副作用docker exec -it omni-windows bash -c curl http://localhost:5000/probe启动解析服务 omniparserserver在仓库根目录激活omni环境后进入解析服务目录并启动摘自 omnitool/readme.mdconda activate omni cd OmniParser/omnitool/omniparserserver python -m omniparserserveromniparserserver.py 中 API 的默认--host为127.0.0.1、--port为8000即默认监听localhost:8000如果解析服务要部署在另一台 GPU 机器上可按该文件的参数说明调整--host/--port或设备参数。验证方式服务提供了/probe/端点文档中展示的返回示例为{message: Omniparser API ready}可用curl http://localhost:8000/probe/检查连通性。启动 Gradio 界面并指向两个服务地址进入 gradio 目录确保已conda activate omni执行 omnitool/readme.md 给出的启动命令cd OmniParser/omnitool/gradio python app.py --windows_host_url localhost:8006 --omniparser_server_url localhost:8000两个参数的含义见 app.py 的 argparse 定义两者均有localhost默认值--windows_host_url指向 OmniBox VM 的host:port默认localhost:8006。界面右侧内嵌的 NoVNC 桌面查看器加载http://{windows_host_url}/vnc.html?...所以它必须能访问 VM 的 8006 Web 查看器端口--omniparser_server_url指向 omniparserserver 的host:port默认localhost:8000供 agent 循环调用/parse/接口。解析服务不在本机时把它改成 GPU 服务器的地址。程序入口固定demo.launch(server_name127.0.0.1, server_port7888)启动后在浏览器打开终端输出中的 URL即 http://127.0.0.1:7888 即可看到 OmniTool 页面右侧 iframe 显示 VM 桌面。配置 API Key 并提交第一条指令页面顶部的 Settings 区域包含三项控件Model下拉框默认omniparser gpt-4o其余选项包括omniparser o1、omniparser o3-mini、omniparser R1、omniparser qwen2.5vl、claude-3-5-sonnet-20241022及若干-orchestrated变体。切换模型后API Provider 的可选范围会随之联动例如 OpenAI 系模型锁定openaiomniparser R1对应groqomniparser qwen2.5vl对应dashscope。API Provider下拉框随模型选择更新。API Key输入框password 类型占位符为 Paste your API key here粘贴对应服务商的 key。程序启动时也会读取OPENAI_API_KEY、ANTHROPIC_API_KEY环境变量作为初始值若 key 为空就点提交会直接报Validation errors: LLM API Key is not set。在输入框填写一条指令后点 Send。每次提交前界面会统一校验四件事Windows Host 是否可达、OmniParser Server 是否可达、API Key 是否已设置、是否提供了请求文本任一不满足都会以Validation errors: ...的形式列出。校验通过后左侧聊天区输出模型的推理与动作右侧 NoVNC 窗口实时显示 VM 中的鼠标/键盘执行效果——这就是当前场景下启动成功、配置生效的可观察结果。报错时如何定位界面报Windows Host is not responding或OmniParser Server is not responding时按 omnitool/readme.md 的 Common setup errors 一节排查Windows Host is not responding表示 VM 内接收 Gradio 指令并移动鼠标/键盘的服务不可用。先用上面的docker exec ... curl http://localhost:5000/probe验证确认 omnibox 已完全装完NoVNC 桌面中不再有终端窗口。若等待 10 分钟无效执行./manage_vm.sh stop再./manage_vm.sh start仍无效则./manage_vm.sh delete保留存储目录后重新create这样会复用已有存储、速度更快。彻底重置 factory 的流程是./manage_vm.sh delete→ 删除vm/win11storage目录 →./manage_vm.sh create。OmniParser Server is not responding对应解析服务未启动、崩溃或--omniparser_server_url指向的地址/端口不对回到解析服务终端确认进程存活并用curl http://localhost:8000/probe/复核连通性。libpaddle: The specified module could not be foundWindowsOmniParser 使用的 OCR 库 Paddle 依赖 Windows 的 C Redistributable在 Windows 上安装该组件后重新执行pip install -r requirements.txt。边界与提示omnibox 的 Docker 依赖 KVM只能在 Windows 和 Linux 上快速运行CPU 即可不需要 GPU解析服务可跑在 CPU 上但官方将其拆分为独立服务以便在 GPU 机器上加速。文档在 Risks and Mitigations 一节中明确建议 human 保持在环human in the loop以控制风险使用本工具操作真实 VM 时按文档建议保持人工监督。完成以上步骤后你应当看到解析服务 probe 返回就绪、manage_vm.sh输出VM started、Gradio 页面内嵌的 NoVNC 显示 VM 桌面且提交指令后聊天区出现模型推理与动作输出。若某一步的报错不在上述清单内先回到对应服务的终端日志与 probe 检查确认两个地址参数与实际监听地址一致再按文档流程处理。【免费下载链接】OmniParserA simple screen parsing tool towards pure vision based GUI agent项目地址: https://gitcode.com/GitHub_Trending/omn/OmniParser创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表