Possono i modelli linguistici sostituire i programmatori? REPOCOD dice 'Non ancora'.
Can Language Models Replace Programmers? REPOCOD Says 'Not Yet'
October 29, 2024
Autori: Shanchao Liang, Yiran Hu, Nan Jiang, Lin Tan
cs.AI
Abstract
I grandi modelli linguistici (LLM) hanno dimostrato una notevole capacità nella generazione di codice con più del 90% di successo nel risolvere problemi di codifica Python in HumanEval e MBPP. Una tale elevata accuratezza porta alla domanda: possono i LLM sostituire i programmatori umani? I benchmark esistenti per la generazione di codice manualmente creati, semplici o di una sola riga, non possono rispondere a questa domanda a causa della loro distanza dallo sviluppo software del mondo reale. Per rispondere a questa domanda, proponiamo REPOCOD, un benchmark per la generazione di codice con 980 problemi raccolti da 11 progetti reali popolari, di cui più del 58% richiedono informazioni di contesto a livello di file o repository. Inoltre, REPOCOD ha la lunghezza media della soluzione canonica più lunga (331,6 token) e la complessità ciclomatica media più alta (9,00) rispetto ai benchmark esistenti. Nelle nostre valutazioni su dieci LLM, nessuno dei modelli può ottenere più del 30% di successo nel passaggio 1 su REPOCOD, rivelando la necessità di costruire LLM più potenti che possano aiutare gli sviluppatori nello sviluppo software del mondo reale.
English
Large language models (LLMs) have shown remarkable ability in code generation
with more than 90 pass@1 in solving Python coding problems in HumanEval and
MBPP. Such high accuracy leads to the question: can LLMs replace human
programmers? Existing manual crafted, simple, or single-line code generation
benchmarks cannot answer this question due to their gap with real-world
software development. To answer this question, we propose REPOCOD, a code
generation benchmark with 980 problems collected from 11 popular real-world
projects, with more than 58% of them requiring file-level or repository-level
context information. In addition, REPOCOD has the longest average canonical
solution length (331.6 tokens) and the highest average cyclomatic complexity
(9.00) compared to existing benchmarks. In our evaluations on ten LLMs, none of
the models can achieve more than 30 pass@1 on REPOCOD, disclosing the necessity
of building stronger LLMs that can help developers in real-world software
development.Summary
AI-Generated Summary