UI-TARS GUI 自动化教程:视觉模型如何看懂屏幕并执行点击
【免费下载链接】UI-TARSPioneering Automated GUI Interaction with Native Agents项目地址: https://gitcode.com/GitHub_Trending/ui/UI-TARS
UI-TARS 是字节跳动 Seed 团队开源的多模态 GUI Agent。它根据截图识别屏幕元素,输出点击、输入等可执行动作。仓库附带动作解析库与部署文档,支持本地与云端接入。
项目定位
UI-TARS 建立在视觉语言模型之上,通过强化学习让模型先用 Thought 推理、再输出 Action,完成桌面、浏览器与手机应用中的 GUI 任务。它适合希望用模型驱动操作替代脚本的自动化工程师和研究人员。README 同时说明边界:在模糊或不熟悉的环境中,模型可能误判元素或采取次优动作;大规模任务需要可观算力;开源的 7B 模型未针对游戏场景优化。
核心能力:从截图到动作
核心能力分三层:模型负责理解与推理,提示词模板决定动作空间,解析库负责坐标还原。
截图理解与动作输出
模型接收截图、任务指令与历史动作,输出「Thought: 推理 + Action: 动作」两行格式。架构图中的感知模块覆盖元素描述、密集说明、转换说明、问答与 Set-of-Mark 等能力,为浏览器导航、办公软件交互和文件管理这类桌面任务提供基础。
跨平台动作空间选择
codes/ui_tars/prompt.py 内置 COMPUTER_USE、MOBILE_USE 与 GROUNDING 三套提示词模板。COMPUTER_USE 面向 Windows、Linux、macOS 桌面,支持单击、双击、右键、拖拽、快捷键、输入与滚动;MOBILE_USE 面向手机或 Android 模拟器,额外提供 long_press、open_app、press_home、press_back;GROUNDING 只输出动作不带推理,适合轻量任务与评测。桌面自动化选前者,移动端选后者。
动作解析与坐标换算
基于 Qwen 2.5 VL 的模型用绝对坐标定位元素,而截图进入模型前会经过智能缩放,因此解析时必须传回原始截图尺寸与 factor 才能还原真实点击位置。ui-tars 包的 parse_action_to_structure_output 把模型输出转成结构化动作,parsing_response_to_pyautogui_code 再生成可直接运行的 pyautogui 脚本,支持 click、type、hotkey、drag、scroll 等。
解析前可以先用原图对照:下图中红点是模型输出坐标经过还原后,落在 1920x1080 截图上的实际位置。
安装与模型部署
最短路径两条命令。先装解析库:
pip install ui-tars # or uv pip install ui-tars模型本体按 README_deploy.md 部署:在 Hugging Face Inference Endpoints 导入 UI-TARS 1.5 7B,硬件选 GPU L40S 1GPU 48G(文档同时推荐 Nvidia L4、A100),并加入环境变量 CUDA_GRAPHS=0 与 PAYLOAD_LIMIT=8000000,分别用于避免部署失败和大图请求失败。这是运行 7B 模型的最低硬件要求;README 的 Limitations 也提醒,大规模或长时间任务会消耗更多算力。
第一次使用:从截图到点击脚本
端点部署完成后,第一次跑通通常按三步走。第一步,把截图与任务发给端点,原始响应形如Thought: …换行Action: click(start_box='(177,549)')(README_deploy 中的预期输出);仓库的 data/test_messages.json 也提供了现成的多轮消息示例。第二步,用解析函数还原坐标,注意 factor=1000 与原始截图宽高:
from ui_tars.action_parser import parse_action_to_structure_output response = "Thought: Click the button\nAction: click(start_box='(100,200)')" parsed_dict = parse_action_to_structure_output( response, factor=1000, origin_resized_height=1080, origin_resized_width=1920, model_type="qwen25vl" )返回的是结构化动作列表,包含 action_type、action_inputs、thought 等字段;再把它交给 parsing_response_to_pyautogui_code,即可得到可执行的自动化脚本。
使用建议与常见问题
- 点击位置不准:先检查是否按原始截图宽高传入 origin_resized_width/height。Qwen 2.5 VL 使用绝对坐标,缩放后漏还原会让点击偏移,README_coordinates.md 有完整还原与可视化示例。
- 7B 与完整模型怎么选型:README 报告 UI-TARS-1.5 在 OSWorld(100 步)取得 42.5、ScreenSpot-V2 取得 94.2;模型规模对比表中 7B 版在同一基准为 27.5,且提示 7B 未针对游戏场景优化。以通用桌面任务为目标选 7B 即可,追求更高分数可联系官方获取研究准入。
- 成本预估:云端部署以 48G L40S 实例为基准,README 指出长时间扩展场景的算力开销更高。建议先用小任务端到端跑通,再评估是否扩容。
小结
UI-TARS 把「截图进、动作出」拆成了清晰的链路:模型负责理解与推理,ui-tars 包负责解析与脚本生成。下一步建议先读完 README_deploy.md 把端点跑起来,再查看 codes/ui_tars/ 的源码理解坐标换算细节。
【免费下载链接】UI-TARSPioneering Automated GUI Interaction with Native Agents项目地址: https://gitcode.com/GitHub_Trending/ui/UI-TARS
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考