five

GitChameleon

收藏
arXiv2025-07-17 更新2025-07-18 收录
下载链接:
https://github.com/mrcabbage972/GitChameleon Benchmark
下载链接
链接失效反馈
官方服务:
资源简介:
GitChameleon是一个包含328个Python代码补全问题的数据集,每个问题都与特定版本的Python库相关,并伴随可执行的单元测试。该数据集旨在评估现代大型语言模型、LLM驱动的代理、代码助手和RAG系统在生成符合特定库版本的代码方面的能力。数据集由26个库组成,涵盖科学计算、数据科学和Web开发领域,样本收集自2014年至2023年间的版本发布。数据集的创建过程涉及350多个小时的手动工作,包括识别历史性破坏性变更、编写问题陈述和验证单元测试。GitChameleon有助于推动更适应和可靠的AI代码生成方法的发展。

GitChameleon is a dataset containing 328 Python code completion problems, each associated with a specific version of a Python library and accompanied by executable unit tests. This dataset is designed to evaluate the capabilities of modern large language models (LLMs), LLM-powered AI agents, code assistants, and Retrieval-Augmented Generation (RAG) systems when generating code that conforms to specific library versions. The dataset encompasses 26 libraries across the domains of scientific computing, data science, and web development, with samples collected from library releases between 2014 and 2023. The creation of GitChameleon involved over 350 hours of manual work, including identifying historical breaking changes, drafting problem statements, and validating unit tests. GitChameleon facilitates the advancement of more adaptive and reliable AI code generation methodologies.
提供机构:
Mila Quebec AI Institute, McGill University, Montréal
创建时间:
2025-07-17
搜集汇总
数据集介绍
main_image_url
构建方式
GitChameleon数据集通过精心筛选Python库的历史版本变更记录构建而成,研究团队投入350小时人工标注,从26个主流Python库的版本发布说明中识别出328个具有破坏性变更的API案例。每个样本包含版本限定的编码问题描述、初始代码框架、可执行单元测试及参考文档,构建过程严格遵循三重验证机制:首先基于库的变更日志确定API破坏性变更点,随后人工编写符合特定版本约束的问题描述和测试用例,最后在隔离的Docker环境中验证测试的准确性和版本特异性。
使用方法
使用该数据集时需建立版本隔离的评估环境,通过Docker容器精确控制各样本的库依赖版本。评估流程分为三个阶段:首先将问题描述和初始代码输入待测模型;随后在目标版本环境中执行生成代码,通过隐藏测试验证功能正确性;最后可利用可见测试进行模型自调试。数据集支持多种评估模式,包括基础贪婪解码、思维链推理、检索增强生成等,其中检索增强模式可结合附带的版本化API文档向量数据库,模拟真实开发中的文档查阅场景。评估指标以隐藏测试通过率为核心,辅以API命中率等辅助指标。
背景与挑战
背景概述
GitChameleon是由Mila Quebec AI Institute、MPI-IS Tübingen等机构的研究团队于2025年推出的Python代码生成评估数据集,旨在解决AI模型在动态软件库环境中的版本适配问题。该数据集包含328个基于26个主流Python库的代码补全任务,每个任务均绑定特定库版本并配备可执行单元测试,填补了现有基准在版本约束代码生成评估方面的空白。其创新性地采用执行验证机制,为衡量大语言模型在真实开发场景中处理库版本不兼容问题的能力提供了标准化测试平台,推动了AI代码生成系统在软件工程实践中的可靠性研究。
当前挑战
GitChameleon面临双重挑战:在领域层面,需解决快速迭代的软件库导致的API语义漂移问题,现有模型在生成版本兼容代码时成功率仅48-51%;在构建层面,需精确捕获库版本间的破坏性变更并设计可验证的测试用例,研究人员耗费350小时人工标注历史版本变更,确保每个样本反映真实API行为差异。数据集的细粒度版本约束要求模型具备精确的API知识检索与版本控制能力,而多版本测试环境的配置复杂性进一步增加了评估过程的工程难度。
常用场景
经典使用场景
GitChameleon数据集在评估大型语言模型(LLMs)针对特定Python库版本生成代码的能力方面具有经典应用场景。该数据集通过提供328个基于Python的代码完成问题,每个问题都针对特定的库版本并附带可执行的单元测试,来严格测试模型在版本约束条件下的代码生成功能。例如,模型需要根据Seaborn 0.13.0版本的API规范生成正确的violinplot函数,避免使用已弃用的参数。
解决学术问题
GitChameleon解决了当前代码生成研究中版本兼容性评估不足的核心问题。现有基准测试多关注代码迁移或非执行性评估,而该数据集首次实现了对静态版本约束下功能正确性的执行验证,填补了LLMs在版本敏感型代码生成能力评估的空白。其实验结果表明,即使顶级企业级模型在此任务上的基准成功率仅为48-51%,凸显了库版本演化对AI代码生成的重大挑战。
实际应用
在实际开发环境中,GitChameleon的应用价值体现在维护遗留系统和技术债务场景。当开发人员受限于特定库版本时,该数据集可验证AI助手生成的代码是否严格遵循版本约束。例如在金融行业使用固定版本的Pandas进行数据分析时,或医疗系统依赖特定版本的SciPy进行数值计算时,都能通过该基准确保生成代码的版本兼容性。
数据集最近研究
最新研究方向
GitChameleon数据集聚焦于评估AI代码生成在Python库版本不兼容问题上的表现,填补了现有基准测试在版本约束代码生成领域的空白。该数据集通过328个严格筛选的Python代码补全问题,结合可执行单元测试,为研究社区提供了首个面向特定库版本的执行式评估框架。当前前沿研究主要围绕三个方向展开:一是探索大语言模型在版本感知代码生成中的知识蒸馏机制,揭示模型如何从训练数据中提取并应用版本特定API知识;二是开发基于检索增强生成(RAG)的版本适配框架,通过实时检索库文档提升模型对历史版本API的准确调用能力;三是构建多模态评估体系,将静态分析工具与动态测试相结合,量化模型在语义兼容性、API调用准确性和运行时稳定性等维度的表现。该数据集已推动多个创新性研究,包括MIT和Google Brain团队提出的版本感知微调方法Version-Adapter,以及微软研究院开发的库版本检索系统LibRetriever,显著提升了代码生成模型在生产环境中的实用性。
相关研究论文
  • 1
    GitChameleon: Evaluating AI Code Generation Against Python Library Version IncompatibilitiesMila Quebec AI Institute, McGill University, Montréal · 2025年
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作