Artificial Intelligence
Natural Language Processing
Programming Languages
MultiPL-E:一种用于神经网络代码生成基准测试的可扩展且支持多种语言的方法
Author
Venue
《IEEE软件工程汇刊》(TSE)2023
Abstract
大型语言模型已展现出生成自然语言和编程语言文本的能力。此类模型为多语言代码生成开辟了可能性:代码生成模型能否将一种语言的知识推广到另一种语言?尽管当代代码生成模型能够生成语义正确的 Python 代码,但人们对其在其他语言中的能力知之甚少。我们提出 MultiPL-E,这是一个将单元测试驱动的代码生成基准测试翻译成新语言的系统。 我们利用 MultiPL-E 将两个流行的 Python 代码生成基准测试翻译为另外 18 种编程语言,从而创建了首个大规模多语言代码生成基准测试。
我们利用 MultiPL-E 将 HumanEval 基准和 MBPP 基准扩展至 18 种语言,这些语言涵盖了多种编程范式且流行度各异。借助这些新的并行基准,我们评估了三种最先进的代码生成模型(Codex、CodeGen 和 InCoder)的多语言性能。我们发现,Codex 在其他几种语言上的表现与 Python 相当,甚至更胜一筹。 MultiPL-E所涵盖的广泛编程语言范围,使我们能够探索语言使用频率和语言特征对模型性能的影响。最后,MultiPL-E将代码生成基准测试编译为新编程语言的方法既具有可扩展性又具备可扩展性,使得评估新模型、新基准测试和新语言变得十分简便。
