论文

TRIM:通过代理轨迹最小化减少 AI 生成的 CodeSlop

TRIM: Reducing AI-Generated CodeSlop via Agent Trajectory Minimization

摘要

编码智能体 越来越多地用于加速许多下游任务中的代码生成,例如修复错误、构建应用程序和原型设计。然而,尽管它们作为编码助手很有价值,但代理生成的代码往往比相应的人类编写的实现更大、更冗长。在这项工作中,我们表明原因在于代理自身的搜索过程:在迭代通过解决方案时,代理会累积推测性编辑、放弃的假设以及持续到最终补丁的临时更改。这对于单个补丁来说似乎是无害的,但随着代理承担代码库中越来越大的部分的责任,问题变得更加复杂——曾经最小且维护良好的代码库慢慢积累冗余的速度快于清理的速度,逐渐陷入更难以维护的状态。鉴于这个问题的严重性,我们采取措施缓解这个问题。首先,我们将这种现象正式定义为 CodeSlop——人工智能生成的代码中常见的残留和功能上不必要的编辑。然后我们介绍我们的算法 TRIM(轨迹引导冗余识别和最小化)。 TRIM 不是直接最小化 CodeSlop,而是最小化代理轨迹。正如我们的经验表明,这种最小化 CodeSlop 的间接技术非常有效:TRIM 在代理支架上将 CodeSlop 减少了 17.9%-32.9%,性能下降可以忽略不计。 TRIM 也非常高效,所需的验证成本大约是 Delta 调试等算法基线的一半。