← 最新论文
🤖 AI

To Add Is Machine, To Delete Is Human: Measuring and Mitigating Deletion Avoidance in LLM Code Editing

本文识别并量化了领先的大语言模型中存在的一种系统性的“删除规避”偏差,这种偏差导致它们在进行代码编辑时倾向于保留而非移除代码,并证明了这种行为会显著降低代码的可维护性,且可以通过针对性的后训练进行缓解。

原作者: Amir M. Ebrahimi, Mohammed Mehedi Hasan, Aaditya Bhatia, Gopi Krishnan Rajbahadur, Ahmed E. Hassan

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

原作者: Amir M. Ebrahimi, Mohammed Mehedi Hasan, Aaditya Bhatia, Gopi Krishnan Rajbahadur, Ahmed E. Hassan

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

想象一下,你正在雇佣一个超级聪明的机器人助手来帮你编写和修复计算机代码。你给它一个问题,比如“这个按钮没反应了”,它会尝试去修复它。在软件工程的世界里,这种机器人被称为大语言模型(LLM)。这些模型就像是读遍了图书馆里所有食谱的数字厨师;它们可以从零开始调制出复杂的菜谱(代码)。但棘手的地方在于:有时候,修复一个菜谱并不意味着只需添加一种新食材,而是意味着要扔掉那个旧的、变质的食材。如果这个机器人太害怕丢弃东西,它可能会保留那个变质的食材,只是加了一条华丽的注释说:“别吃这部分”,而不是真正将其移除。这篇论文研究了这些 AI 机器人是否真的擅长“丢弃”这项工作,还是说它们只是因为太“礼貌”而不愿删除任何东西。

皇后大学的研究人员决定对这些 AI 编程助手进行一项非常具体的测试。他们想看看这些模型是否正遭受着“删除规避”的问题。把它想象成一次房屋装修,你需要拆掉一面墙来让房间变得更大。一个好的承包商会把墙拆掉。一个坏的承包商可能只是在墙前挂上一道帘子,然后说:“好了,墙已经没了”,尽管砖块还在那里。研究团队发现,顶尖的 AI 模型确实非常不擅长拆墙。即使它们通过了那些判定“房间已修复”的测试,它们也经常把旧代码留在那里,隐藏在新指令的帘幕之后。

该论文引入了一个名为 CanItDelete 的新基准测试,它就像是这些机器人的“仅限删除”健身房。他们剥离了所有其他令人困惑的任务,仅仅要求模型删除特定的代码行。结果令人大开眼界。即使是最优秀的 AI 模型,在每五次尝试中也会有一次无法正确删除代码。当它们尝试删除时,往往会删掉太多东西或者添加额外的垃圾代码。研究人员还发现了一种被称为**“守卫并走人”(Guard-and-Go)**的隐蔽模式。与其移除一段破碎的代码,AI 会保留它,但会添加一个“守卫”(就像一名保安)说:“如果你是这类特定类型的用户,请忽略这段破碎的代码。”这使得测试得以通过,因为破碎的代码不再被使用,但杂乱的代码仍然堆积在项目中。

为了解决这个问题,团队进行了一个小实验。他们通过向一个 AI 模型展示数千个代码被移除的例子,专门教它如何删除东西。这种“训练”帮助该模型在删除方面做得更好,将其错误减少了约 14%。这表明问题不在于机器人“不会”删除,而在于它们练习得还不够。论文总结道,虽然 AI 在编写新代码方面表现出色,但它仍需学习“放手”的艺术。在此之前,人类审查员可能仍需继续清理机器人留下的数字垃圾。

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

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

试用 Digest →