Multi-SWE-bench – 推动 AI 编程向全栈工程迈进的多语言代码修复基准

Multi-SWE-bench 简介

Multi-SWE-bench 是字节跳动豆包大模型团队于 2025 年 4 月 10 日正式开源的首个多语言代码修复基准数据集。它在 SWE-bench 基础上,首次覆盖 Python 之外的 Java、TypeScript、JavaScript、Go、Rust、C 和 C++ 等 7 种主流编程语言,是真正面向 “全栈工程” 的评测基准。其数据均来自 GitHub issue,历时近一年构建,包含 1632 个经过严格验证的真实问题样本,旨在补全现有同类基准语言覆盖方面的不足,系统性评估大模型在复杂开发环境下的 “多语言泛化能力”,推动多语言软件开发 Agent 的评估与研究。

核心功能

  • 多语言代码修复评估 :全面覆盖多种主流编程语言,可有效评估大模型在不同语言环境下的自动代码修复能力,为模型的跨语言泛化能力提供测试依据。
  • 任务难度分级 :将问题划分为简单、中等和困难三类,涵盖从一行修改到多文件、多步骤、多语义依赖的开发挑战,能更系统地衡量大模型在不同能力层次上的表现,帮助研究人员更精准地了解模型的优势和局限性。
  • 真实数据支持 :所有实例均来源于真实的开源仓库,经过统一的测试标准和专业开发者的审核筛选,每个样本都具备清晰的问题描述、正确的修复补丁以及可复现的运行测试环境,确保了数据集的质量和实用性,为模型评估提供了可靠的依据。

技术原理

  • 数据来源与质量控制 :采用五阶段数据构建流程,包括开源仓库筛选、Pull Request 爬取、Docker 环境构建、PR 过滤和验证以及人工验证。从多个维度筛选高质量的项目仓库,收集与问题相关的拉取请求并提取关键信息,为每个请求构建对应的 Docker 容器以确保任务的可运行性,通过多种状态的测试流程识别有效的修复行为,并引入人工双重标注流程,保证数据的可靠性和准确性。
  • 强化学习支持 :开源了 Multi-SWE-RL,提供 4723 个结构化的训练样本,每个样本均配备可复现的 Docker 环境,支持一键启动、自动评估和快速接入 RL 训练框架,形成 “评估 + 训练” 的双轮驱动模式,助力大模型的持续优化。

支持平台

Multi-SWE-bench 支持多种主流编程语言,包括 Java、TypeScript、JavaScript、Go、Rust、C 和 C++ 等,适用于多种开发环境和应用场景,为开发者和研究人员提供了一个广泛的测试和研究平台。

团队介绍

Multi-SWE-bench 由字节跳动豆包大模型团队开发和维护。该团队在人工智能领域具有深厚的技术积累和丰富的实践经验,致力于推动大模型在代码生成、修复等任务中的应用和发展,其研发的豆包大模型在多个领域都取得了显著的成果。

项目资源

业务场景

  • 代码修复自动化 :开发者可利用基于 Multi-SWE-bench 训练的模型自动识别和修复代码中的 Bug,提高代码质量,减少人工调试的时间和工作量,提升开发效率。
  • 模型性能评估与提升 :为大模型提供了一个系统性的评测基准,帮助开发者和研究人员评估模型在不同编程语言和任务难度下的表现,进而针对性地对模型进行优化和改进,提升模型的性能和泛化能力。
  • 编程语言比较研究 :通过对比不同编程语言下的 Bug 修复能力,研究人员可以更深入地分析各语言的优势和局限性,为编程语言的选择和设计提供参考。
  • 智能学习与教育 :对于开发者和学习者而言,Multi-SWE-bench 是一个学习和提升的平台。通过研究和使用该数据集,开发者可以更好地理解不同编程语言中的常见错误和修复方法,从而提升自身的编程能力和问题解决能力。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注