论文

CUA-SWE:当 Computer-Use Agents 遇上视觉软件工程

CUA-SWE:当 Computer-Use Agents 遇上视觉软件工程

软件开发不只是编辑代码:开发者需要反复运行软件、与其界面交互、视觉检查其行为,并据此决定下一步改什么以及改动是否有效。现有 coding agents 与 computer-use agents 大多被分开研究,这一集成的开发流程仍未被充分探索。诊断运行时的交互故障,需要 agent 将视觉观察与负责的代码关联起来,然后再次使用应用来验证修复。 我们提出 CUA-SWE,一个面向「使用计算机进行软件工程」的 benchmark、环境与评测流水线。除了研究 GUI 反馈如何支持诊断与修复,我们还追问:当必需的规格或操作信息只能通过运行中应用的视觉界面获得时,agent 能否完成软件工程任务。CUA-SWE 覆盖四个软件工程领域,要求 agent 在同一任务内修改代码与配置、执行命令、与运行中的软件交互,并检查视觉反馈。 每个任务都包含确定性的、任务专属的测试,用于验证所得软件是否满足需求并保持指定行为。我们的评测刻画了前沿 agent 如何结合源码级执行、应用截图与图形交互,产出经过验证的软件改动,并考察不同领域与任务信息需求下的表现,以及成功修复所伴随的开发行为。 CUA-SWE 提供了一个统一的测试平台,用于研究 agent 如何利用视觉反馈与交互来引导软件工程,并为所得软件给出可执行的正确性判据。

论文精读

TL;DR CUA-SWE 是一个面向软件工程的计算机使用代理基准,要求代理在修改代码、运行应用、视觉检查界面反馈中完成可验证修复,填补了视觉交互与代码修改集成开发评估的空白。

问题

问题背景

当前 AI 领域同时关注两类智能体:coding agents 擅长代码编辑与测试,computer-use agents 擅长 GUI 操作与视觉感知。但真实软件开发是“编辑代码 → 运行应用 → 观察界面 → 修正代码”的循环,两者割裂导致无法覆盖完整流程。

现有方法局限

  • SWE-bench 等传统代码基准仅通过单元测试评估 patch 正确性,不要求智能体运行 GUI、查看截图或交互式调试,因此无法表征“修复运行时视觉缺陷”的能力。
  • computer-use benchmarks(如 OSWorld)聚焦 GUI 操作,但任务不涉及修改代码或配置,缺乏可执行的软件工程验证器。
  • 现有 agent 框架也缺乏统一环境支持同时执行命令、修改文件、截图反馈和交互,导致无法研究视觉反馈如何指导代码修改。

为什么这个问题难且重要

软件开发中大量缺陷只有在运行时才可见,例如布局错乱、动画中断、交互无响应。智能体必须将 像素级异常 与 代码定位 关联,再通过再次运行验证修复,涉及跨模态推理与长程规划。构建此类基准的技术挑战包括:可复现的 GUI 环境、确定性的任务验证器、以及轨迹质量评估。随着多模态大模型能力提升,业界正将软件工程从“纯文本生成”推向“闭环交互”,该方向直接决定 coding agent 能否处理真实应用交付。

行业类比

类似自动驾驶中车辆必须通过摄像头视觉反馈调整控制策略,而非仅依据仿真代码;软件工程智能体也需要“看着”应用运行来做出正确修改决策。

