论文
StateAct:针对长期计算机使用代理的像素之前的程序状态
StateAct: Program State, before Pixels, for Long-Horizon Computer-Use Agents
摘要
计算机使用代理通常通过加强感知来改进:更好的模型来阅读屏幕截图并选择点击位置。然而,屏幕截图只是底层程序状态的有损渲染,例如保存任务数据的文件、应用程序后端和 DOM。不同的状态可以产生相同的像素,而代码可以直接检查和修改该状态。 StateAct 是围绕这一区别构建的代码优先的多代理工具。它的主代理通过使用代码直接处理程序状态,而专用的 GUI 子代理则处理少数需要它的子目标的屏幕截图和单击交互,仅 108 个任务中的 28 个任务和主代理步骤的 1.1%。对程序状态的相同直接访问还支持验证:独立的完成门会仔细检查保存的结果是否存在结构故障,例如输出丢失、未保存或写入错误的路径。为了在数百步中保持正轨,主代理将子目标交给新的子代理,以保持其自身上下文的重点。在 OSWorld 2.0 上,StateAct 将 Claude Opus 4.8 在二进制成功时从 20.6% 提升到 26.9%,在部分成功时从 54.8% 提升到 61.6%,每个任务的成本比仅由屏幕截图驱动的相同模型低约 9 倍;没有 GUI 子代理的纯代码变体仅达到 45.9% 的部分,低于基于屏幕截图的基线的 54.8%。一般来说,将行动、验证和记忆扎根于状态,即我们所说的状态扎根,将主要瓶颈从感知转向推理:失败更多地取决于代理的想法,而不是它所看到的。