Long Code Arena: a Set of Benchmarks for Long-Context Code Models

Egor Bogomolov,Aleksandra Eliseeva,Timur Galimzyanov,Evgeniy Glukhov,Anton Shapkin,Maria Tigina,Yaroslav Golubev,Alexander Kovrigin,Arie van Deursen,Maliheh Izadi,Timofey Bryksin
2024-06-17
Abstract:Nowadays, the fields of code and natural language processing are evolving rapidly. In particular, models become better at processing long context windows - supported context sizes have increased by orders of magnitude over the last few years. However, there is a shortage of benchmarks for code processing that go beyond a single file of context, while the most popular ones are limited to a single method. With this work, we aim to close this gap by introducing Long Code Arena, a suite of six benchmarks for code processing tasks that require project-wide context. These tasks cover different aspects of code processing: library-based code generation, CI builds repair, project-level code completion, commit message generation, bug localization, and module summarization. For each task, we provide a manually verified dataset for testing, an evaluation suite, and open-source baseline solutions based on popular LLMs to showcase the usage of the dataset and to simplify adoption by other researchers. We publish the benchmark page on HuggingFace Spaces with the leaderboard, links to HuggingFace Hub for all the datasets, and link to the GitHub repository with baselines: <a class="link-external link-https" href="https://huggingface.co/spaces/JetBrains-Research/long-code-arena" rel="external noopener nofollow">this https URL</a>.
Machine Learning,Artificial Intelligence,Information Retrieval,Software Engineering
What problem does this paper attempt to address?
This paper introduces a new benchmark suite called "Long Code Arena" aimed at addressing the evaluation problem of long context models in code processing tasks. Currently, most benchmarks focus on individual files or methods, while Long Code Arena includes six code processing tasks that require project-level context, such as library foundation code generation, CI build fixing, project-level code completion, commit message generation, error localization, and module summarization. These tasks cover different aspects of code processing and each task provides manual validation datasets, evaluation tools, and open-source baseline solutions based on popular LLMs to facilitate future research. The paper points out that the existing benchmarks suffer from limited context lengths that do not reflect real-world software development cases, whereas Long Code Arena attempts to address this gap by providing larger-scale code processing tasks.