C
ChaoBro

阿里通义实验室 ToolCUA:让 Computer Use Agent 学会"什么时候该调 API,什么时候该点鼠标"

阿里通义实验室 ToolCUA:让 Computer Use Agent 学会"什么时候该调 API,什么时候该点鼠标"

Computer Use Agent(CUA)这两年火得一塌糊涂。Anthropic 率先在 Claude 里加入了 computer use 能力,让模型能像人一样操作电脑——移动鼠标、点击按钮、敲击键盘。但很快,研究者发现了一个尴尬的问题:CUA 太"老实"了。

它能点击、能打字,但面对"把这份 50 页的 PDF 转成 Word 再发给客户"这种任务,它会老老实实地一页一页复制粘贴,而不是调用一个转换 API 一步搞定。

这就是混合动作空间(hybrid action space)的核心困境:Agent 既可以用原子级的 GUI 操作(点击、打字),也可以调用高级工具(API、脚本),但它不知道什么时候该选哪条路。

阿里通义实验室的 ToolCUA 论文,瞄准的就是这个问题。

数据不够,合成来凑

训练 CUA 最大的障碍是什么?数据。

高质量的"GUI 操作 + 工具调用"交替轨迹极其稀缺。你可以收集纯 GUI 操作的数据(录屏、自动化脚本),但涉及真实工具调用的轨迹收集起来又贵又脆弱——每个工具都有自己的接口、错误模式、认证流程。

ToolCUA 的做法很聪明:复用大量静态 GUI 轨迹,合成一个 grounded 工具库

具体来说,他们设计了一个"交错 GUI-Tool 轨迹扩展流水线"。先拿现成的 GUI 轨迹(比如 OpenWebVoyager 等数据集),然后自动识别其中可以用工具替代的操作片段,替换成对应的工具调用。这样一来,不需要人工标注,不需要跑真实的工具执行,就能生成大量交错的 GUI-Tool 轨迹。

这不是简单的数据增强,而是一种结构化的轨迹重构——保留了原始任务语义,但改变了执行路径。

三阶段训练:从模仿到自主探索

ToolCUA 的训练分三步走,每一步都比上一步更难,也更接近真实场景。

第一阶段:SFT 预热。 用合成轨迹做有监督微调,让模型初步学会"什么时候该用什么"。这一步是打底,相当于给 Agent 一个基本的直觉。

第二阶段:Tool-Bootstrapped GUI RFT(强化微调)。 这是关键一步。模型在关键的 GUI-Tool 切换点上做单轮 RL 优化——不是在整个长轨迹上做 credit assignment(那太难了),而是聚焦在"切换决策"这个局部。简单说,就是让模型在"我该继续点还是该调 API"这个分叉口上学得更准。

第三阶段:Online Agentic RL。 把模型放进一个高保真的 GUI-Tool 沙盒环境里,让它自主探索。这里的奖励函数是精心设计的"Tool-Efficient Path Reward"——不仅看任务是否完成,还看路径是否高效。用工具省了步骤就加分,用了但没省就扣分。

这个设计的精妙之处在于:它没有直接奖励"用工具"这个行为,而是奖励"用工具带来效率提升"。这样模型不会过度依赖工具,也不会完全不用工具。

结果:66% 的相对提升

在 OSWorld-MCP 基准上,ToolCUA 达到了 46.85% 的准确率,比基线模型提升了约 66%。更值得注意的是,相比纯 GUI 设置,它还提升了 3.9%——这说明 GUI-Tool 编排不是简单的"多一个选项",而是确实带来了互补增益。

在同等规模的模型中,这是新的 SOTA。

为什么说这条路是对的

ToolCUA 的意义不在于刷榜,而在于它验证了一个范式:混合动作空间的训练是可行的,而且有明确的方法论

过去,研究 CUA 的人要么专注 GUI 操作(视觉 grounding、点击坐标预测),要么专注工具调用(API 选择、参数填充)。ToolCUA 把两者打通了,而且不是简单地拼在一起,而是通过分阶段训练让模型真正学会了"路径选择"这个更高阶的能力。

论文已经开源,代码在 GitHub,模型权重在 Hugging Face(mPLUG/ToolCUA-8B)。8B 参数就能做到这个效果,性价比很高。

对于做 Agent 的人来说,ToolCUA 的训练范式——合成轨迹扩展 → 局部切换点 RL → 全局自主探索——值得认真考虑。

论文地址arXiv:2605.12481 项目主页https://x-plug.github.io/ToolCUA/ 代码https://github.com/X-PLUG/ToolCUA 模型https://huggingface.co/mPLUG/ToolCUA-8B