five

SWE-bench/SWE-bench_Lite

收藏
Hugging Face2025-04-29 更新2025-07-05 收录
下载链接:
https://hf-mirror.com/datasets/SWE-bench/SWE-bench_Lite
下载链接
链接失效反馈
官方服务:
资源简介:
SWE-bench Lite是SWE-bench数据集的一个子集,用于测试系统自动解决GitHub问题的能力。该数据集从11个流行的Python项目中收集了300个测试问题-拉取请求对。评估通过单元测试验证进行,使用PR之后的操作作为参考解决方案。数据集作为论文《SWE-bench: Can Language Models Resolve Real-World GitHub Issues?》的一部分发布。

SWE-bench Lite is a subset of the SWE-bench dataset, which tests systems ability to automatically resolve GitHub issues. The dataset collects 300 test Issue-Pull Request pairs from 11 popular Python projects. Evaluation is performed by unit test verification using post-PR behavior as the reference solution. The dataset was released as part of the paper SWE-bench: Can Language Models Resolve Real-World GitHub Issues?
提供机构:
SWE-bench
搜集汇总
数据集介绍
main_image_url
构建方式
SWE-bench_Lite数据集源自于SWE-bench,旨在评估系统自动解决GitHub问题的能力。该数据集精挑细选了来自11个热门Python仓库的300个测试问题-拉取请求对。构建过程中,每个样本包含问题的标题与正文(problem_statement)、基准提交哈希(base_commit)以及由拉取请求生成的黄金补丁(patch)。评估机制依托于单元测试验证,以拉取请求后的行为作为参考解决方案,确保问题解决效果的客观度量。数据集中还包含了测试文件补丁(test_patch)、通过/失败测试集(FAIL_TO_PASS和PASS_TO_PASS)等关键信息,为模型性能的全面评估提供了坚实基础。
特点
该数据集的核心特点在于其精炼性与代表性:仅包含300个测试样本,却覆盖了多个主流Python仓库的真实世界问题,有效降低了评估成本与复杂度。每个样本均提供了丰富的上下文信息,如问题陈述、基准代码库状态以及环境设置提交哈希,使得模型能够基于完整的代码库进行推理。此外,数据集区分了开发集(23个样本)和测试集(300个样本),便于模型的调优与最终评估。其评估标准严格基于单元测试,确保了结果的可重复性与公正性,是衡量语言模型在真实软件工程任务上能力的标杆。
使用方法
使用SWE-bench_Lite数据集时,研究者需利用样本中的problem_statement作为输入,结合base_commit所代表的代码库状态,让模型生成解决该问题的补丁。随后,通过提供的测试补丁(test_patch)和通过/失败测试列表(FAIL_TO_PASS、PASS_TO_PASS)来验证生成的补丁是否正确。为简化推理过程,数据集还提供了基于Oracle和BM25检索的预处理版本(如princeton-nlp/SWE-bench_Lite_oracle),可直接用于模型评估。最终,模型的性能可通过在www.swebench.com上的排行榜进行对比,从而推动该领域研究的进步。
背景与挑战
背景概述
软件工程领域长期面临自动化缺陷修复的挑战,大型语言模型的崛起为这一难题带来了曙光。SWE-bench_Lite数据集由普林斯顿大学自然语言处理团队于2023年创建,作为SWE-bench的精简版本,聚焦于评估语言模型从真实GitHub仓库中自动解决issue的能力。该数据集精选了11个流行Python仓库中的300个issue-拉取请求对,每个样本包含问题描述、基准提交哈希和黄金补丁等关键信息。通过基于单元测试的验证机制,研究者能够客观衡量模型生成的补丁是否成功复现了人工修复行为。该数据集的发布为自动化程序修复领域提供了标准化的评估基准,推动了语言模型在软件开发协作中的实际应用探索。
当前挑战
SWE-bench_Lite数据集面临的主要挑战集中在三个方面。其一,领域问题层面,模型需要理解复杂的代码仓库结构、跨文件的依赖关系以及隐式的编程规范,这对模型的代码理解与推理能力提出了极高要求,远超出传统代码补全或简单bug定位任务。其二,构建过程中,数据收集需从海量GitHub仓库中筛选出具有明确测试验证的issue-PR对,保证补丁的准确性和测试覆盖的完备性,同时排除与测试无关的代码变更,这一过程需要大量人工校验和自动化工具协同。其三,评估环节中单元测试的执行环境依赖复杂,不同仓库的依赖版本、系统配置差异导致复现结果可能不一致,增加了基准测试的稳定性挑战。
常用场景
经典使用场景
SWE-bench_Lite作为软件工程与自然语言处理交叉领域的标志性基准,其经典使用场景在于评估大语言模型自动解决真实世界GitHub问题的能力。该数据集精心筛选了300个来自11个流行Python仓库的Issue-Pull Request配对实例,通过单元测试验证机制,量化模型在代码理解、补丁生成与缺陷修复等环节的综合表现,为自动化软件维护研究提供了标准化的评测平台。
实际应用
在实际应用中,SWE-bench_Lite为软件团队提供了评估和优化AI辅助开发工具的有效手段,可应用于自动化Bug修复流水线的构建、代码审查辅助系统的开发以及持续集成环境中智能补丁建议的生成。基于该基准的模型能够在开发流程中快速定位并修复常见缺陷,显著降低人工排查与修改的时间成本,提升软件维护效率与代码质量。
衍生相关工作
围绕SWE-bench_Lite衍生了一系列开创性工作,包括基于Oracle检索和BM25检索的上下文增强版本(如princeton-nlp/SWE-bench_Lite_oracle与princeton-nlp/SWE-bench_Lite_bm25_13K),这些变体深入探究了检索策略对代码修复性能的影响。此外,该基准催生了针对多文件编辑、长上下文理解及复杂逻辑推理等子问题的专项研究,并推动了如Agent化编程系统、分层补丁生成框架等前沿方法的涌现,形成了活跃的研究生态。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务