GitChameleon: Evaluación de la Generación de Código por IA frente a Incompatibilidades de Versión en Bibliotecas de Python
GitChameleon: Evaluating AI Code Generation Against Python Library Version Incompatibilities
July 16, 2025
Autores: 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
Resumen
La rápida evolución de las bibliotecas de software representa un obstáculo considerable para la generación de código, lo que exige una adaptación continua a las frecuentes actualizaciones de versiones mientras se preserva la compatibilidad con versiones anteriores. Aunque los benchmarks existentes sobre la evolución del código ofrecen información valiosa, generalmente carecen de una evaluación basada en la ejecución para generar código compatible con versiones específicas de las bibliotecas. Para abordar este problema, presentamos GitChameleon, un conjunto de datos novedoso y meticulosamente curado que incluye 328 problemas de completado de código en Python, cada uno condicionado a versiones específicas de bibliotecas y acompañado de pruebas unitarias ejecutables. GitChameleon evalúa rigurosamente la capacidad de los modelos de lenguaje grandes (LLMs) contemporáneos, agentes impulsados por LLMs, asistentes de código y sistemas RAG para realizar generación de código condicionada por versiones que demuestre precisión funcional mediante la ejecución. Nuestras evaluaciones exhaustivas indican que los sistemas más avanzados enfrentan desafíos significativos en esta tarea; los modelos empresariales alcanzan tasas de éxito iniciales en el rango del 48-51%, lo que subraya la complejidad del problema. Al ofrecer un benchmark basado en la ejecución que enfatiza la naturaleza dinámica de las bibliotecas de código, GitChameleon permite una comprensión más clara de este desafío y ayuda a guiar el desarrollo de métodos de generación de código con IA más adaptables y confiables. Hacemos público el conjunto de datos y el código de evaluación en 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.