Artificial Intelligence
Programming Languages
它能编辑吗?评估大型语言模型遵循代码编辑指令的能力
Author
Venue
2024年语言建模会议(COLM)
Abstract
大量研究致力于开发和评估用于各种代码合成任务的大型语言模型。这些任务包括从自然语言合成代码、从代码合成测试用例,以及合成代码解释。相比之下,利用大型语言模型进行指令式代码编辑的行为却鲜有研究。在这些任务中,模型会收到一段代码以及修改该代码的指令。 编辑指令可能要求添加或移除某个功能,描述一个错误并要求修复,或者要求提供另一种解决方案。 我们提出了一套精心设计的代码编辑任务基准,并利用它对几种前沿的LLM进行了评估。我们的评估揭示了最先进的开源模型与闭源模型能力之间存在显著差距。例如,即使是GPT-3.5-Turbo在代码编辑任务上的表现也优于最好的开源模型。 我们还推出了一套全新、精心筛选且采用宽松许可协议的代码编辑任务训练数据集,其中包含自然语言指令。利用该训练数据集,我们证明可以通过微调开源代码大语言模型(Code LLMs),显著提升其代码编辑能力,从而缩小开源与闭源模型之间的差距。所有代码、数据和模型均可在 https://github.com/nuprl/CanItEdit 获取。
