PreAct:让计算机使用代理在重复任务中越做越快
速览
PreAct是一种新型计算机使用代理技术,旨在解决AI在重复任务中每次从头推理的效率低下问题。当代理首次成功完成任务后,PreAct会将运行过程编译为轻量级的状态机程序,后续执行时直接回放该程序,速度提升8.5至13倍,且无需每步调用语言模型。该技术还引入了严格的验证机制,确保回放过程中屏幕状态与预期一致,并在出现偏差时交还控制权给代理,同时通过独立评估器筛选有效程序以维持性能稳定。
AI 深度解读
PreAct:让计算机使用智能体在重复任务中越用越快
背景
当前,基于屏幕交互的计算机使用智能体(Computer-Using Agents)正在成为连接大语言模型与现实软件操作的关键桥梁。这类智能体通过模拟人类的视觉输入和动作输出——即“点击”和“打字”——来驱动真实的软件应用。然而,现有的主流方案存在一个显著的效率瓶颈:它们解决每一个任务时都是“从零开始”的。
当被要求重复执行一个已经成功完成的任务时,现有的智能体必须重新读取屏幕截图,重新进行每一步的逻辑推理,并再次支付完整的计算成本。这种缺乏记忆和复用机制的设计,导致在处理高频、重复性工作时,资源浪费严重且响应速度低下。
核心内容
为了解决上述问题,研究人员提出了 PreAct 框架。PreAct 的核心目标是赋予智能体“经验积累”的能力,使其在面对曾经成功执行过的任务时,能够显著加速执行过程。
1. 从推理到回放:状态机程序的编译
PreAct 的工作机制分为两个阶段:学习与回放。
- 首次成功编译:当智能体首次成功完成某项任务时,PreAct 会将该次运行过程编译成一个小型的状态机程序(State-Machine Program)。这个程序由两部分组成:
- 状态(States):负责检查屏幕当前的视觉信息。
- 转换(Transitions):负责执行具体的动作。
- 直接回放加速:在后续再次执行相同任务时,PreAct 不再调用大语言模型进行逐帧推理,而是直接回放这个编译好的程序。这一机制使得执行速度提升了 8.5 到 13 倍,且无需在每一步都调用语言模型,从而大幅降低了延迟和计算开销。
2. 非盲目的回放:动态校验与接管
PreAct 的回放机制并非“盲目”地执行预设动作,而是具备环境感知能力。
- 屏幕匹配检查:在回放过程中的每一步,PreAct 都会检查当前屏幕状态是否与程序预期的状态相匹配。
- 异常接管:一旦检测到屏幕状态与预期不符(例如弹窗出现、页面加载失败或布局变化),系统会立即将控制权交还给智能体。此时,智能体将重新介入,通过正常的推理过程来处理异常情况,确保任务的鲁棒性。
3. 严格的存储纪律:独立评估器筛选
并非所有编译出的程序都会被保留在知识库中。PreAct 采用了一套严格的筛选机制来决定哪些程序值得存储:
- 独立验证:一个新生成的程序只有在被重新运行且从干净状态开始时,才能进入存储库。
- 成功确认:必须有一个独立的评估器(Independent Evaluator)确认该程序确实成功解决了任务。
- 剔除失败案例:这一机制有效过滤掉了那些“回放至最后一步却未能完成任务”的故障程序,防止错误模式被固化。
4. 基准测试表现
在移动设备、桌面应用和网页三个基准测试中,PreAct 展示了显著的性能优势:
- 性能增益:通过存储时的检查机制,PreAct 成功分离了“表现提升”的重复运行和因故障程序积累而“表现退化”的运行。这一机制在每个基准测试中带来了相当于 1.75 到 2.6 个任务 的性能提升。
- 基线对比:当没有匹配的程序可用时,PreAct 会回退到探索模式(即从头开始推理)。在这种 fallback 机制下,其表现与强大的“记录-回放”基线持平。
5. 无关因素的排除
研究还报告了一些对最终性能影响不大的因素,表明 PreAct 的鲁棒性不依赖于特定的超参数或组件选择:
- 提示词(Prompt)的具体措辞。
- 运行时护栏(Runtime Guardrails)的设置。
- 程序选择机制:无论是使用大语言模型还是普通的嵌入向量检索器(Embedding Retriever)来选择复用的程序,对结果没有显著影响。
关键要点
- 速度飞跃:通过编译状态机程序并直接回放,PreAct 将重复任务的执行速度提升了 8.5-13 倍,且消除了每步调用 LLM 的成本。
- 安全回放:回放过程包含实时屏幕校验,一旦环境偏离预期,立即交还控制权给智能体进行重新推理,确保操作的安全性。
- 质量筛选:只有经过独立评估器确认能成功完成任务的程序才会被存储,有效防止了错误程序的积累和传播。
- 跨平台通用性:该机制在移动、桌面和网页三种不同界面环境下均表现出一致的性能提升方向。
- 组件解耦:程序选择模块(LLM vs 嵌入检索)和提示工程对整体性能影响较小,说明框架的核心优势在于其回放与校验机制本身。
意义与影响
PreAct 的提出标志着计算机使用智能体从“单次推理”向“经验复用”范式的重要转变。
首先,它解决了智能体在实际部署中面临的可扩展性难题。通过消除重复任务中的冗余推理,PreAct 大幅降低了 API 调用成本和响应延迟,使得智能体能够以接近人类熟练工的速度处理高频操作。
其次,它引入了混合智能架构的理念。PreAct 结合了确定性程序(状态机回放)的高效性与非确定性模型(LLM)的灵活性。这种“正常情况走捷径,异常情况走推理”的策略,为构建更可靠、更高效的自动化代理系统提供了新的技术路径。
最后,其严格的存储筛选机制证明了数据质量优于数据数量。在智能体记忆库的管理上,引入独立的验证环节可以有效遏制“错误记忆”的累积,这对于长期运行的自主智能体系统具有重要的工程指导意义。
