DevEval: Ein manuell annotierter Benchmark für Code-Generierung, der mit Echtwelt-Code-Repositories abgestimmt ist.
DevEval: A Manually-Annotated Code Generation Benchmark Aligned with Real-World Code Repositories
May 30, 2024
Autoren: 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
Zusammenfassung
Die Bewertung der Kodierfähigkeiten von Large Language Models (LLMs) bleibt eine offene Frage. Wir stellen fest, dass bestehende Benchmarks schlecht auf reale Code-Repositories abgestimmt sind und nicht ausreichen, um die Kodierfähigkeiten von LLMs zu bewerten.
Um die Wissenslücke zu schließen, schlagen wir einen neuen Benchmark namens DevEval vor, der drei Fortschritte aufweist. (1) DevEval ist in mehreren Dimensionen auf reale Repositories ausgerichtet, z. B. Code- und Abhängigkeitsverteilungen. (2) DevEval wird von 13 Entwicklern annotiert und enthält umfassende Annotationen (z. B. Anforderungen, originale Repositories, Referenzcode und Referenzabhängigkeiten). (3) DevEval umfasst 1.874 Testbeispiele aus 117 Repositories, die 10 beliebte Domänen abdecken (z. B. Internet, Datenbank). Basierend auf DevEval schlagen wir die Codegenerierung auf Repository-Ebene vor und bewerten 8 beliebte LLMs auf DevEval (z. B. gpt-4, gpt-3.5, StarCoder 2, DeepSeek Coder, CodeLLaMa). Unsere Experimente zeigen die Kodierfähigkeiten dieser LLMs in realen Code-Repositories auf. Zum Beispiel beträgt in unseren Experimenten die höchste Passrate von gpt-4-turbo nur 53,04%. Wir analysieren auch die fehlgeschlagenen Fälle der LLMs und fassen ihre Mängel zusammen. Wir hoffen, dass DevEval die Entwicklung von LLMs in realen Code-Repositories erleichtern kann. DevEval, Anreize und Vorhersagen der LLMs wurden veröffentlicht.
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.Summary
AI-Generated Summary