ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

三步跑通 UI-TARS GUI 动作解析流程:本地安装到输出 pyautogui 脚本指南

2026/9/15 14:45:01 拓冰建站 浏览量
三步跑通 UI-TARS GUI 动作解析流程:本地安装到输出 pyautogui 脚本指南 三步跑通 UI-TARS GUI 动作解析流程本地安装到输出 pyautogui 脚本指南【免费下载链接】UI-TARSPioneering Automated GUI Interaction with Native Agents项目地址: https://gitcode.com/GitHub_Trending/ui/UI-TARS模型给你吐出一句Action: click(start_box(197,525))可怎么把它变成屏幕上真实的一次点击UI-TARS 就是干这个的一个视觉语言模型驱动的 GUI 交互智能体它看截图、输出可执行的操作指令codes/ 目录下的 ui_tars 包负责把输出解析成 pyautogui 脚本。下面带你本地跑通这条解析链路并讲透两个核心文件。快速认识 UI-TARS 项目定位UI-TARS 是一个开源多模态智能体它不依赖 DOM 或元素选择器直接以截图为输入模型看懂界面后按固定的Thought Action格式输出点击、输入、拖拽、快捷键、滚动等操作仓库同时提供桌面、手机、纯坐标定位三套 prompt 模板供你按场景选用。它和常见自动化路线的差别一目了然方案原理适用场景手写 RPA 脚本固定选择器与操作序列界面固定、流程重复浏览器 DOM 自动化按 CSS/XPath 定位元素结构稳定的 Web 页面UI-TARS 视觉模型直接看截图模型输出坐标与动作跨平台界面、动态元素、拿不到 DOM安装环境并跑通解析测试第一步克隆仓库并安装解析包。Python 包ui-tars位于 codes/ 目录要求 Python 3.10详见 pyproject.tomlgit clone https://gitcode.com/GitHub_Trending/ui/UI-TARS cd UI-TARS/codes pip install .第二步准备一张截图。仓库 data/ 目录自带 1920×1080 的样例截图可以直接当输入不用额外准备素材。第三步用单测验证环境。在 codes 目录下执行python -m unittest discover tests *_test.py全部用例都是纯解析逻辑、不依赖 GPU看到 OK 就说明环境就绪 拆解两个核心文件和一个测试脚本codes/ui_tars/action_parser.py解析主力模块把模型原始输出转成结构化动作和 pyautogui 代码。关键点model_type 为 qwen25vl 时smart_resize会算出模型侧缩放后的宽高均为 28 的倍数、总像素在 100×28² 到 16384×28² 之间再把模型输出的绝对坐标除以这两个值归一化。codes/ui_tars/prompt.py定义 COMPUTER_USE / MOBILE_USE / GROUNDING 三套 prompt 模板约定Thought Action输出格式和动作空间。关键点按目标平台选模板GROUNDING 只输出 Action、不带推理过程。codes/tests/inference_test.py坐标换算与可视化的示例脚本。关键点把模型输出坐标 (197,525) 按缩放比例换回原图并打红点产出下图这张 SOM 图你可以直接用它核对模型想点哪。跑一个从指令到脚本的最小示例最精简的链路长这样喂一行模型输出得到可执行的 pyautogui 脚本。样例截图用 data/coordinate_process_image.png1920×1080from ui_tars.action_parser import parse_action_to_structure_output, parsing_response_to_pyautogui_code response Thought: Click the button\nAction: click(start_box(100,200)) parsed parse_action_to_structure_output(response, factor1000, origin_resized_height1080, origin_resized_width1920, model_typeqwen25vl) print(parsing_response_to_pyautogui_code(parsed, 1080, 1920))预期输出先打印import pyautogui接着是一段包含 Observation/Thought 的文档字符串注释最后一行是形如pyautogui.click(x99, y197)的调用——(100,200) 是模型在缩放后图像上的坐标除以缩放尺寸再乘回原始 1920×1080具体数值因取整略有出入但会非常贴近原位置。高频报错与应对方式现象原因处理点击位置明显偏移model_type 与模型坐标系不匹配qwen25vl 输出绝对坐标老版 qwen2vl 输出 0~1000 相对值传参时核对模型类型factor1000 只对非 qwen25vl 模型生效解析报 Action cant parse模型输出格式破损如括号缺失、不符合函数(参数值)形式对照 prompt.py 模板核对输出格式或手工修正原文红点与实际元素对不上origin_resized_width/height 传成了缩放后的尺寸传原始截图尺寸如 1920×1080按 README_coordinates.md 的可视化流程排查安装时报 Python 版本错误pyproject.toml 声明 requires-python 为 3.10,4.0新建 3.10 的虚拟环境后重装pyautogui 脚本无法执行无显示环境headless 服务器做不了 GUI 操作换到带桌面会话的机器上运行跑通后值得尝试的三个方向扩展解析规则模型若输出新格式如point标签在parse_action_to_structure_output里补一个转换分支接真实推理按 README_deploy.md 部署模型用 data/test_messages.json 的指令截图做输入串到解析函数可视化排障照 codes/tests/inference_test.py 的思路给解析出的坐标画红点快速验证点击位置一分钟回顾清单在 codes 目录装好 ui-tars单测全部通过说清三步链路模型原始输出 → 结构化动作action_type action_inputs→ pyautogui 脚本记住 smart_resize 规则宽高取 28 的倍数、受总像素上下限约束坐标按缩放尺寸归一化坐标偏移时优先检查 model_type 与原始图像尺寸参数资源汇总codes/README.md — ui-tars 安装与 API 说明codes/ui_tars/action_parser.py — 解析核心源码README_coordinates.md — 坐标换算与可视化教程README_deploy.md — 模型部署与推理UI_TARS_paper.pdf — 技术报告【免费下载链接】UI-TARSPioneering Automated GUI Interaction with Native Agents项目地址: https://gitcode.com/GitHub_Trending/ui/UI-TARS创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考