ChatPaper.aiChatPaper

Valutazione Comparativa dei Modelli di IA nell'Ingegneria del Software: Una Revisione, Strumento di Ricerca e Protocollo di Miglioramento

Benchmarking AI Models in Software Engineering: A Review, Search Tool, and Enhancement Protocol

March 7, 2025
Autori: Roham Koohestani, Philippe de Bekker, Maliheh Izadi
cs.AI

Abstract

I benchmark sono essenziali per una valutazione coerente e la riproducibilità. L'integrazione dell'Intelligenza Artificiale nell'Ingegneria del Software (AI4SE) ha dato origine a numerosi benchmark per attività come la generazione di codice e la correzione di bug. Tuttavia, questa proliferazione presenta diverse sfide: (1) la conoscenza sui benchmark è dispersa tra diverse attività, (2) la difficoltà nella selezione di benchmark rilevanti, (3) l'assenza di uno standard uniforme per lo sviluppo dei benchmark e (4) le limitazioni dei benchmark esistenti. In questo articolo, esaminiamo 173 studi e identifichiamo 204 benchmark AI4SE. Classifichiamo questi benchmark, analizziamo le loro limitazioni e evidenziamo lacune nelle pratiche. Sulla base della nostra revisione, abbiamo creato BenchScout, uno strumento di ricerca semantica per trovare benchmark rilevanti, utilizzando il clustering automatico dei contesti derivanti dagli studi associati. Abbiamo condotto uno studio con 22 partecipanti per valutare l'usabilità, l'efficacia e l'intuitività di BenchScout, ottenendo punteggi medi di 4.5, 4.0 e 4.1 su 5. Per avanzare gli standard di benchmarking, proponiamo BenchFrame, un metodo unificato per migliorare la qualità dei benchmark. Come caso di studio, abbiamo applicato BenchFrame al benchmark HumanEval, affrontandone le principali limitazioni. Ciò ha portato a HumanEvalNext, che include (1) errori corretti, (2) una migliore conversione linguistica, (3) una copertura dei test ampliata e (4) una difficoltà aumentata. Abbiamo quindi valutato dieci modelli linguistici di codice all'avanguardia su HumanEval, HumanEvalPlus e HumanEvalNext. Su HumanEvalNext, i modelli hanno mostrato una riduzione del punteggio pass@1 del 31.22% e del 19.94% rispetto a HumanEval e HumanEvalPlus, rispettivamente.
English
Benchmarks are essential for consistent evaluation and reproducibility. The integration of Artificial Intelligence into Software Engineering (AI4SE) has given rise to numerous benchmarks for tasks such as code generation and bug fixing. However, this surge presents challenges: (1) scattered benchmark knowledge across tasks, (2) difficulty in selecting relevant benchmarks, (3) the absence of a uniform standard for benchmark development, and (4) limitations of existing benchmarks. In this paper, we review 173 studies and identify 204 AI4SE benchmarks. We classify these benchmarks, analyze their limitations, and expose gaps in practices. Based on our review, we created BenchScout, a semantic search tool to find relevant benchmarks, using automated clustering of the contexts from associated studies. We conducted a user study with 22 participants to evaluate BenchScout's usability, effectiveness, and intuitiveness which resulted in average scores of 4.5, 4.0, and 4.1 out of 5. To advance benchmarking standards, we propose BenchFrame, a unified method to enhance benchmark quality. As a case study, we applied BenchFrame to the HumanEval benchmark and addressed its main limitations. This led to HumanEvalNext, featuring (1) corrected errors, (2) improved language conversion, (3) expanded test coverage, and (4) increased difficulty. We then evaluated ten state-of-the-art code language models on HumanEval, HumanEvalPlus, and HumanEvalNext. On HumanEvalNext, models showed a pass@1 score reduction of 31.22% and 19.94% compared to HumanEval and HumanEvalPlus, respectively.
PDF112March 12, 2025