← 最新论文
💻 computer science

Writing Bug Reports for Software Repair Agents: What Information Matters Most?

本文通过分析真实世界的缺陷问题,研究如何为 AI 软件修复代理优化缺陷报告,并发现包含定位线索和建议修复方案的报告能显著提高代理的成功率,而传统的以人为本的细节(如复现步骤)带来的收益则较小。

原作者: Vincenzo Luigi Bruno, Alessandro Giagnorio, Daniele Bifolco, Leon Wienges, Massimiliano Di Penta, Gabriele Bavota

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

原作者: Vincenzo Luigi Bruno, Alessandro Giagnorio, Daniele Bifolco, Leon Wienges, Massimiliano Di Penta, Gabriele Bavota

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

想象一下你是一位名侦探,但你不是在破获罪案,而是一个被雇佣来修复庞大数字城市中破碎代码的超级智能 AI 机器人。通常情况下,当人类发现一个漏洞(bug)时,他们会写下一篇冗长、详细的日记给人类开发者看:“嘿,我点击了红色按钮,屏幕变成了紫色,这是我为了让它发生而采取的 15 个步骤。另外,我觉得问题出在厨房里,但我不敢确定。”

但如果你的新老板不是人类呢?如果你的老板是一个阅读这篇日记并试图立即修复问题的 AI 代理人(AI agent)呢?来自卢加诺大学(University of Lugano)和萨尼奥大学(University of Sannio)的研究人员的一项新研究表明,对人类而言“完美”的漏洞报告,对于机器人来说其实是一份糟糕的说明书。

以下是实情:研究人员从一个著名的测试场 SWE-bench Verified 中提取了 500 份真实的漏洞报告。他们过滤掉了那些并非真实漏洞的部分,留下了 441 个真正的故障点。然后,他们将这些报告交给三个不同的 AI “大脑”(GPT-5-mini、MiniMax M2.5 和 Gemini 3 Flash),并观察哪些报告能帮助 AI 修复代码,哪些报告会让 AI 抓耳挠腮。

大惊喜:少讲故事,多给地图

这项研究提出了一个激进的想法:AI 代理人不需要小说;它们需要一张藏宝图。

当人类编写漏洞报告时,他们喜欢加入“故事”:究竟发生了什么,预期应该发生什么,以及如何一步步重现这个错误。研究人员发现,对于 AI 而言,这种“故事”部分往往只是背景噪音。事实上,在进行模拟实验时,他们发现即使移除“重现步骤”或“预期行为”,只要报告中仍保留了更重要的内容,并不会真正损害 AI 修复漏洞的机会。

AI 渴望的是方向感

数据表明,让 AI 变得极其成功的两个要素是:

  1. 定位线索(Localization Cues): 告诉 AI 在哪里 寻找。漏洞是发生在特定的文件里?特定的函数里?还是仅仅在“厨房的某个地方”?研究发现,指向特定代码行或函数的报告会让 AI 成功的概率显著提高。这就像是给侦探一张地图,上面写着“线索在第三个抽屉里”,而不是“在房子里找找看”。
  2. 建议修复方案(Suggested Fixes): 告诉 AI 如何 修复。无论是人类写了一段代码片段,还是仅仅说“尝试将这个变量改为零”,AI 的成功率都会大幅跳升。这就像人类侦探不仅指出了线索,还亲手把破解保险箱所需的工具递到了机器人手里。

AI 忽略了什么(以及它讨厌什么)

研究人员明确反对“信息越多越好”的观点。

  • 长度是一个陷阱: 他们发现,更长的漏洞报告实际上让 AI 更难 取得成功。看起来,多余的文字往往只会增加困惑或掩盖重要的线索。
  • 链接是有风险的: 如果报告只是说“查看这个其他网站以获取详情”,AI 通常会失败。研究表明,AI 代理人无法像人类那样轻松地“去查看”外部链接。如果你想让 AI 修复它,你必须把链接中的重要部分直接总结在报告里。
  • “故事”并不是关键: 虽然人类认为“重现步骤”是漏洞报告中最重要的部分,但研究表明,对于 AI 而言,这些步骤的重要性不如知道漏洞在 哪里如何 修复。

我们有多确定?

研究人员并非凭空猜测;他们运行了数据。他们使用了一个统计模型来衡量每项信息对 AI 成功率的提升程度。

  • 他们发现,建议修复方案(无论是代码形式还是自然语言形式)是最强的助力。在他们的模拟中,拥有自然语言形式的建议修复方案可以将 AI 成功的几率翻倍(优势比为 2.01)。
  • 定位线索(例如指向特定的代码行)也带来了稳健的提升,使成功几率增加了约 52%(优势比为 1.52)。
  • 然而,他们也进行了一项“假设”实验(消融研究),即通过手术式地移除特定部分的做法。他们发现,如果同时拿掉定位线索和修复建议,AI 的成功率会大幅下降。但如果移除“故事”部分(如重现步骤),只要拥有了地图和工具,AI 仍然通常能够解开谜题。

对未来的启示

论文指出,我们需要改变与机器人同事沟通的方式。我们不应该写一段关于软件如何崩溃的长篇情感日记,而应该写一份简洁的“维修规范”。

可以这样理解:如果你是在请一位人类修理漏水的水龙头,你会说:“我转动把手时它会滴水,我觉得垫圈旧了。”但如果你是在请一个机器人,你应该说:“漏水点在垫圈处(位置),更换一个橡胶垫圈应该可以止水(建议修复)。”

研究表明,通过将我们的重心从“讲述故事”转向“给出指令”,我们可以帮助 AI 代理人更快地修复软件漏洞。这不在于写得更多,而在于写得更精准

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

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

试用 Digest →