Skip to main content
QUICK REVIEW

[论文解读] HumanEval-XL: A Multilingual Code Generation Benchmark for Cross-lingual Natural Language Generalization

Qiwei Peng, Yekun Chai|arXiv (Cornell University)|Feb 26, 2024
Natural Language Processing Techniques被引用 4
一句话总结

HumanEval-XL 引入了一个大规模、多语言的代码生成基准,连接了23种自然语言(NLs)和12种编程语言(PLs),包含22,080个提示,每个任务平均有8.33个测试用例。该基准支持对代码生成中跨语言自然语言泛化能力的全面评估,揭示了模型规模和专用代码预训练显著提升多语言代码生成性能,而当前模型在不同自然语言间保持语义等价性方面仍面临挑战。

ABSTRACT

Large language models (LLMs) have made significant progress in generating codes from textual prompts. However, existing benchmarks have mainly concentrated on translating English prompts to multilingual codes or have been constrained to very limited natural languages (NLs). These benchmarks have overlooked the vast landscape of massively multilingual NL to multilingual code, leaving a critical gap in the evaluation of multilingual LLMs. In response, we introduce HumanEval-XL, a massively multilingual code generation benchmark specifically crafted to address this deficiency. HumanEval-XL establishes connections between 23 NLs and 12 programming languages (PLs), and comprises of a collection of 22,080 prompts with an average of 8.33 test cases. By ensuring parallel data across multiple NLs and PLs, HumanEval-XL offers a comprehensive evaluation platform for multilingual LLMs, allowing the assessment of the understanding of different NLs. Our work serves as a pioneering step towards filling the void in evaluating NL generalization in the area of multilingual code generation. We make our evaluation code and data publicly available at \url{https://github.com/FloatAI/humaneval-xl}.

研究动机与目标

  • 为解决在多样化自然语言和编程语言之间评估多语言代码生成时缺乏全面基准的问题。
  • 实现对大型语言模型(LLMs)在英语以外或有限语言设置下跨语言自然语言泛化能力的严格评估。
  • 建立一个标准化的并行基准,连接23种自然语言和12种编程语言,用于评估多语言LLMs的理解与代码生成能力。
  • 探究模型规模和专用代码预训练对多语言代码生成性能的影响。

提出的方法

  • 通过在23种自然语言和12种编程语言之间创建并行的编程问题来构建该基准,确保语言和语法的一致性。
  • 每个提示被翻译成23种自然语言,并映射到12种编程语言中的等效代码,形成一个并行的多语言数据集。
  • 数据集包含22,080个提示,每个任务平均有8.33个测试用例,确保对代码正确性的稳健评估。
  • 评估采用 pass@k 指标,衡量生成代码在测试用例上的成功率。
  • 实验在三种大型语言模型家族——CodeT5+、CodeGen2、GPT-3.5 和 GPT-4——上进行,覆盖不同参数规模。
  • 该基准已公开发布于 https://github.com/FloatAI/HumanEval-XL,以支持可复现性和社区使用。

实验结果

研究问题

  • RQ1大型语言模型在23种多样化自然语言的代码生成任务中表现如何?
  • RQ2模型规模对不同编程语言的多语言代码生成性能有何影响?
  • RQ3与通用多语言预训练相比,专用代码预训练如何影响跨语言代码生成能力?
  • RQ4当前大型语言模型在将同一编码任务从不同自然语言翻译时,能在多大程度上保持语义等价性?
  • RQ5该基准能否检测出在低资源自然语言中代码生成时的语言偏见或性能下降?

主要发现

  • 模型规模与多语言代码生成性能呈强烈正相关,更大规模的模型在所有语言和编程语言中均显著提升 pass@k 得分。
  • 专用代码预训练在提升代码生成质量方面起着关键作用,尤其在低资源语言环境中表现突出。
  • 尽管在英语中表现优异,当前大型语言模型在从非英语提示生成代码时难以维持语义等价性,表明其跨语言泛化能力较差。
  • GPT-4 在所有语言和编程语言中均取得最高的 pass@1 得分,显著优于 CodeT5+ 和 CodeGen2 模型,尤其在低资源语言对中表现更优。
  • 许多低资源语言(如他加禄语、斯瓦希里语、乌兹别克语)在所有模型中均表现出接近零的性能,凸显多语言模型泛化能力中的关键差距。
  • 该基准表明,即使参数量巨大的模型也难以在全部23种自然语言间实现有效泛化,强调了提升代码大模型跨语言对齐能力的迫切需求。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。