核心洞察

  • CUA-SWE 首次将 computer-use(GUI 交互)与 software engineering(代码修改)整合到统一基准中,要求智能体同时完成代码编辑、命令执行与视觉界面验证。现有 coding agents(如 SWE-bench 系列)只评估补丁的正确性,computer-use agents(如 WebArena、OSWorld)只执行操作而不修改代码。CUA-SWE 迫使智能体诊断运行时交互故障:观察 GUI 行为 -> 定位相关代码 -> 实施修改 -> 重新运行应用验证修复,填补了“视觉反馈引导软件工程”这一空白,其确定性任务测试与轨迹验证使评估可复现且贴近真实开发。
  • 任务规范或操作信息仅可通过运行应用的视觉界面获得,迫使智能体从截图和交互中提取需求并转译为代码修改。与多数基准提供文本 issue 描述不同,CUA-SWE 将规格隐藏于 GUI 表现(例如布局异常、动画缺陷),智能体必须主动运行应用、观察视觉状态、推断出错原因,再修改代码验证。这考察了多模态推理与闭环开发能力,更接近开发者排查 UI 问题的实际流程,同时暴露了纯代码代理无法触及的信息缺口,突显视觉运行时证据对任务完成的必要性。
  • 轨迹级验证与可验证奖励设计支持监督微调(SFT)与 RLVR 扩展,使 CUA-SWE 不仅是评估基准,更成为后训练的数据与信号来源。该基准不仅检查最终补丁的测试通过率,还验证交互轨迹的有效性,并提供任务特定 verifier 作为奖励信号。这种“可执行正确性 + 过程验证”的设计允许生成高质量训练轨迹,智能体可通过强化学习优化从 GUI 观察到代码修改的完整策略,区别于仅依赖单元测试静态评估的传统方法,为视觉增强的软件工程代理训练提供了统一的测试床与学习框架。

方法

输入

CUA-SWE 的任务输入包含:

  • 软件代码库与配置文件
  • 任务描述文本(可能不完整)
  • 运行中应用的 GUI 截图或可交互界面
  • 部分规格信息仅通过视觉界面呈现(如 UI 文本、布局、动态行为)

关键模块

问题形式化 将软件工程过程建模为部分可观测马尔可夫决策过程。状态由源代码、文件系统、命令输出与 GUI 截图组成;观察即代理能感知的视觉与文本信息。动作空间包括:

  1. 代码编辑(修改源文件、配置)
  2. 命令执行(运行测试、启动应用)
  3. GUI 交互(点击、输入、滚动)

基准构造 从真实运行时缺陷或特性需求出发,反向生成任务规格,并构建独立验证器。每个任务都经过人工验证,确保从初始状态通过合法动作序列可以完成修复,且验证器不会误判。

能力导向扩展 刻意设计某些任务,使必要信息只能从运行应用的视觉界面获取(例如按钮颜色、动画帧、动态生成的文本),代理无法仅靠静态代码或日志推断。这迫使模型将视觉观察与代码逻辑关联。

评估与后训练 评估包括补丁正确性(通过任务特定测试)和轨迹验证(是否执行了有效的 GUI 交互)。奖励信号来自测试通过与否。从成功轨迹中抽取监督微调数据,并进一步用 GRPO 类组相对策略优化进行强化学习训练。

输出

输出为软件补丁(代码/配置更改)及完整开发轨迹,补丁由确定性测试验证是否满足需求且不破坏既有行为。

与同类方法的差异点:不同于现有编码基准(仅代码编辑)或计算机使用基准(仅 GUI 操作),CUA-SWE 在同一任务中强制将源码执行与实时 GUI 视觉反馈闭环,并要求代理从视觉界面中提取规格信息来指导修复。

实验

实验设计

CUA-SWE 基准包含四个软件工程领域,要求 agent 在同一任务内完成代码/配置修改、命令执行、与运行软件交互、检查视觉反馈。评估采用确定性任务测试验证结果软件是否满足需求。比较了 code-only 与 hybrid CUA 两种模式,后者额外获得应用程序截图与图形交互能力。实验还分析了开发行为与成功率的关系,并探索了基于验证轨迹的 SFT 与 RLVR 后训练。

