ChatPaper.aiChatPaper

DevEval: Een handmatig geannoteerde benchmark voor codegeneratie afgestemd op real-world coderepositories

DevEval: A Manually-Annotated Code Generation Benchmark Aligned with Real-World Code Repositories

May 30, 2024
Auteurs: Jia Li, Ge Li, Yunfei Zhao, Yongmin Li, Huanyu Liu, Hao Zhu, Lecheng Wang, Kaibo Liu, Zheng Fang, Lanshen Wang, Jiazheng Ding, Xuanming Zhang, Yuqi Zhu, Yihong Dong, Zhi Jin, Binhua Li, Fei Huang, Yongbin Li
cs.AI

Samenvatting

Het evalueren van de programmeervaardigheden van Large Language Models (LLMs) blijft een open vraag. We constateren dat bestaande benchmarks slecht aansluiten bij echte code repositories en onvoldoende zijn om de programmeervaardigheden van LLMs te evalueren. Om deze kennislacune aan te pakken, stellen we een nieuwe benchmark voor genaamd DevEval, die drie verbeteringen biedt. (1) DevEval sluit aan bij echte repositories op meerdere dimensies, zoals codeverdelingen en afhankelijkheidsverdelingen. (2) DevEval is geannoteerd door 13 ontwikkelaars en bevat uitgebreide annotaties (bijv. vereisten, originele repositories, referentiecode en referentieafhankelijkheden). (3) DevEval bestaat uit 1.874 testsamples afkomstig uit 117 repositories, die 10 populaire domeinen bestrijken (bijv. Internet, Database). Op basis van DevEval stellen we repository-level codegeneratie voor en evalueren we 8 populaire LLMs op DevEval (bijv. gpt-4, gpt-3.5, StarCoder 2, DeepSeek Coder, CodeLLaMa). Onze experimenten onthullen de programmeervaardigheden van deze LLMs in echte code repositories. Zo is in onze experimenten het hoogste Pass@1 van gpt-4-turbo slechts 53,04%. We analyseren ook de mislukte gevallen van LLMs en vatten hun tekortkomingen samen. We hopen dat DevEval de ontwikkeling van LLMs in echte code repositories kan bevorderen. DevEval, prompts en de voorspellingen van LLMs zijn vrijgegeven.
English
How to evaluate the coding abilities of Large Language Models (LLMs) remains an open question. We find that existing benchmarks are poorly aligned with real-world code repositories and are insufficient to evaluate the coding abilities of LLMs. To address the knowledge gap, we propose a new benchmark named DevEval, which has three advances. (1) DevEval aligns with real-world repositories in multiple dimensions, e.g., code distributions and dependency distributions. (2) DevEval is annotated by 13 developers and contains comprehensive annotations (e.g., requirements, original repositories, reference code, and reference dependencies). (3) DevEval comprises 1,874 testing samples from 117 repositories, covering 10 popular domains (e.g., Internet, Database). Based on DevEval, we propose repository-level code generation and evaluate 8 popular LLMs on DevEval (e.g., gpt-4, gpt-3.5, StarCoder 2, DeepSeek Coder, CodeLLaMa). Our experiments reveal these LLMs' coding abilities in real-world code repositories. For example, in our experiments, the highest Pass@1 of gpt-4-turbo is only 53.04%. We also analyze LLMs' failed cases and summarize their shortcomings. We hope DevEval can facilitate the development of LLMs in real code repositories. DevEval, prompts, and LLMs' predictions have been released.
PDF101December 12, 2024