论文
从 53.6K 真实开发者对 AI 生成代码的编辑中学习
Learning from 53.6K Real-World Developer Edits of AI-Generated Code
摘要
人工智能生成的代码存在缺陷,需要软件开发人员手动修改生成的代码,或者通过人工智能编程助手重新提示。与 Git 提交相比,手动代码编辑提供了更真实、更精细的编辑行为信息,Git 提交仅包含最终成功的代码片段。然而,由于缺乏高质量、真实的代码编辑数据,LLM 主要是在公开可用的 Git 数据(例如提交)上进行训练的。为了弥补这一差距,我们引入了 DECODE(代码数据集的开发人员编辑),这是一个包含 53.6K 条真实世界中的 AI 生成的 Python、TypeScript 和 JavaScript 代码编辑的数据集,来自超过 1000 名开发人员。首先,我们展示了 DECODE 在数据分析方面的实用性,获得有关何时、为何以及如何编辑人工智能生成的代码的见解。我们发现大多数编辑发生在接受 AI 完成后的前 15 分钟内,导致 31% 的编辑轨迹中删除了 AI 完成。其次,我们使用 DECODE 对 LLM 预测代码编辑的能力进行基准测试。我们发现,DECODE 上的微调使开源 3B 模型能够比前沿 LLM 更好地执行代码编辑预测任务。然后我们讨论这项工作的影响,强调以开发人员为中心的机器学习方法对于未来人工智能编程助手的必要性。