McEval: Avaliação Massivamente Multilingue de Código
McEval: Massively Multilingual Code Evaluation
June 11, 2024
Autores: Linzheng Chai, Shukai Liu, Jian Yang, Yuwei Yin, Ke Jin, Jiaheng Liu, Tao Sun, Ge Zhang, Changyu Ren, Hongcheng Guo, Zekun Wang, Boyang Wang, Xianjie Wu, Bing Wang, Tongliang Li, Liqun Yang, Sufeng Duan, Zhoujun Li
cs.AI
Resumo
Modelos de linguagem de grande escala (LLMs) para código demonstraram avanços notáveis em tarefas de compreensão, conclusão e geração de código. Benchmarks de programação, compostos por uma seleção de desafios de código e casos de teste correspondentes, servem como padrão para avaliar a capacidade de diferentes LLMs nessas tarefas. No entanto, a maioria dos benchmarks existentes concentra-se principalmente em Python e ainda é limitada a um número restrito de linguagens, onde outras linguagens são traduzidas a partir de amostras de Python (por exemplo, MultiPL-E), o que reduz a diversidade dos dados. Para promover ainda mais a pesquisa em LLMs de código, propomos um benchmark de código massivamente multilíngue, abrangendo 40 linguagens de programação (McEval) com 16 mil amostras de teste, que amplia substancialmente os limites dos LLMs de código em cenários multilíngues. O benchmark inclui tarefas desafiadoras de conclusão, compreensão e geração de código, com um corpus de instruções massivamente multilíngue cuidadosamente curado, o McEval-Instruct. Além disso, introduzimos um codificador multilíngue eficiente, o mCoder, treinado no McEval-Instruct, para apoiar a geração de linguagens de programação multilíngues. Resultados experimentais extensivos no McEval mostram que ainda há um caminho difícil entre modelos de código aberto e LLMs de código fechado (por exemplo, modelos da série GPT) em várias linguagens. O corpus de instruções, o benchmark de avaliação e o quadro de líderes estão disponíveis em https://mceval.github.io/.
English
Code large language models (LLMs) have shown remarkable advances in code
understanding, completion, and generation tasks. Programming benchmarks,
comprised of a selection of code challenges and corresponding test cases, serve
as a standard to evaluate the capability of different LLMs in such tasks.
However, most existing benchmarks primarily focus on Python and are still
restricted to a limited number of languages, where other languages are
translated from the Python samples (e.g. MultiPL-E) degrading the data
diversity. To further facilitate the research of code LLMs, we propose a
massively multilingual code benchmark covering 40 programming languages
(McEval) with 16K test samples, which substantially pushes the limits of code
LLMs in multilingual scenarios. The benchmark contains challenging code
completion, understanding, and generation evaluation tasks with finely curated
massively multilingual instruction corpora McEval-Instruct. In addition, we
introduce an effective multilingual coder mCoder trained on McEval-Instruct to
support multilingual programming language generation. Extensive experimental
results on McEval show that there is still a difficult journey between
open-source models and closed-source LLMs (e.g. GPT-series models) in numerous
languages. The instruction corpora, evaluation benchmark, and leaderboard are
available at https://mceval.github.io/.