← 最新论文
💻 computer science

ReProAgent: Tool-Augmented Multi-Stage Agentic Generation of Bug Reproduction Tests from Issue Reports

ReProAgent 是一个多阶段、工具增强型智能体框架,它通过将缺陷复现测试生成分解为缺陷识别、根因分析、规划和生成等局部阶段,在多种基准测试中实现了显著更高的成功率,其表现优于现有的基于提示的方法。

原作者: Quanjun Zhang, Yi Zheng, Ye Shang, Weifeng Sun, Haichuan Hu, Chunrong Fang, Zhenyu Chen, Liang Xiao

发布于 2026-07-13
📖 1 分钟阅读☕ 轻松阅读

原作者: Quanjun Zhang, Yi Zheng, Ye Shang, Weifeng Sun, Haichuan Hu, Chunrong Fang, Zhenyu Chen, Liang Xiao

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

想象一下你是一名正在试图破解谜团的侦探,但你手里唯一的线索只是一个模糊的、手写的便条,上面写着:“厨房里发生了一些奇怪的事情!”在软件的世界里,这个便条就是一个问题报告(issue report)。通常情况下,开发人员必须去猜测到底出了什么问题,编写一个测试来证明它,然后尝试修复它。但往往,他们并没有现成的测试,这使得整个过程既缓慢又令人沮丧。

有一段时间,聪明的计算机程序(被称为大语言模型或 LLM)尝试自动编写这些测试。它们就像是仅仅读了便条就立刻大喊“我觉得罪魁祸首是烤面包机!”的侦探。它们抓取一些附近的线索(代码文本)并猜测答案。但本文认为这种方法过于简单。这就像是试图通过只看犯罪现场照片来解决复杂的谋杀案,而从未去询问嫌疑人或核实他们的不在场证明一样。这些旧的方法经常会错过真正的症结所在,因为它们并不理解代码的不同部分(如“厨房”、“客厅”和“地下室”)是如何相互连接的。

迎来 ReProAgent:超级侦探团队

作者们构建了一个名为 ReProAgent 的新系统。ReProAgent 并不是由一个猜测答案的侦探组成的,而是一个由专业智能体(agents)组成的团队,他们在严格的四步调查流程中工作。他们不只是猜测;他们进行调查、分析、计划,然后行动。

以下是他们的“侦探工作流”是如何运作的:

  1. 搜索(缺陷定位): 首先,团队不会只盯着整栋建筑看。他们使用特殊的工具像图书管理员寻找特定书籍一样在代码中进行搜索。他们寻找关键词并追踪“面包屑”(依赖关系),以找到究竟是哪个文件和哪行代码出了问题。
  2. 审讯(根因分析): 一旦找到了嫌疑人,他们并不仅仅是逮捕他们。他们追踪错误经过的确切路径。他们会问:“错误是如何从前门传到后窗的?”他们构建执行路径的地图,以理解错误发生的“原因”,而不只是“位置”。
  3. 陷阱设计(测试计划): 在设置陷阱之前,他们会进行计划。他们弄清楚需要满足哪些精确的条件才能让这个错误再次显现。这就像是设置一个特定的场景,让嫌疑人必须暴露其罪行。
  4. 诱捕行动(测试生成与审查): 最后,他们编写测试(即陷阱),并在一个安全的、隔离的沙盒(数字游乐场)中运行。但最酷的部分在于:如果测试未能捕捉到错误,或者捕捉到了错误的东西,团队并不会就此放弃。他们会审查结果,询问:“我们抓到正确的罪犯了吗?”然后完善他们的测试。他们不断循环这个过程,直到测试能够完美地复现该错误。

结果:奏效了吗?

团队在两个大型现实世界软件问题集(称为 SWT-bench-liteSWT-bench-verified)上测试了 ReProAgent。结果令人印象深刻。

  • 在较小的集合(SWT-bench-lite)上,ReProAgent 成功复现了 58.43% 的案例。
  • 在更难的验证集(SWT-bench-verified)上,它成功完成了 70.30% 的案例。

为了提供直观的对比,下一个最好的方法(一个名为 AssertFlip 的系统)在较小的集合上仅能解决约 38.0% 的问题。ReProAgent 不仅仅是击败了竞争对手;它简直将对手甩在了身后,在使用相同的“大脑”(一个名为 GPT-5-mini 的模型)时,它比下一个最好的系统多解决了约 20 个百分点

论文还检查了该团队是否能与不同的“大脑”(其他 AI 模型,如 Qwen3-CoderDeepSeek-V3.2)协同工作。它确实可以!该系统在所有这些模型中表现良好,这表明成为一名侦探的“过程”比拥有一个单纯更聪明的单个侦探更为重要。

它“不是”什么

论文非常明确地指出 ReProAgent 不是什么。它不是一个能自动修复这些缺陷的魔杖。它的职责严格限于编写能够证明缺陷存在的测试。然而,作者发现,当他们将这些测试交给其他能够修复缺陷的系统时,这些系统变得更好了。例如,当 ReProAgent 的测试被用于辅助名为 SWE-agent 的系统时,成功修复的问题数量从 143 个增加到了 153 个。

成本

成为一名超级侦探是需要成本的。论文计算出,运行 ReProAgent 的成本大约为每个案例 0.14。这比一些更简单的方法(成本约为0.14**。这比一些更简单的方法(成本约为 **0.11)略贵,但论文认为,由于它能更频繁地解决问题,这额外的几美分是值得的。大多数情况下,该系统平均只需要运行大约 1.29 次其“诱捕行动”就能得到正确结果。

底线

论文表明,要解决复杂的软件谜团,你不能仅仅依靠基于几个词汇的快速猜测。你需要一个结构化的、多阶段的调查过程,观察全局,追踪错误的路径,并反复核实证据。ReProAgent 表明,当你给 AI 智能体一个可以遵循的适当工作流时,它们可以变得极其高效,从而将一份模糊的证人便条转化为一份清晰明了的案件卷宗。

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

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

试用 Digest →