ChatPaper.aiChatPaper

DevEval: Un Benchmark per la Generazione di Codice con Annotazioni Manuali Allineato ai Repository di Codice del Mondo Reale

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

May 30, 2024
Autori: 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

Abstract

Come valutare le capacità di codifica dei Large Language Model (LLM) rimane una questione aperta. Rileviamo che i benchmark esistenti sono scarsamente allineati con i repository di codice del mondo reale e sono insufficienti per valutare le capacità di codifica degli LLM. Per colmare questa lacuna, proponiamo un nuovo benchmark denominato DevEval, che presenta tre avanzamenti. (1) DevEval è allineato con i repository reali in molteplici dimensioni, ad esempio, distribuzioni del codice e distribuzioni delle dipendenze. (2) DevEval è annotato da 13 sviluppatori e contiene annotazioni complete (ad esempio, requisiti, repository originali, codice di riferimento e dipendenze di riferimento). (3) DevEval comprende 1.874 campioni di test provenienti da 117 repository, coprendo 10 domini popolari (ad esempio, Internet, Database). Basandoci su DevEval, proponiamo la generazione di codice a livello di repository e valutiamo 8 LLM popolari su DevEval (ad esempio, gpt-4, gpt-3.5, StarCoder 2, DeepSeek Coder, CodeLLaMa). I nostri esperimenti rivelano le capacità di codifica di questi LLM nei repository di codice del mondo reale. Ad esempio, nei nostri esperimenti, il Pass@1 più alto di gpt-4-turbo è solo del 53,04%. Analizziamo anche i casi di fallimento degli LLM e riassumiamo i loro punti deboli. Speriamo che DevEval possa facilitare lo sviluppo degli LLM nei repository di codice reali. DevEval, i prompt e le previsioni degli LLM sono stati rilasciati.
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