ai, engineering,

一分钟读论文:《软件智能体的修复策略探索》

Unbug By Unbug Follow Jul 23, 2026 · 1 min read
一分钟读论文:《软件智能体的修复策略探索》
Share this

中山大学、浙江大学、华中科技大学和华为合作的论文《PhoenixRepair: Rethinking Repair Strategy Exploration in Software Agents》,提出了一种多智能体框架来系统性探索软件修复策略,在 SWE-bench-Verified 上达到了 76.0% 的 Pass@1 成绩。

现有基于大语言模型的自动问题解决方法存在一个根本性局限:修复策略探索不足。具体表现为两个方面——候选编辑位置的探索有限,以及每个位置处的修复尝试也不充分。PhoenixRepair 通过多智能体协作来扩展搜索空间,从多位置采样开始,辅以图定位信息处理困难任务,然后进行迭代反思和补丁生成优化,最后在全部历史尝试的洞察指导下完成最终轮生成。

实现原理

PhoenixRepair 的核心架构由三个关键阶段组成:

多位置采样。框架首先并行探索多个候选编辑位置,而不是像传统方法那样只定位单一故障点。对于复杂任务,系统会引入基于代码调用图的定位信息来辅助决策。这一步骤显著扩大了修复策略的搜索空间,使得原本可能被忽略的潜在修复点得以被发现。

迭代反思与优化。在生成初始补丁后,系统进入多轮反思循环。每轮反思都会评估当前补丁的质量,包括复现测试和边缘用例的通过率、回归测试的通过情况,然后基于反馈进行针对性改进。这种迭代机制使得补丁质量逐步提升,避免了单次生成的盲目性。

最终轮生成。所有历史尝试的洞察会被蒸馏为结构化知识,在最后一轮生成中作为上下文指导最终的补丁输出。这种方法充分利用了探索过程中的全部信息,避免了早期错误方向的浪费,同时保留了有价值的中间结果。

实验结果

论文在 SWE-bench-Verified 数据集上进行了全面评估:

  • 使用 DeepSeek-V3.1 时,PhoenixRepair 相比 SWE-agent 实现了 7.8% 的相对提升
  • 使用 MiniMax-M2.5 时,Pass@1 成绩达到 76.0%,为当前最高水平
  • 故障定位准确率优于现有方法

消融实验验证了各个组件的有效性:移除多位置采样导致性能下降约 4.2%,移除迭代反思阶段下降约 3.8%,移除最终轮蒸馏机制下降约 2.5%。三项改进相互补充,共同贡献了整体性能提升。

成本分析显示,虽然多智能体框架引入了额外的 API 调用开销,但前缀缓存技术有效降低了实际成本。在典型场景下,PhoenixRepair 的额外成本约为单智能体方法的 1.8 倍,考虑到性能提升幅度,这一投入是合理的。

References


Related
Featured