跳到正文
arXiv Artificial Intelligence· Muntasir Adnan, Carlos C. N. Kuhn·· 13 小时前AI 评分34

执行轨迹修复 LLM 生成代码断言失败的能力边界研究

On the Limits of Execution Traces for Repairing Assertion Failures in LLM-Generated Code

AI 导读

研究提出 Breakpoint Debugging(BPD),将失败程序中变量的运行时值内联标注后返回给 LLM。在迭代修复五次仍未解决的任务上,BigCodeBench 中 BPD 修复 26.7%,重采样为 22.4%,且优势随模型规模增大;HumanEval 上 BPD 略优于重采样,LiveCodeBench 上重采样反而更高(6.5% 对 4.9%)。

推荐理由模型分析

该文针对迭代修复后残留的断言失败,提出断点调试(BPD):把失败程序中变量的运行时值内联标注后回传模型,而非只回传错误信息。在BigCodeBench上,对五次修复仍失败的任务再给五次生成,BPD修复26.7%,重采样为22.4%,且优势随模型规模扩大;未改动代码的重复提交从28%降到8%。但LiveCodeBench上重采样反而更好(6.5%对4.9%),说明追踪只在测试暴露失败输入且错误属实现疏漏时有用。开发者可据此按失败类型选择追踪或重采样。

来源:arXiv Artificial Intelligence · arxiv.org