McEval: Valutazione del Codice Massivamente Multilingue
McEval: Massively Multilingual Code Evaluation
June 11, 2024
Autori: 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
Abstract
I modelli linguistici di grandi dimensioni per il codice (LLM) hanno dimostrato progressi significativi nelle attività di comprensione, completamento e generazione del codice. I benchmark di programmazione, composti da una selezione di sfide di codice e relativi casi di test, servono come standard per valutare le capacità di diversi LLM in tali compiti. Tuttavia, la maggior parte dei benchmark esistenti si concentra principalmente su Python ed è ancora limitata a un numero ristretto di linguaggi, dove altri linguaggi vengono tradotti dai campioni Python (ad esempio, MultiPL-E), riducendo la diversità dei dati. Per favorire ulteriormente la ricerca sui LLM per il codice, proponiamo un benchmark di codice multilingue di grandi dimensioni che copre 40 linguaggi di programmazione (McEval) con 16K campioni di test, che spinge sostanzialmente i limiti dei LLM per il codice in scenari multilingue. Il benchmark include compiti impegnativi di completamento, comprensione e generazione del codice con un corpus di istruzioni multilingue accuratamente curato, McEval-Instruct. Inoltre, introduciamo un codificatore multilingue efficace, mCoder, addestrato su McEval-Instruct per supportare la generazione di linguaggi di programmazione multilingue. I risultati sperimentali estesi su McEval mostrano che c'è ancora un percorso difficile tra i modelli open-source e i LLM closed-source (ad esempio, i modelli della serie GPT) in numerosi linguaggi. Il corpus di istruzioni, il benchmark di valutazione e la classifica sono disponibili su 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/.