GitChameleon: Valutazione della Generazione di Codice AI rispetto alle Incompatibilità di Versione delle Librerie Python
GitChameleon: Evaluating AI Code Generation Against Python Library Version Incompatibilities
July 16, 2025
Autori: Diganta Misra, Nizar Islah, Victor May, Brice Rauby, Zihan Wang, Justine Gehring, Antonio Orvieto, Muawiz Chaudhary, Eilif B. Muller, Irina Rish, Samira Ebrahimi Kahou, Massimo Caccia
cs.AI
Abstract
La rapida evoluzione delle librerie software rappresenta un ostacolo considerevole per la generazione di codice, richiedendo un adattamento continuo ai frequenti aggiornamenti di versione pur mantenendo la compatibilità con le versioni precedenti. Sebbene i benchmark esistenti sull'evoluzione del codice forniscano intuizioni preziose, generalmente mancano di una valutazione basata sull'esecuzione per la generazione di codice conforme a specifiche versioni delle librerie. Per affrontare questo problema, introduciamo GitChameleon, un nuovo dataset accuratamente curato che comprende 328 problemi di completamento del codice Python, ciascuno condizionato a specifiche versioni di libreria e accompagnato da test unitari eseguibili. GitChameleon valuta rigorosamente la capacità dei moderni modelli linguistici di grandi dimensioni (LLM), agenti basati su LLM, assistenti di codice e sistemi RAG di eseguire una generazione di codice condizionata alla versione che dimostri accuratezza funzionale attraverso l'esecuzione. Le nostre valutazioni estensive indicano che i sistemi all'avanguardia incontrano sfide significative in questo compito; i modelli aziendali raggiungono tassi di successo di base compresi tra il 48% e il 51%, sottolineando la complessità del problema. Offrendo un benchmark basato sull'esecuzione che enfatizza la natura dinamica delle librerie di codice, GitChameleon consente una comprensione più chiara di questa sfida e aiuta a guidare lo sviluppo di metodi di generazione di codice AI più adattabili e affidabili. Rendiamo disponibili pubblicamente il dataset e il codice di valutazione all'indirizzo https://github.com/mrcabbage972/GitChameleonBenchmark.
English
The rapid evolution of software libraries poses a considerable hurdle for
code generation, necessitating continuous adaptation to frequent version
updates while preserving backward compatibility. While existing code evolution
benchmarks provide valuable insights, they typically lack execution-based
evaluation for generating code compliant with specific library versions. To
address this, we introduce GitChameleon, a novel, meticulously curated dataset
comprising 328 Python code completion problems, each conditioned on specific
library versions and accompanied by executable unit tests. GitChameleon
rigorously evaluates the capacity of contemporary large language models (LLMs),
LLM-powered agents, code assistants, and RAG systems to perform
version-conditioned code generation that demonstrates functional accuracy
through execution. Our extensive evaluations indicate that state-of-the-art
systems encounter significant challenges with this task; enterprise models
achieving baseline success rates in the 48-51\% range, underscoring the
intricacy of the problem. By offering an execution-based benchmark emphasizing
the dynamic nature of code libraries, GitChameleon enables a clearer
understanding of this challenge and helps guide the development of more
adaptable and dependable AI code generation methods. We make the dataset and
evaluation code publicly available at
https://github.com/mrcabbage972/GitChameleonBenchmark.