ChatPaper.aiChatPaper

Avaliação Comparativa de Modelos de IA em Engenharia de Software: Uma Revisão, Ferramenta de Busca e Protocolo de Aprimoramento

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

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

Resumo

Os benchmarks são essenciais para avaliação consistente e reprodutibilidade. A integração da Inteligência Artificial na Engenharia de Software (IA4SE) deu origem a inúmeros benchmarks para tarefas como geração de código e correção de bugs. No entanto, esse crescimento apresenta desafios: (1) conhecimento disperso sobre benchmarks entre tarefas, (2) dificuldade em selecionar benchmarks relevantes, (3) ausência de um padrão uniforme para o desenvolvimento de benchmarks e (4) limitações dos benchmarks existentes. Neste artigo, revisamos 173 estudos e identificamos 204 benchmarks de IA4SE. Classificamos esses benchmarks, analisamos suas limitações e expomos lacunas nas práticas. Com base em nossa revisão, criamos o BenchScout, uma ferramenta de busca semântica para encontrar benchmarks relevantes, utilizando agrupamento automatizado dos contextos dos estudos associados. Realizamos um estudo com 22 participantes para avaliar a usabilidade, eficácia e intuitividade do BenchScout, que resultou em pontuações médias de 4,5, 4,0 e 4,1 em uma escala de 5. Para avançar os padrões de benchmarking, propomos o BenchFrame, um método unificado para melhorar a qualidade dos benchmarks. Como estudo de caso, aplicamos o BenchFrame ao benchmark HumanEval e abordamos suas principais limitações. Isso resultou no HumanEvalNext, que apresenta (1) erros corrigidos, (2) conversão de linguagem aprimorada, (3) cobertura de testes expandida e (4) dificuldade aumentada. Em seguida, avaliamos dez modelos de linguagem de código state-of-the-art no HumanEval, HumanEvalPlus e HumanEvalNext. No HumanEvalNext, os modelos apresentaram uma redução de 31,22% e 19,94% na pontuação pass@1 em comparação com o HumanEval e o HumanEvalPlus, respectivamente.
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.

Summary

AI-Generated Summary

PDF102March 12, 2025