five

SWE-bench-extra-v2

收藏
Hugging Face2025-05-12 更新2025-05-13 收录
下载链接:
https://huggingface.co/datasets/nebius/SWE-bench-extra-v2
下载链接
链接失效反馈
官方服务:
资源简介:
SWE-bench Extra V2是一个用于训练或评估专门解决GitHub问题的代理系统的数据集。它基于构建SWE-bench基准和之前的SWE-bench Extra数据集的方法,包含了6000个Python仓库中的21000个问题-拉取请求对。数据集支持软件开发代理的开发,这些代理能够自主解决GitHub问题。数据收集过程包括问题与拉取请求的收集、过滤、自动提取项目依赖关系以及基于执行的验证步骤。
创建时间:
2025-04-28
原始信息汇总

数据集概述:nebius/SWE-bench-extra-v2

数据集简介

SWE-rebench是一个大规模数据集,旨在支持基于LLM的软件工程(SWE)代理的训练和评估。该数据集通过全自动流水线构建,持续从真实世界的GitHub任务中提取数据,包含来自6,000+个Python仓库的21,000多个问题-拉取请求对,每个实例均通过环境设置和测试执行验证正确性。

关键特性

  • 扩展了SWE-bench的方法论,新增:
    • 持续任务收集以防止基准过时
    • 去污染机制以减少预训练LLM的数据泄漏
    • 自动环境提取和验证以确保高质量执行

数据集统计

数据 类型 均值 p75 最大值
问题文本 长度(单词) 111.5 146 1,294
代码库 文件(非测试) 71.71 72.00 2,264
行数(非测试) 15,163.38 13,777 1,039,288
黄金补丁 编辑文件数 2.6 3 7
编辑行数 56 76 300
测试 Fail to Pass 10.94 5 4,941
总数 58.5 49 7,820

数据集结构

字段说明

字段名 类型 描述
instance_id str 实例标识符,格式为repo_owner__repo_name-PR-number
patch str 解决该问题的黄金补丁(不含测试相关代码)。
repo str GitHub仓库的owner/name标识符。
base_commit str 应用解决方案PR前的仓库HEAD提交哈希。
hints_text str 解决方案PR首次提交日期前对问题的评论。
created_at str 拉取请求的创建日期。
test_patch str 解决方案PR贡献的测试文件补丁。
problem_statement str 问题标题和正文。
version str 用于运行评估的安装版本。
environment_setup_commit str 用于环境设置和安装的提交哈希。
FAIL_TO_PASS str PR解决并关联问题解决的测试列表(JSON字符串)。
PASS_TO_PASS str PR应用前后应通过的测试列表(JSON字符串)。
meta str 指示实例是否为lite的JSON字典,若非lite则包含失败的验证器列表。
license_name str 仓库的许可证类型。
install_config str 仓库的安装配置。
requirements str 仓库的冻结依赖项。
environment str 仓库的环境配置。

使用方式

python from datasets import load_dataset ds = load_dataset(nebius/SWE-rebench)

许可证

数据集采用Creative Commons Attribution 4.0许可证,但请遵守每个具体仓库的许可证(每个实例均提供其仓库的许可证信息)。

搜集汇总
数据集介绍
main_image_url
构建方式
在软件工程领域,SWE-bench-extra-v2数据集通过自动化流水线构建,持续从真实GitHub任务中提取数据,确保数据的新鲜度和多样性。该数据集包含来自6000多个Python仓库的21000多个问题-拉取请求对,每个实例都经过环境设置和测试执行的严格验证。通过引入去污染机制和自动环境提取技术,有效避免了预训练语言模型中的数据泄漏问题,同时保证了执行环境的高质量。
特点
作为软件工程领域的基准数据集,SWE-bench-extra-v2以其丰富的元数据特征脱颖而出。每个实例包含详细的代码库信息、问题描述、补丁文件以及测试结果等结构化数据。特别值得注意的是其meta字段,不仅标注了实例是否符合精简标准,还记录了验证失败的详细信息。数据集统计显示,平均每个问题涉及2.6个文件修改,测试用例数量从简单的5个到复杂的7820个不等,充分体现了真实软件开发场景的复杂性。
使用方法
该数据集可通过Hugging Face的datasets库便捷加载,为研究人员评估基于LLM的软件工程代理提供了标准化平台。使用前需配置指定的SWE-bench-fork执行环境,通过提供的install_config和environment字段可准确复现原始测试条件。数据集中的FAIL_TO_PASS等测试结果字段为模型性能评估提供了明确指标,而详细的版本控制和提交哈希信息则确保了实验的可重复性。建议使用者同时关注各仓库的原始许可协议,以符合开源规范。
背景与挑战
背景概述
SWE-bench-extra-v2数据集是面向基于大型语言模型(LLM)的软件工程(SWE)代理训练与评估而构建的大规模基准数据集,由Nebius团队主导开发。该数据集基于自动化流水线持续从GitHub提取真实世界的任务,涵盖6000余个Python仓库中超过21000个问题-拉取请求对,并通过环境设置与测试执行进行正确性验证。作为SWE-bench的扩展版本,其创新性体现在动态任务收集机制、防止预训练模型数据泄露的净化技术,以及自动化的环境提取验证体系,为软件工程智能化研究提供了高质量、时效性强的实验平台。
当前挑战
该数据集面临双重核心挑战:在领域问题层面,需解决复杂代码库环境下LLM代理的精准行为评估难题,包括跨版本依赖管理、多文件协同修改等细粒度编程任务;在构建过程中,自动化流水线需应对异构仓库环境复现、测试结果可靠性验证等工程挑战,特别是处理历史提交的依赖冲突与非确定性测试案例时需保持数据一致性。此外,动态更新机制还需平衡任务规模扩展与数据质量控制的矛盾。
常用场景
经典使用场景
在软件工程领域,SWE-bench-extra-v2数据集为基于大型语言模型的软件开发代理提供了丰富的训练和评估资源。该数据集通过自动化的流程持续收集来自GitHub的真实任务,覆盖了超过21,000个问题与拉取请求的组合,涉及6,000多个Python代码库。研究人员通常利用这一数据集来测试模型在代码修复、功能实现和测试生成等任务中的表现,从而推动智能编程助手的发展。
实际应用
在实际应用中,SWE-bench-extra-v2数据集被广泛用于开发智能编程辅助工具。科技公司利用该数据集训练模型,以自动识别和修复代码中的错误,或根据问题描述生成相应的功能实现。教育机构则将其用于编程教学,帮助学生理解真实项目中的问题解决过程。这些应用显著提高了软件开发的效率和质量。
衍生相关工作
基于SWE-bench-extra-v2数据集,研究者们已经开展了多项重要工作。其中包括开发更高效的代码补全模型、改进测试用例生成算法,以及探索多模态编程辅助系统。该数据集还启发了对大型语言模型在软件工程中应用边界的探索,推动了智能编程领域的理论和方法创新。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

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

二维码
科研交流群

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

数据驱动未来

携手共赢发展

商业合作