ProCUA-SFT 技术报告:基于合成轨迹的计算机使用代理监督微调数据集 ProCUA-SFT Technical Report
ProCUA-SFT通过310万样本将CUA性能提升至45.0%
前置知识
计算机使用代理(CUA)
计算机使用代理是一类能够通过感知屏幕截图和执行键盘鼠标操作来与图形化桌面环境交互的AI系统。与依赖DOM树或结构化API的传统GUI代理不同,CUA直接基于视觉信息进行决策,这使得它们能够在不依赖应用特定接口的情况下操作各种软件。CUA通常结合视觉语言模型来理解屏幕内容和规划操作序列,最终通过自动化工具如pyautogui执行点击、滚动、输入等原始GUI操作,实现跨应用程序的复杂任务自动化。
理解CUA是阅读本文的基础,因为整篇论文都围绕如何为这类模型生成高质量的训练数据展开。论文中提到的所有方法设计、实验设置和性能评估都针对CUA这一特定任务场景。
负迁移(Negative Transfer)
负迁移是迁移学习中的核心挑战之一,指的是当源域数据与目标域任务不匹配时,使用源域数据训练模型反而会导致在目标任务上的性能下降。在本文语境中,论文发现使用AgentNet的22.5K人类轨迹对UI-TARS 7B进行SFT时,模型在OSWorld基准上的成功率从26.3%下降到8-10%,这就是典型的负迁移现象。造成负迁移的原因包括:源数据与目标任务分布不一致、源数据包含噪声、源数据过于简单无法泛化到复杂场景等。
负迁移是本文要解决的核心问题,也是整个工作的出发点。理解负迁移机制有助于理解为什么简单的合成数据策略会失败,以及为什么本文的四重设计能够避免负迁移。
前提条件验证(Precondition Checking)
前提条件验证是一种确保生成任务可行性的机制,其核心思想是在执行任务之前先验证所有必要条件是否满足。在本文的实现中,VLM在生成目标时会同时输出一组二元前提条件(如Desktop上是否存在Q3.xlsx),然后通过独立的Judge策略逐个验证这些条件是否成立。只有当所有前提条件都通过验证时,目标才会被接受并进入执行阶段;失败的验证会被反馈给生成器以引导下一次尝试。这种机制避免了在不可行目标上浪费计算资源,并确保训练数据都是真正可执行的。
前提条件验证是本文方法的第一核心创新点,也是理解整个pipeline工作原理的关键。它将任务合成从幻想式生成转变为接地式生成,是解决合成数据质量问题的核心机制。
OSWorld基准
OSWorld是一个评估GUI代理能力的综合性基准测试,它在真实的Linux、Windows和macOS虚拟机环境中提供369个桌面任务,给予模型无限制的键盘和鼠标控制权限。与之前的基于网页或简化的微任务基准不同,OSWorld要求代理在真实的操作系统环境中完成复杂的跨应用工作流程,比如从电子表格读取数据、在网上搜索信息、将结果总结到演示文稿中等。OSWorld的成功率是衡量CUA性能的黄金标准,本文将UI-TARS 7B在OSWorld上的表现作为主要评估指标。
OSWorld是本文所有实验的核心评估平台,理解其特点和任务难度有助于正确解读论文报告的45.0%成功率的实际意义。论文中提到的性能对比、消融实验都围绕OSWorld展开。
研究动机
训练计算机使用代理(CUAs)需要大规模、多样化的轨迹数据,但最大的公共资源AgentNet(包含22.5K人类标注的跨平台轨迹)在用于监督微调时导致了严重的负迁移问题。具体来说,当UI-TARS 7B模型在AgentNet上继续训练一个epoch后,其在OSWorld基准上的成功率从26.3%下降到8-10%。这一负迁移现象归因于三个因素:首先是任务多样性有限,AgentNet的大多数轨迹是单应用工作流,中位数仅为17步;其次是缺少复杂的跨应用推理任务;最后是众包标注固有的标注噪声。尽管AgentNet在规模和覆盖面上令人印象深刻,但其数据质量与实际桌面任务的复杂性之间存在巨大鸿沟。
本文的目标是本文的目标是构建一个高质量、大规模的CUA训练数据集,能够避免负迁移问题并显著提升模型在实际桌面任务上的性能。具体而言,作者希望创建一个数据集,其中包含足够数量和多样性的轨迹,覆盖真实桌面环境中常见的高难度跨应用工作流程,同时确保每个任务都是切实可行且可执行的。最终目标是通过在该数据集上进行SFT,将UI-TARS 7B在OSWorld上的性能从26.3%的基础水平提升到更高的水平,证明合成数据可以超越人类演示数据的质量。
与已有工作不同的是,本文的独特切入角度在于将任务合成视为一个接地生成问题,并引入了在循环验证机制来确保生成目标的可行性。与现有合成方法在生成后过滤不可行任务不同,本文在任务生成阶段就通过二元前提条件验证来约束生成过程,从根本上避免了不可行目标的产生。此外,本文通过引入真实世界的复杂内容(来自SpreadsheetBench的912个真实电子表格和来自Zenodo10K的约1万演示文稿)来确保任务的难度和真实性,这是之前的合成工作所忽视的维度。第三个创新点是使用同一个VLM同时担任目标生成器、前提判断器和轨迹执行器的角色,消除了规划器-执行器能力差距的问题。
核心方法
ProCUA-SFT的整体思路是一个完全自动化的pipeline,从三个外部来源(OSWorld配置、SpreadsheetBench电子表格、Zenodo10K演示文稿)获取初始桌面状态,然后使用单个VLM(Kimi-K2.5)完成所有关键任务:生成接地任务目标、验证前提条件、执行轨迹。整个流程分为五个主要阶段:首先初始化一个真实的桌面环境,注入复杂的外部内容;然后通过VLM生成一个目标及其二元前提条件;接着通过独立的Judge验证所有前提条件是否满足;如果验证通过,则使用同一个VLM执行轨迹;最后将每个轨迹扩展为多个步前缀SFT样本。整个pipeline可以在异构计算基础设施上并行运行,包括本地KVM和服务器less云VM,这是能够生成百万级样本的关键。
核心创新点是将任务合成建模为接地生成问题,并引入在循环的二元前提条件验证机制。与传统的后过滤方法不同,本文要求生成器在输出目标的同时显式声明一组二元前提条件,这些条件必须是客观、可验证的。然后通过独立的Judge策略针对当前桌面状态逐个验证这些条件,只有当所有前提都通过时才接受目标并进入执行阶段。失败的验证会被反馈给生成器以引导下一次尝试,形成闭环的优化过程。这种机制的优势在于它从一开始就约束了生成空间,避免了在不可行目标上浪费计算资源,同时确保生成的训练数据都是真正可执行的。另一个关键创新是使用单一VLM同时担任所有角色(生成器、判断器、执行器),这消除了规划器-执行器能力差距,因为模型永远不会提出超出自己执行能力的任务。
方法步骤详情
方法的第一步是桌面环境初始化,系统从三个来源采样配置:标准的OSWorld快照、从SpreadsheetBench选择的912个真实电子表格(这些表格超过100列和20000行)、以及从Zenodo10K选择的约1万演示文稿(按CC-BY 4.0许可)。对于多文件场景,系统会采样整个Zenodo父记录,上传所有成员文件到桌面,并在LibreOffice Impress中打开1到3个。第二步是接地任务合成,VLM生成一个目标及其附带5个二元前提条件,例如Desktop上是否存在Q3.xlsx。第三步是前提验证,Judge策略独立评估每个前提是否成立,只有当所有前提都通过验证时才接受目标,否则更新反馈并重新生成,最多K轮。第四步是轨迹执行,同一个VLM接收当前截图、目标和窗口化历史,输出思考链和Action或Code对,使用pyautogui原始操作或保留的terminate函数自我终止。第五步是SFT样本转换,将每个轨迹展开为多个训练样本,每个样本包含目标和至多3个最新截图加上历史摘要,确保训练时的上下文布局与推理时完全一致。
技术新颖性
ProCUA-SFT的技术新颖性体现在四个方面。首先是在循环验证机制,通过二元前提条件验证将任务合成从幻想式转变为接地式,这确保了生成的训练数据都是真正可执行的。其次是真实内容种子策略,通过引入来自外部来源的复杂真实文档而非默认或空状态,使得模型能够学习处理真实的复杂数据,这是之前的合成工作所忽视的。第三是单模型架构,使用同一个VLM担任所有角色消除了规划器-执行器能力差距,这在理论和实践上都是更优的设计。第四是步前缀扩展策略,将长轨迹分解为多个训练样本,最大化了每个轨迹的监督信号利用率。此外,在数据集规模上,ProCUA-SFT包含310万步级SFT样本来自93K合成轨迹跨越2484个应用组合,是迄今为止最大的开源桌面CUA训练数据集。
实验结果
核心发现是ProCUA-SFT在避免负迁移的同时显著提升了CUA性能。在UI-TARS 7B上训练一个epoch后,ProCUA-SFT在OSWorld上达到45.0%的成功率,比基础模型提升18.7个百分点,比AgentNet训练的模型高出35个百分点以上。训练过程显示ProCUA的性能从11.7%稳步上升,在约4800步时达到45.0%的峰值,而AgentNet在750步后停滞在8%到10%,甚至低于26.3%的预训练基线。在相似的训练步数下,ProCUA能够恢复原始UI-TARS的性能,而AgentNet则导致性能下降。消融实验揭示了多个因素:ProCUA轨迹的平均长度约为30步,是AgentNet的约1.8倍,且长尾分布更明显;近一半的ProCUA轨迹针对LibreOffice应用,另有20%涉及多应用工作流;在动作分布上,ProCUA更多依赖键盘操作和文本输入,而AgentNet则点击主导,键盘操作和直接文本输入在像素精确定位方面本质上更稳定。数据选择策略的消融显示,按应用组合的round-robin采样策略在约700步训练预算下达到30.9%,是唯一超过基础模型基线的策略,识别出应用组合覆盖是CUA SFT的主导多样性维度。轨迹图分析显示,中位数轨迹访问5个屏幕、执行19个动作,42.3%的轨迹完全线性,只有2.2%呈现高度非线性结构。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| OSWorld desktop tasks | Success rate | 45.0% | UI-TARS 7B base: 26.3%, AgentNet: 8-10% | +18.7 pp over base, +35 pp over AgentNet |
| OSWorld (same training steps) | Success rate | 约30-40% (at about 700 steps) | UI-TARS 7B base: 26.3%, AgentNet: 8-10% | Recovers base performance while AgentNet degrades |
| Diversification strategy ablation | Success rate (about 700 steps) | 30.9% (by app combo round-robin) | 27.3% (non-diversified), 24.9% (by action set) | +3.6 pp over non-diversified, +4.6 pp over base |
局限与改进
作者承认的局限性包括:ProCUA-SFT目前主要针对Linux环境,尚未扩展到Windows和macOS;当前数据集主要集中在LibreOffice套件和Chrome浏览器,其他应用类别的覆盖相对有限;前提条件验证虽然减少了不可行任务,但仍可能存在边界情况下的判断错误;使用单一VLM担任所有角色虽然消除了能力差距,但如果VLM本身在某些任务类型上能力不足,可能会限制整个pipeline的效果。本文的观察显示:ProCUA在单应用任务上的表现可能不如在多应用任务上显著,因为单应用任务的复杂性和变化性相对较低;数据集虽然规模庞大,但在某些应用组合上仍然存在长尾分布问题,需要额外的针对性采样;轨迹图分析显示大部分轨迹仍然保持较高的线性度,可能在某些需要复杂非线性导航的任务类型上覆盖不足。
独立分析的弱点
独立分析的弱点包括:当前方法依赖单一VLM(Kimi-K2.5)担任所有角色,虽然消除了规划器-执行器能力差距,但也引入了单点故障风险——如果VLM在某些类型的任务上表现不佳,整个pipeline的质量都会受到影响。改进方向可以是引入多模型ensemble或在不同阶段使用不同能力的模型。其次是数据来源的局限性,目前主要集中在电子表格和演示文稿处理,对于其他应用类别如视频编辑、3D建模、专业软件等的覆盖不足。改进方向是扩展更多样化的外部内容来源。第三是前提条件验证虽然很有效,但二元判断可能过于粗糙,某些情况下需要更细粒度的可行性评估。改进方向可以是引入概率性判断或多层次验证机制。第四是训练策略相对简单,只使用了一个epoch的SFT,没有探索更复杂的训练技巧如课程学习、对抗训练等。改进方向是尝试更多样化的训练策略。最后是评估主要依赖OSWorld,缺少在其他基准如WebArena、VisualWebArena、Windows Agent Arena等上的评估。改进方向是进行更全面的跨基准评估。
未来方向
作者提出的未来方向包括:迭代ProCUA-SFT随着更强的开源权重VLM、额外操作系统平台和外部奖励模型的出现而改进;扩展到Windows和macOS平台以实现真正的跨平台CUA训练;引入外部奖励模型来提供更细粒度的质量信号;探索更复杂的数据选择策略如主动学习或难度感知采样。基于论文成果可以延伸的方向包括:将接地任务合成机制应用到其他合成数据场景如网页代理、移动代理;探索更复杂的前提条件表示如结构化条件或多条件组合;研究如何将轨迹图分析insights用于数据质量评估和数据选择;将步前缀扩展策略与其他增强技术如课程学习结合;探索在RLHF或RLAIF场景下使用ProCUA-SFT数据;研究如何将人类反馈纳入合成pipeline以进一步提升数据质量。另一个重要方向是探索如何将ProCUA-SFT与现有的其他CUA训练数据源如AgentNet、AITW、Mind2Web等结合,构建更大规模的统一CUA训练数据集。
复现评估
复现评估方面,论文提供了良好的复现条件。数据集已在Hugging Face上开源,包含310万步级SFT样本。方法代码虽然未在论文中明确给出开源链接,但从技术描述来看,pipeline的主要组件都是标准工具,理论上可以实现。论文详细描述了训练设置:最大序列长度32k、批大小512、学习率2e-5、余弦学习率调度器、权重衰减0.1。算力需求方面,数据收集阶段需要并行运行数千个Linux桌面虚拟机,论文提到使用本地KVM和NVIDIA Cloud Functions两种后端,表明可以通过云服务解决本地算力不足的问题。训练阶段的算力需求相对温和,只需要一个epoch的SFT。整体来说,复现难度中等:数据收集阶段需要大量算力资源,但一旦数据集发布,训练阶段相对容易。需要注意的是,论文使用的是Kimi-K2.5模型,这是一个商用模型,研究者如果使用其他开源VLM可能会影响性能复现。
论文图表
这张图展示了ProCUA-SFT的端到端流程。图的上半部分显示了三个任务配置来源如何为新鲜桌面提供种子。中间的核心部分展示了同一个VLM如何依次完成三个任务:从截图和OS状态合成接地任务、推出轨迹、通过保留的terminate调用发出成功或失败信号。下半部分展示了如何将每个轨迹展开为多个步前缀SFT样本,格式为ShareGPT,其中图像通过image占位符交错到对话中。
这张图对理解论文至关重要,因为它以简洁的视觉方式呈现了整个方法的架构。读者可以从这张图中快速理解四个核心设计如何在一个pipeline中协同工作,以及数据从源头到最终SFT样本的完整转换过程。这张图是理解方法论部分的起点。