关键发现

  • frontier agents 能够结合源代码级执行与视觉反馈产生经过验证的软件更改。
  • 不同领域和信息需求下表现存在差异:当规格或操作信息仅通过运行时界面的视觉呈现时,纯代码 agent 往往失败,而 hybrid CUA 可成功完成任务。
  • 成功的修复通常伴随着特定行为模式:例如先恢复代码与界面元素的关系,再将其转化为行为变更,并通过再次运行验证。
  • 后训练(SFT + RLVR)能进一步提升 agent 在基准上的表现,表明已验证的开发轨迹可作为有效学习信号。

基线对比解读

与仅依赖代码执行的 code-only 基线相比,hybrid CUA 通过融合视觉界面信息,显著拓展了可解决的任务范围,尤其在需要从运行应用中读取规格或验证条件的场景。该差异揭示了多模态交互在软件工程任务中的关键作用,并说明仅提升代码理解能力不足以覆盖真实开发闭环。

行业影响

落地场景

CUA-SWE 适用于需要结合图形界面反馈的软件工程任务。典型场景如电商平台前端交互修复:agent 启动应用、点击操作、截图定位样式或交互缺陷,修改 CSS/JS 后重新运行验证。内容平台同样受益,例如视频播放器进度条异常或弹幕遮挡,agent 可通过视觉检查确认修复效果。企业级 SaaS 的配置界面定制、游戏 UI 测试等也可直接复用。

商业价值

核心价值在于降低人工调试与 UI 测试成本。传统上这类问题需要开发者反复手动操作和目视检查,CUA-SWE 支持的 agent 可将此过程自动化,加速迭代周期。对于 AI coding assistant 产品(如 Devin、Copilot 类),集成此能力可扩大可处理任务范围,从纯代码生成扩展到运行时验证,提升用户付费意愿与续费率。同时,验证通过的轨迹可作为训练数据,通过 SFT/RLVR 进一步强化模型,形成数据飞轮。

与现有工作流的接口

可直接嵌入 CI/CD 流水线:在 PR 合并前让 agent 执行 CUA-SWE 风格测试,若修复通过则自动批准;或作为 IDE 插件,让开发者在本地获得带截图反馈的调试代理。环境基于容器,可通过 API 调用,与现有测试框架(如 Playwright、Selenium)兼容。企业可将内部应用打包为 benchmark 任务,定制化评估 agent 在自身产品上的表现。

局限

  • - **局限一:任务规模与生态可扩展性有限**:论文中 CUA-SWE 覆盖四个软件工程领域,但任务均为人工构建的小规模、自包含应用,视觉界面和交互路径经过设计验证,与真实项目中复杂的 GUI 框架、异步事件和多窗口协同存在差距。基准的扩展依赖人工撰写任务说明与独立验证脚本,成本较高,难以规模化覆盖更多真实软件系统。此外,目前已标注的视觉证据有限,代理对通用 UI 元素的理解能力未被充分测试。
  • - **局限二:评估模型范围与动作空间较窄**:实验主要针对少数前沿闭源模型(如 GPT-4V/GPT-4o 等)进行评测,且动作空间高度结构化,限制了各类开源多模态模型或自定义代理框架的可比性。代理被允许执行的命令和 GUI 操作是预定义的,这可能高估代理在开放环境中的实际表现。缺少对不同视觉编码器或屏幕解析粒度的消融,削弱了对失败原因的归因能力,也难以为后续方法改进提供细粒度信号。
  • - **局限三:与既有软件工程基准的互补性尚待验证**:相比 SWE-bench 等纯代码基准,CUA-SWE 引入视觉交互,但任务规模与依赖复杂度仍低于真实大型项目。其验证依赖任务特定的确定性测试,无法反映长期维护、跨仓库协作和持续集成等场景。同时,论文虽展示了监督微调和 RLVR 扩展,但未与直接基于文本轨迹或函数级状态的方法进行严格对照,因此视觉信息带来的净增益仍未得到充分量化,可能影响该基准在业内的快速采用。
论文Prince Zizhuang Wang2026-09-26原文

相关内容