EMON TECH MEDIA · PAPERS — DNA·52CD39

ProgramGym: Scaling Training Environments for Long-Horizon Program Reproduction Agents

ProgramGym 用可验证环境加角色分工工作流,提升智能体从零复现程序的能力。微调后 Qwen3.8-27B 从 34.87% 升至 42.84%,再叠加 Program-Agent 可达 56.25%。

发表日期

作者

Chengyi Yang, Renxu Bao, Jue Hou, Zongpei Teng, Ziheng Wang, Yujie Lin 等

影响力

80.7

阅读时长

约 4 分钟

标签

Agent

ProgramGym: Scaling Training Environments for Long-Horizon Program Reproduction Agents

一句话概括

ProgramGym 用可验证环境加角色分工工作流,提升智能体从零复现程序的能力。微调后 Qwen3.8-27B 从 34.87% 升至 42.84%,再叠加 Program-Agent 可达 56.25%。

速览

  • 任务:训练编码智能体(coding agent)从零复现程序,而非修仓库缺陷或按需求文档生成仓库。
  • 方法:Program-Env 用反馈驱动循环修复沙箱构建与黑盒测试质量;Program-Agent 采用分析、实现、评审的角色隔离工作流。
  • 关键数字:构建 1,648 个训练环境,覆盖 C、C++、Go、Rust;微调使 Qwen3.8-27B 从 34.87% 提升到 42.84%,Program-Agent 进一步达 55.71% 与 56.25%。
  • 数据与开源:作者称将发布 ProgramGym;具体许可证与仓库地址摘要未给出。

问题背景

编码智能体的主流用法有两类:在已有仓库内修问题,或按给定需求文档生成仓库。这两类任务都预设了「需求已被写清楚」。

但真实软件工程里,工程师常要自己判断该做什么、系统该怎么设计。这类能力缺少可扩展、可验证的训练环境。

更麻烦的是长时程(long-horizon)开发。智能体需要先探索参考程序,再动手实现,而现有工作流撑不住这种节奏。

于是问题变成:如何批量造出既能验证、又能逼智能体自主发现需求与设计的训练环境?

方法要点

ProgramGym 由两部分组成,分别解决环境与流程。

Program-Env:造可验证环境。 它从代码仓库出发,用反馈驱动循环构建训练环境。循环做两件事:修复运行时沙箱(sandbox)的构建,提升黑盒测试(black-box test)的质量。

这条流水线产出 1,648 个训练环境,语言覆盖 C、C++、Go、Rust。多语言覆盖让环境不绑定单一生态。

Program-Agent:撑住长时程。 它把工作流拆成三个隔离角色:分析、实现、评审。角色隔离减少职责混淆。

它还引入修订管理(revision management),用于编译检查与失败恢复。这样智能体在探索参考程序后,仍能持续推进实现。

关键结论

在 ProgramBench 上,Program-Env 与 Program-Agent 都提升了程序复现表现。

  • 用构造环境生成轨迹做微调,Qwen3.8-27B 从 34.87% 升到 42.84%。
  • 再叠加 Program-Agent,基座模型与 SFT 模型分别达 55.71% 与 56.25%。
  • 这两个数字超过部分旗舰模型(flagship model)。

结论指向两点:环境质量与工作流设计各自贡献增益,且可叠加。

读后思考

这篇工作的价值在于把「造环境」当成一等公民。多数编码智能体研究把力气花在策略或提示上,环境常被当成给定条件。

Program-Env 的反馈循环值得注意:沙箱构建与测试质量都要修。这说明自动造环境本身是个工程难题,不是脚本一跑就完。

角色隔离加修订管理的组合也合理。长时程任务里,失败恢复往往比单步能力更决定成败。

另一个信号是规模:1,648 个环境、4 种语言。若真开源,可作为复现与对比的公共基座。

局限与开放问题

  • 评测集中在 ProgramBench 单一基准,跨基准泛化性摘要未给出。
  • 34.87% 到 42.84% 的增益来自特定模型,其他规模模型是否同样受益摘要未给出。
  • 环境构建依赖仓库与黑盒测试,对无测试或私有依赖项目的适用性摘要未给出。
  • 角色隔离带来额外推理开销,成本与延迟数据摘要未给出。
  • 开源承诺已给出,但许可证、数据格式与复现细节摘要未给出。
  • 长时程的「长」缺少统一定义,任务步数分布摘要未给出。

本页为科普精读;细节以 arXiv 原文为准。就本篇提问请点左下角「论文研读助手」。