中文

SWE-Flow:以测试驱动方式合成软件工程数据

计算与语言 2025-06-12 v2

摘要

我们提出了 **SWE-Flow**,一个基于测试驱动开发(TDD)的新型数据合成框架。与现有的依赖人工提交问题的软件工程数据不同,**SWE-Flow** 直接从单元测试中自动推断增量开发步骤,而单元测试本身内含高层需求。**SWE-Flow** 的核心是构建运行时依赖图(RDG),该图精确捕获函数交互,从而生成结构化的逐步开发计划。在每个步骤中,**SWE-Flow** 生成一个部分代码库、相应的单元测试以及必要的代码修改,形成完全可验证的 TDD 任务。通过这种方法,我们从真实世界的 GitHub 项目中生成了 16,061 个训练实例和 2,020 个测试实例,构建了 **SWE-Flow-Eval** 基准。实验表明,在此数据集上微调开放模型可显著提升基于 TDD 的编程性能。为促进进一步研究,我们在 GitHub 上发布了所有代码、数据集、模型和 Docker 镜像。

关键词

引用

@article{arxiv.2506.09003,
  title  = {SWE-Flow: Synthesizing Software Engineering Data in a Test-Driven Manner},
  author = {Lei Zhang and Jiaxi Yang and Min Yang and Jian Yang and Mouxiang Chen and Jiajun Zhang and Zeyu Cui and Binyuan Hui and Junyang Lin},
  journal= {arXiv preprint arXiv:2506.09003},
  year   = {2025}
}

备注

Accepted by ICML2025