M2rc-Eval: Массово-многоязычное оценивание завершения кода на уровне репозитория
M2rc-Eval: Massively Multilingual Repository-level Code Completion Evaluation
October 28, 2024
Авторы: 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
Аннотация
Уровень репозитория по завершению кода привлекает большое внимание в области программной инженерии, и были представлены несколько эталонных наборов данных. Однако существующие эталонные наборы данных по завершению кода на уровне репозитория обычно сосредоточены на ограниченном количестве языков (<5), что не позволяет оценить общие способности кодового интеллекта на разных языках для существующих крупных языковых моделей (LLM). Кроме того, существующие эталонные наборы обычно представляют общие средние показатели по разным языкам, где не учитываются тонкие способности в различных сценариях завершения. Для облегчения исследований LLM кода в мультиязычных сценариях мы предлагаем массовый мультиязычный эталон по завершению кода на уровне репозитория, охватывающий 18 языков программирования (названный M2RC-EVAL), и два типа тонких аннотаций (т.е. на уровне корзины и семантического уровня) по различным сценариям завершения предоставлены, где мы получаем эти аннотации на основе разобранного абстрактного синтаксического дерева. Более того, мы также составляем массовый мультиязычный корпус инструкций M2RC-INSTRUCT для улучшения способностей завершения кода на уровне репозитория существующих LLM кодов. Обширные экспериментальные результаты демонстрируют эффективность наших M2RC-EVAL и 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