← 最新论文
💻 computer science

Immersion in the GitHub Universe: Scaling Coding Agents to Mastery

本文提出了名为 ScaleSWE 的自动化多智能体工作流,通过处理 600 万个拉取请求构建了目前规模最大的 10 万条真实世界软件工程数据集,并基于此微调出的智能体在 SWE-bench Verified 基准测试中取得了 64% 的解决率,显著提升了大模型在软件工程领域的表现。

原作者: Jiale Zhao, Guoxin Chen, Fanzhe Meng, Minghao Li, Jie Chen, Hui Xu, Yongshuai Sun, Wayne Xin Zhao, Ruihua Song, Yuan Zhang, Peng Wang, Cheng Chen, Jirong Wen, Kai Jia

发布于 2026-03-17
📖 1 分钟阅读☕ 轻松阅读

原作者: Jiale Zhao, Guoxin Chen, Fanzhe Meng, Minghao Li, Jie Chen, Hui Xu, Yongshuai Sun, Wayne Xin Zhao, Ruihua Song, Yuan Zhang, Peng Wang, Cheng Chen, Jirong Wen, Kai Jia

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

这篇论文讲述了一个关于**如何让 AI 程序员从“新手”进化为“大师”**的故事。

想象一下,你有一个非常有天赋的 AI 学生(比如 Qwen-30B),它读过很多书,知道很多编程语法。但是,如果你让它去解决一个真实的、复杂的软件故障(比如修复一个大型网站的后端 Bug),它往往会束手无策。为什么?因为它缺乏实战经验,而且没人给它提供足够多、足够高质量的“练习题”和“标准答案”。

这篇论文提出了一套名为 Scale-SWE 的“超级工厂”,专门用来批量生产高质量的编程练习题,并训练 AI 成为真正的软件工程师。

我们可以用三个生动的比喻来理解它的核心工作:

1. 核心痛点:为什么以前的 AI 学不会?

以前的 AI 训练就像是在只有理论课的驾校里学习。

  • 数据太少太旧:现有的练习题(数据集)要么数量不够,要么太简单,要么是在“假想”的编程环境里,AI 一上真车(真实代码库)就熄火。
  • 环境太复杂:真实的软件项目就像一座巨大的迷宫,依赖关系错综复杂。以前的方法很难自动帮 AI 搭建好这个迷宫的入口(环境配置)。
  • 题目不清晰:很多真实的代码修改(Pull Request)描述得很模糊,AI 不知道到底要修什么。

2. 解决方案:Scale-SWE“三位一体”工厂

为了解决这个问题,作者们设计了一个全自动的、沙盒隔离的“多特工”流水线。想象这是一个拥有三位超级工匠的工厂,他们分工合作,把 GitHub 上 600 万个普通的代码修改请求,加工成 10 万个高质量的“实战考题”。

这三位工匠分别是:

  • 🛠️ 环境搭建师 (Environment Builder Agent)

    • 比喻:就像是一个装修队
    • 任务:每拿到一个代码项目,它会自动分析需要安装什么软件、配置什么环境,然后在一个安全的“隔离舱”(Docker 容器)里把整个项目完美搭建好。
    • 难点:以前的方法只能处理简单的,这个工匠能搞定那些依赖关系像乱麻一样的复杂项目,确保 AI 能在里面跑起来。
  • 🧪 出题考官 (Unit-test Creator Agent)

    • 比喻:就像是一个严厉的监考老师兼出题人
    • 任务:它要生成“测试题”。
      • Fail-to-Pass (F2P):在修复前,这道题 AI 做不对(报错);修复后,必须做对。这是为了验证 AI 是否真的修好了 Bug。
      • Pass-to-Pass (P2P):原本就能做对的题,修复后依然要做对。这是为了防止 AI“顾头不顾尾”,修好了一个 Bug 却搞坏了别的功能(回归测试)。
    • 创新:很多开源项目根本没有测试题,这个考官能自己“无中生有”,根据代码逻辑写出严密的测试题。
  • 📝 命题专家 (Problem Statement Writer Agent)

    • 比喻:就像是一个翻译官兼编剧
    • 任务:把原本枯燥、甚至可能泄露答案的代码修改记录(Pull Request),改写成一道清晰、独立、不剧透的“应用题”。
    • 关键:它要确保题目描述清楚“哪里坏了”,但绝不告诉 AI“怎么修”,让 AI 真正去动脑筋。

3. 成果:从“量变”到“质变”

这个工厂运转起来后,产生了惊人的成果:

  • 海量数据:处理了 600 万个代码请求,最终筛选并生成了 10 万个 经过验证的高质量实战案例(Scale-SWE-Data)。这是目前世界上最大的此类数据集。
  • 多样性:不像以前的数据集只盯着几个热门项目,这个工厂覆盖了 5200 个不同的真实项目,涵盖了各种类型的 Bug(从逻辑错误到安全漏洞)。
  • 训练效果:作者用这些高质量数据“喂”给了 Qwen-30B 模型。结果令人震惊:
    • Before:模型在 SWE-Bench(一个著名的软件工程师能力测试)上的通过率只有 22%(像个刚毕业的大学生)。
    • After:经过训练,通过率飙升到 64%(直接变成了资深工程师)。
    • 这不仅仅是提升,而是接近翻了三倍的进步,甚至超过了某些参数量大得多的模型。

4. 总结:这意味着什么?

这篇论文的核心思想是:想要 AI 成为真正的软件工程师,不能只靠“刷题”(合成数据),必须让它去“实战”(真实数据),并且要有高质量的“教练”(自动化流程)来确保实战环境是真实且可复现的。

Scale-SWE 就像是一个全自动的“软件工程师特训营”,它解决了“没有好教材”和“没有好考场”的难题。通过这套方法,我们不仅能训练出更聪明的 AI 程序员,未来还能把这套方法推广到 Java、C++ 等其他语言,让 AI 真正掌握全栈开发的技能。

一句话总结
作者们造了一个全自动的“编程特训工厂”,用三位 AI 工匠把 GitHub 上杂乱的代码修改,变成了 10 万道高质量的“实战考题”,成功把 AI 程序员从“理论派”培养成了能解决真实问题的“实战派”。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →