M2rc-Eval: Valutazione del completamento automatico del codice a livello di repository massivamente multilingue
M2rc-Eval: Massively Multilingual Repository-level Code Completion Evaluation
October 28, 2024
Autori: Jiaheng Liu, Ken Deng, Congnan Liu, Jian Yang, Shukai Liu, He Zhu, Peng Zhao, Linzheng Chai, Yanan Wu, Ke Jin, Ge Zhang, Zekun Wang, Guoan Zhang, Bangyu Xiang, Wenbo Su, Bo Zheng
cs.AI
Abstract
Il completamento del codice a livello di repository ha attirato grande attenzione nell'ingegneria del software, e diversi set di dati di benchmark sono stati introdotti. Tuttavia, i benchmark esistenti per il completamento del codice a livello di repository di solito si concentrano su un numero limitato di lingue (<5), il che non consente di valutare le capacità generali di intelligenza del codice attraverso diverse lingue per i Modelli Linguistici di Grandi Dimensioni (LLM) esistenti. Inoltre, i benchmark esistenti di solito riportano punteggi medi complessivi delle diverse lingue, ignorando le capacità dettagliate in diversi scenari di completamento. Pertanto, per agevolare la ricerca dei LLM di codice in scenari multilingue, proponiamo un ampio benchmark di completamento del codice a livello di repository multilingue che copre 18 linguaggi di programmazione (chiamato M2RC-EVAL), e due tipi di annotazioni dettagliate (cioè, a livello di bucket e a livello semantico) su diversi scenari di completamento sono forniti, dove otteniamo tali annotazioni basate sull'albero di sintassi astratta analizzato. Inoltre, curiamo anche un vasto corpus di istruzioni multilingue, il dataset M2RC-INSTRUCT, per migliorare le capacità di completamento del codice a livello di repository dei LLM di codice esistenti. I risultati sperimentali completi dimostrano l'efficacia del nostro M2RC-EVAL e M2RC-INSTRUCT.
English
Repository-level code completion has drawn great attention in software
engineering, and several benchmark datasets have been introduced. However,
existing repository-level code completion benchmarks usually focus on a limited
number of languages (<5), which cannot evaluate the general code intelligence
abilities across different languages for existing code Large Language Models
(LLMs). Besides, the existing benchmarks usually report overall average scores
of different languages, where the fine-grained abilities in different
completion scenarios are ignored. Therefore, to facilitate the research of code
LLMs in multilingual scenarios, we propose a massively multilingual
repository-level code completion benchmark covering 18 programming languages
(called M2RC-EVAL), and two types of fine-grained annotations (i.e.,
bucket-level and semantic-level) on different completion scenarios are
provided, where we obtain these annotations based on the parsed abstract syntax
tree. Moreover, we also curate a massively multilingual instruction corpora
M2RC- INSTRUCT dataset to improve the repository-level code completion
abilities of existing code LLMs. Comprehensive experimental results demonstrate
the effectiveness of our M2RC-EVAL and M2RC-INSTRUCT.Summary
AI-Generated Summary