ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

UI-TARS 1.5 vLLM 部署与推理调优完整指南:4步从本地验证到生产

UI-TARS 1.5 vLLM 部署与推理调优完整指南:4步从本地验证到生产 UI-TARS 1.5 vLLM 部署与推理调优完整指南4步从本地验证到生产【免费下载链接】UI-TARSPioneering Automated GUI Interaction with Native Agents项目地址: https://gitcode.com/GitHub_Trending/ui/UI-TARSUI-TARS 1.5 上线第一天的故障现场服务起来了但 GUI agent 的每次点击都落偏——模型在“缩放后图像”的空间里输出坐标不映射回原始分辨率点击就必然错位。本文围绕 UI-TARS 1.5 的 vLLM 部署与推理调优展开先做两个前置选择再走通主链路然后验证坐标最后才谈调优。读完你能带走一套可复现的部署流程和配套的验证、排障方法。动手前先做两个选择量化方案与硬件档位先选路再走路。下面两个决策直接决定后续参数怎么填。量化/精度方案方案资源占用适用场景代价BF16不量化7B 权重约 14GB对定位精度敏感的任务显存占用最大FP8以官方文档为准权重约 7GBH100 档显卡精度轻微损失需回归验证4bit 量化如 AWQ权重约 4GB24G 档显卡精度损失更大先验证坐标准确率硬件档位官方部署文档对 7B 模型推荐GPU L40S 1GPU 48G备选 Nvidia L4 / A100方案资源占用适用场景代价24G 单卡BF16 放不下 65k 上下文低并发内部工具必须量化长上下文受限48G 单卡L40SBF16 长上下文富余生产基线配置硬件成本较高双卡以上张量并行权重分片高并发多业务方运维与排障复杂度上升UI-TARS 1.5 是一个面向 GUI 交互的视觉语言模型输入截图与指令输出Thought思考加Action动作与坐标。主链路实操4步从克隆到首次 Action 输出第1步环境依赖git clone https://gitcode.com/GitHub_Trending/ui/UI-TARS cd UI-TARS pip install vllm openai ui-tars # vLLM 版本以官方 release notes 为准为什么这么做ui-tars是仓库配套的解析包坐标缩放、pyautogui 脚本生成codes/tests/下的测试脚本依赖它。通过标志python -c import vllm, ui_tars; print(vllm.__version__)正常输出版本号。第2步获取模型权重pip install -U huggingface_hub[cli] huggingface-cli download ByteDance-Seed/UI-TARS-1.5-7B \ --local-dir ./UI-TARS-1.5-7B为什么这么做官方权重基于 Qwen2.5-VLvLLM 可直接加载无需转换。通过标志目录内有config.json与权重分片且分片总大小与模型页标注一致。第3步启动 vLLM 服务vllm serve ./UI-TARS-1.5-7B \ --served-model-name uitars-1.5-7b \ --max-model-len 65536 \ --gpu-memory-utilization 0.9为什么这么做65536 与官方部署文档的Max Input Length (per Query)一致多轮 GUI 对话要带历史截图长上下文是刚需。通过标志curl http://localhost:8000/v1/models返回uitars-1.5-7b。第4步发出第一个请求import json from openai import OpenAI client OpenAI(base_urlhttp://localhost:8000/v1, api_keyEMPTY) messages json.load(open(data/test_messages.json)) resp client.chat.completions.create( modeluitars-1.5-7b, messagesmessages, temperature0.0, # 官方示例用 0.0输出可复现 max_tokens400, streamTrue, ) print(.join(c.choices[0].delta.content or for c in resp))为什么这么做temperature0.0保证后续调优数据可比。通过标志输出包含Action: click(start_box(x,y))格式与 官方示例 一致。⚠️ 多轮请求时历史 assistant 消息里的坐标要用 包裹后再发送逻辑见 README_deploy.md 中的add_box_token。先验证再调优坐标解析三步验证⚠️ 跳过验证直接调优是白费功夫坐标不对吞吐越高点错越快。第1步解析单测。仓库自带解析逻辑的测试先跑通它cd UI-TARS/codes python -m unittest discover tests *_test.py通过标志全部通过。这一步只证明解析函数没问题不代表坐标映射正确。第2步坐标映射回原图。Qwen2.5-VL 系列输出的是缩放空间里的绝对坐标需按 坐标处理文档 映射回原始分辨率# 核心映射逻辑完整实现见 README_coordinates.md 与 codes/ui_tars/action_parser.py new_h, new_w smart_resize(height, width) # 缩放后尺寸factor28 x int(model_x / new_w * width) # 线性映射回原图 y int(model_y / new_h * height)通过标志在仓库根目录执行python codes/tests/inference_test.py生成的红点落点与模型意图一致。映射验证的输入是仓库自带的测试截图输出图中红点即映射回原图后的点击位置应落在目标元素上。第3步官方解析包端到端确认。from ui_tars.action_parser import ( parse_action_to_structure_output, parsing_response_to_pyautogui_code ) resp Thought: Click the button\nAction: click(start_box(100,200)) parsed parse_action_to_structure_output( resp, factor1000, origin_resized_height1080, origin_resized_width1920, model_typeqwen25vl) print(parsing_response_to_pyautogui_code(parsed, 1080, 1920))通过标志输出可执行的pyautogui.click(...)且坐标在原始分辨率范围内。用数据调优关键参数与实测方法仓库未发布推理基准数据下面表格的数值请自行实测填入建议固定单机 L40S 48G、temperature0.0、相同 20 条请求配置首 token 延迟吞吐显存占用BF16--max-model-len 32768基线实测实测实测BF16--max-model-len 65536官方推荐长上下文实测实测实测4bit 量化--max-model-len 65536实测实测实测关键参数每个一句话原理--max-model-lenKV 缓存显存与上下文长度成正比先用短上下文验证链路再提到 65536官方文档Max Input Length (per Query)同值。--gpu-memory-utilizationvLLM 预留给 KV 缓存的显存比例48G 档位取 0.9 即可。--quantization4bit/FP8 把权重显存压到 1/4 或 1/2但每换一档都要用第 2 节的坐标验证回归一次。网关 body 上限官方文档设置PAYLOAD_LIMIT8000000约 8MB防止大图请求失败自建网关如 nginx要配等价的client_max_body_size。故障速查五个常见现象对照表现象可能原因处理动作服务启动即 OOM上下文过长KV 缓存超显存调小--max-model-len或改用 4bit 量化大图请求 413 失败网关 body 上限过小按官方文档设PAYLOAD_LIMIT8000000并同步网关配置点击坐标系统性偏移坐标未从缩放空间映射回原图按 README_coordinates.md 映射或直接使用ui-tars解析包多轮历史解析报错历史坐标未包裹 token参照 README_deploy.md 的add_box_token部署容器启动失败CUDA Graph 编译问题官方文档建议设CUDA_GRAPHS0上生产拓扑与三个监控指标生产形态是“无状态推理实例 共享权重缓存 网关路由”vLLM 实例不保留业务状态多轮上下文由客户端携带扩容就是加实例权重走共享盘避免每实例重复拉取。三个核心监控指标单轮 P99 延迟参考阈值 P99 ≤ 2× P50超线先区分是并发排队还是上下文过长。坐标准确率官方仓库公布 UI-TARS-1.5 在 ScreenSpotPro 上 61.6可作回归基线生产上另建小样本回归集可复用data/test_messages.json的消息格式。大图请求失败率应接近 0出现波动先查网关 body 上限对应PAYLOAD_LIMIT配置。以上是 UI-TARS 1.5 从 vLLM 部署、坐标验证到数据化调优的最小闭环。后续可探索跟进官方发布的 UI-TARS-2结合 UI-TARS-desktop 客户端做端到端闭环基于codes/ui_tars/prompt.py的三套模板做领域定制。【免费下载链接】UI-TARSPioneering Automated GUI Interaction with Native Agents项目地址: https://gitcode.com/GitHub_Trending/ui/UI-TARS创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表