← 最新论文
🤖 machine learning

What Context Does a Coding Agent Actually Need to Act?

本文证明了对于进行代码编辑的编程智能体而言,其核心上下文严格限于正在被修改的具体文件,因为与源代码本身相比,自然语言摘要和周围文件内容对解决问题的贡献微乎其微,同时也揭示了基准测试结果中由非确定性 API 推理所导致的显著噪声底限。

原作者: Brian Sam-Bodden

发布于 2026-07-14✓ Author reviewed
📖 1 分钟阅读☕ 轻松阅读

原作者: Brian Sam-Bodden

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

想象一下,你正试图修理一栋百层摩天大楼里一个漏水的水龙头。你不需要阅读整栋建筑的蓝图、食堂菜单或安全日志,你只需要知道到底是哪根管子在滴水,并看到它周围的即时区域。

这就是关于“编程智能体”(coding agents)——即编写和修复软件的 AI 机器人——的一项新研究带来的惊人启示。长期以来,技术界一直认为这些机器人需要将整个项目的代码库(有时高达数百万行)全部“吞”进它们的“大脑”才能胜任工作。当时的逻辑是:“上下文越多越好。”

但这篇论文指出:停止向大脑灌输信息。 研究发现,对于实际的修复代码行为,AI 几乎只需要它即将修改的那几行代码。

“寻找”与“行动”

研究人员将问题分为两个部分:

  1. 寻找(The Find): 定位损坏的代码。
  2. 行动(The Act): 一旦找到代码,如何实际修复它。

为了测试这一点,他们使用了一个“魔法地图”(预言机/oracle)来告诉 AI 损坏代码的具体位置。这意味着 AI 不需要猜测在哪里寻找,它只需要专注于如何去修复它。随后,他们给 AI 展示了该代码的不同“视图”,以观察哪种方式效果最好。

大失所望:摘要并不奏效

一个流行的想法是:“让我们直接给 AI 一个自然语言形式的代码摘要,就像书的简介一样。”

  • 测试: 他们要求 AI 利用代码的完整源代码或由超强 AI(前沿模型)编写的摘要,来回答关于代码行为的棘手问题。
  • 结果: 完整源代码答对了 45 道题中的 27 道。而摘要呢?仅答对了 45 道题中的 4 道
  • 转折点: 无论摘要是由世界上最聪明的 AI 还是最微小的基础模型编写的,结果都一样——它们都失败了。问题不在于编写者,而在于格式。摘要无法承载修复 Bug 所需的特定“行为”细节。这就像试图通过阅读一份关于汽车的旅游手册来修理汽车引擎;手册很精彩,但它不会告诉你哪颗螺栓松动了。

“骨架”对比“全身”

接着,他们测试了 AI 是否需要完整的、丰满的代码,或者只需要“骨架”(即结构,如函数名称和签名)。

  • 设置: 他们使用了 70 个真实的编程问题。对于某些问题,他们提供了完整的代码文件;对于另一些,他们只提供了“骨架”(UML 图和签名)或“保留/丢弃”(keep/drop)版本(即仅保留核心部分并删除其余部分)。
  • 结果: “骨架”版本和“保留/丢弃”版本解决问题的数量与完整文件不相上下。事实上,“保留/丢弃”方法解决的问题(70 个中的 25 个)甚至略多于完整文件(19 个中的 19 个),尽管这种差异很小,可能仅仅是运气使然。
  • 成本: 关键点在于这里。使用完整文件解决一个问题的成本是 94,000 个 token(文本单位)。而使用压缩后的“保留/丢弃”方法,成本仅为 19,000 个 token。这是一个巨大的节省——大约 3 到 3.7 倍的成本降低——且性能并未下降。

“噪声”警告

研究人员还发现了一个奇怪且重要的现象:即使他们在完全相同的设置下运行完全相同的测试,AI 有时也会给出不同的答案。大约有 9% 的时间,实验结果在两次运行之间发生了反转。这意味着,如果你看到两种方法之间存在微小的差异(例如 2% 的提升),那可能只是随机噪声,而非真正的突破。

核心结论

论文得出结论:对于修复代码这一特定任务,少即是多

  • 有效的方法: 给 AI 提供它需要编辑的精确代码行,并将其精简至核心部分。
  • 无效的方法: 向 AI 灌输摘要、完整的历史文件或复杂的结构图。
  • 定论: “信号”存在于代码本身,而不是我们讲述的代码故事中。通过剔除冗余,我们可以以极低的成本修复 Bug,而不必为了修理一个漏水的水龙头而去阅读整栋摩天大楼。

作者非常谨慎地指出,这适用于“单次尝试”(single-shot)修复(即 AI 尝试一次后无法重新阅读或寻求帮助的情况)。但在这种特定的、高风险的编辑时刻,数据是明确的:你不需要整个图书馆,你只需要正确的那一页。

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

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

试用 Digest →