遇见数据集

SofiTesfay2010/SWE-Train

收藏
Hugging Face2026-05-27 更新2026-05-31 收录
官方服务:

资源简介:

SWE-Train是一个提示-答案数据集,专为在仓库级软件工程任务上微调大语言模型(LLMs)而设计。它源自SWE-bench Verified基准——一个由SWE-bench精选的子集,包含经人类软件工程师验证的、具有完整问题描述和正确单元测试的实例。标准SWE-bench评估通常需要复杂的多步代理框架来与终端和环境交互,而SWE-Train将这些已验证的实例重新构建为直接的指令-响应模式(提示→答案),使其与标准监督微调(SFT)流程兼容。该数据集具有人类验证的质量、微调就绪的特性,并涵盖来自主要开源Python项目(如matplotlib、sympy、scikit-learn等)的真实世界编码问题。

SWE-Train is a prompt-answer dataset designed for fine-tuning large language models (LLMs) on repository-level software engineering tasks. It is derived from the SWE-bench Verified benchmark—a curated subset of SWE-bench containing instances that human software engineers verified as having complete problem descriptions and correct unit tests. Standard SWE-bench evaluation typically requires complex, multi-step agent frameworks to interact with a terminal and environment. SWE-Train reformulates these verified instances into a direct instruction-response schema (Prompt → Answer), making it compatible with standard Supervised Fine-Tuning (SFT) pipelines.

提供机构:
SofiTesfay2010
搜集汇总
数据集介绍
SofiTesfay2010/SWE-Train 数据集图片
构建方式
SWE-Train数据集源于SWE-bench Verified基准,后者是经人类软件工程师验证的子集,确保每条实例均具备完整的缺陷描述与正确的单元测试。原始SWE-bench评估需借助复杂的多步代理框架与终端环境交互,而SWE-Train将验证后的实例重构为直接的指令-响应格式,即Prompt→Answer,从而兼容标准的监督微调(SFT)流程。这种设计简化了数据使用范式,使研究者能直接利用序列到序列或指令调优框架进行训练。
使用方法
适用场景包括监督微调,让模型直接从原始错误报告生成精确的Git补丁或结构性修复;偏好对齐(如RLHF/DPO),可训练奖励模型或直接偏好优化以评估生成的代码编辑;还可作为静态评估基线,测试模型在不依赖交互式代理步骤时的代码解决能力。但需注意,单轮生成的静态上下文缺乏实时执行环境与单元测试支持,且数据集主要限于Python代码库。
背景与挑战
背景概述
近年来,大语言模型在软件工程领域的应用取得了显著进展,然而现有基准测试通常依赖复杂的多步代理框架与环境交互,难以直接适配标准的监督微调流程。在此背景下,SWE-Train数据集于2024年由Carlos E. Jimenez、John Yang等研究人员基于SWE-bench Verified精心构建,旨在为仓库级别的软件工程任务提供简洁直接的指令-回答格式训练数据。该数据集源自经人类工程师验证的高质量实例,覆盖matplotlib、sympy、scikit-learn等主流开源Python项目中的真实代码缺陷问题。自发布以来,SWE-Train为语言模型在代码修复与补丁生成方面的微调研究提供了标准化资源,并在超级vised Fine-Tuning与偏好对齐等领域产生了深远影响,推动了从交互式评估向静态指令学习的范式转变。
当前挑战
SWE-Train数据集面临多重挑战。首先,在领域层面,其核心任务是解决仓库级别的代码缺陷修复,要求模型从原始错误报告中准确理解复杂代码结构并生成精确的git补丁,这远超传统代码生成或翻译任务的难度,模型需具备跨文件依赖识别与逻辑推理能力。其次,构建过程中,原始SWE-bench Verified实例虽经人工验证,但将多步交互任务转化为静态指令-回答对时,面临上下文丢失与单轮生成限制,导致模型无法利用运行时环境反馈进行动态修正。此外,数据集的Python专属范围限制了跨语言泛化性,且静态补丁生成易受代码风格与重构模式差异影响,难以覆盖实际开发中的多样修复策略。
常用场景
经典使用场景
SWE-Train数据集的核心经典应用在于对大型语言模型进行仓库级别的软件工程任务监督微调。它将经过人工验证的SWE-bench实例重构为直接的指令-回答对形式,使得研究者能够利用标准的序列到序列训练或指令微调流程,教会模型直接从原始错误报告中生成精确的git补丁或结构化文件修正内容。这一范式绕过了传统多步骤智能体交互框架的复杂性,为软件工程领域的模型训练提供了高效且规范的基准数据。
解决学术问题
该数据集直面当前代码生成模型在真实代码库层面能力不足的学术困境,特别解决了两个关键问题:其一,提供了经过人类工程师严格验证的高质量标注样本,消除了以往数据集中上下文缺失或测试不完整带来的噪声干扰;其二,将多步骤交互式评估简化为单一回合的生成任务,使得研究者能够更聚焦于模型本身的理解与修复能力。其意义在于为软件工程领域的模型评估确立了可重复、可比较的静态标准,推动了从代碼补全向复杂缺陷修复的研究跨越。
实际应用
在实际工程应用中,SWE-Train训练出的模型可直接部署于代码审查流水线,自动根据缺陷报告生成建议的修复补丁,显著降低开发者在维护大型开源项目时的人力成本。这类模型还可整合进持续集成/持续交付系统,在代码提交阶段快速识别潜在的回归缺陷并提供修改方案。此外,在代码教学与培训场景中,模型能够依据学生提交的错误描述给出标准修正范例,辅助新手工程师理解复杂代码库的维护模式。
数据集最近研究
最新研究方向
SWE-Train数据集将SWE-bench Verified中经过人工验证的高质量代码仓库级软件工程实例重构为直接的指令-回答对,开辟了大语言模型在真实GitHub缺陷修复场景中监督微调的新路径。该数据集摒弃了传统多智能体框架复杂的交互流程,使模型能够直接从原始bug报告生成精准的git补丁或结构性修复。近期前沿方向聚焦于结合强化学习与偏好对齐技术,利用该静态基准训练奖励模型或直接偏好优化策略,以提升模型对代码编辑优劣的判别力。这一方向不仅降低了软件工程自动化中大型代码库修复的门槛,还推动了LLM在真实世界代码维护任务中的实用化进程,对提升开源项目维护效率和代码质量具有深远影响。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务