开发与工程 issue-resolutionbenchmarkingdockerpatch-evaluationmultilingual-codereinforcement-learning-datasets

Multi-SWE-bench

用 Docker 验证多语言代码修复补丁的议题解决基准。

FollowAgents 评估 · FARS-2.1
不推荐
46/ 100 五分制 2.3 / 5
1 2 3 4 5 6
按维度查看评分与理由
1信任安全0 / 29 · 0.0/5

证据显示这是一个基准测试框架,不涉及权限管理、用户确认、数据流透明性或敏感数据处理。没有提供安全审计或依赖漏洞扫描的证据。外部影响主要是运行Docker容器,但未说明权限控制或回滚机制。来源归属明确为ByteDance Seed团队,但发布者未经验证。因此,所有信任标准得分为0。

2可靠稳定9 / 14 · 3.2/5

自洽性:README中的描述与配置示例一致,但未提供代码级验证。依赖可用性:依赖Docker和Hugging Face数据集,这些是公开可用的,但未提供版本锁定或镜像校验。失败消息:配置中提供了日志目录和错误处理选项,但未提供详细的错误消息示例。因此,自洽性得2分,依赖可用性得2分,失败消息得2分。

3适用触发12 / 18 · 3.3/5

受众和场景:明确面向研究者和开发者,用于评估LLM在代码问题解决上的表现。能力边界:描述了评估框架的功能,但未明确限制。触发精度:提供了详细的配置参数,但未说明触发条件。环境适配:需要Docker,提供了安装指南,但未说明其他环境要求。因此,各得2分。

4规范维护11 / 18 · 3.1/5

信息架构:README结构清晰,包含安装、评估、配置等章节。安装说明:提供了make install和make install-dev。命名稳定性:项目名称和命令稳定。示例和FAQ:提供了配置示例,但无FAQ。已知限制:未明确列出。许可证:Apache-2.0,完整LICENSE文件。版本和变更日志:有新闻更新,但无正式变更日志。维护责任:明确为ByteDance Seed团队。因此,信息架构、安装说明、命名稳定性、示例和FAQ、维护责任得2分,已知限制得1分,许可证得3分,版本和变更日志得1分。

5有效结果9 / 13 · 3.5/5

输出可用性:评估生成final_report.json,提供结果摘要。边际价值:填补了多语言基准的空白,具有研究价值。成本效益:需要Docker和计算资源,但提供了mini版本以降低成本。因此,各得2分。

6证据核验5 / 8 · 3.1/5

声明可追溯性:README引用了arXiv论文和Hugging Face数据集,但未提供代码级验证。跨来源佐证:提供了多个外部链接(arXiv、Hugging Face、Discord),但未提供独立验证。事实与推断分离:README区分了事实(如数据集规模)和推断(如“加速AGI”),但未明确标注。因此,各得2分。

证据充分度: 评估于 2026年8月9日 审查版本 24f493f8a103
源码中未见的安全控制:最小权限约束、执行前用户确认、数据流向说明、敏感信息处理、依赖安全审查、外部影响披露、回滚或恢复路径、来源归属可核验
使用前请注意
  • 发布者身份未经验证,应视为未知。
  • 未提供安全审计或依赖漏洞扫描的证据。
  • 运行Docker容器可能带来外部影响,但未说明权限控制或回滚机制。
  • 未明确列出已知限制。
  • 未提供正式变更日志。
评估证据 [1][2]
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

Multi-SWE-bench 是面向真实代码议题修复的多语言评测项目,而不是生成补丁的编程代理。其基准覆盖 Java、TypeScript、JavaScript、Go、Rust、C 和 C++,README 声明完整版包含 1,632 个经专家标注筛选的实例。评测入口为 `python -m multi_swe_bench.harness.run_evaluation --config /path/to/your/config.json`,输入是候选修复补丁 JSONL 与数据集 JSONL。运行时使用 Docker 构建或复用实例镜像,并在指定目录写出 `final_report.json` 与日志。项目还关联 Multi-SWE-RL 数据集及 mini、flash 等评测集合,适合需要衡量自动修复系统跨语言表现的团队。

使用者先准备 JSONL 补丁文件;每条记录包含 orgreponumberfix_patch。再提供来自 Multi-SWE-bench 或 Multi-SWE-RL 的数据集 JSONL,并在配置中设置 workdiroutput_dirrepo_dir、并发数和日志目录等字段。multi_swe_bench.harness.run_evaluation 按配置执行 evaluationinstanceinstance_onlyimage 模式;缺少镜像时会在评测过程中构建镜像,也可用 scripts/download_images.shscripts/download_images.ps1 预下载。执行完成后在 output_dir 生成汇总结果 final_report.json,其中包括 resolved_instancesunresolved_instances 等指标,失败详情可从 log_dir 中查看。

  1. 研发团队为内部代码修复系统准备多个候选 fix_patch,需要在 Java、Go、Rust、C/C++ 等任务上统一验收时。
  2. 研究人员比较不同模型或修复框架的议题解决结果,并希望将每次运行保存在可复现的 Docker 环境中时。
  3. 负责评测流水线的工程师需要只运行指定 PR ID,或通过 skips 排除已知不应执行的实例时。
  4. 构建强化学习软件工程数据的贡献者需要参考 Multi-SWE-RL 社区提供的快速开始和贡献演示时。
  5. 计算资源有限的团队想采用 README 所列的 400 实例 mini 集合或 300 实例 flash 集合进行较快评测时。

这个 Agent 有哪些优点和局限?

优点
  • 明确覆盖七种非 Python 为主的编程语言,适合补足 Python 中心的修复评测。
  • 评测直接接收包含 fix_patch 的 JSONL,可将现有修复系统的产物接入而无需采用特定代理框架。
  • Docker 镜像支持预下载或按需构建,并提供构建和实例运行的独立并发配置。
  • 结果同时提供 final_report.json 汇总和日志目录,便于定位未解决实例与错误原因。
局限
  • 运行依赖 Docker,并且缺失镜像时会在评测期间构建,环境准备和执行时间可能成为采用成本。
  • 使用者必须自行提供候选补丁 JSONL 和数据集 JSONL;README 未说明可直接调用的在线评测服务。
  • 补丁应用可能失败;README 专门给出以 patch --batch --fuzz=5 替代 git apply 的兼容性配置。
  • README 展示的是评测命令和配置,而非用于生成修复补丁的内置代理接口。

如何安装或部署这个 Agent?

前提是已安装 Docker;README 未列出 API 密钥或其他凭据要求。执行:

git clone [email protected]:multi-swe-bench/multi-swe-bench.git
cd multi-swe-bench
make install

开发环境可执行 make install-dev。如需预拉取镜像,在 Linux/macOS 上执行 bash scripts/download_images.sh scripts/images_mini.txtscripts/images_verified.txtscripts/images_rl.txt;Windows 使用对应的 scripts/download_images.ps1

如何使用这个 Agent?

创建配置 JSON,至少填入 patch_filesdataset_filesworkdiroutput_dirrepo_dirlog_dir 等路径;补丁文件记录必须含 orgreponumberfix_patch。然后运行:

python -m multi_swe_bench.harness.run_evaluation --config /path/to/your/config.json

默认配置示例使用 "mode": "evaluation"。完成后读取 output_dir/final_report.json;若补丁应用失败且适用,可在配置中加入 README 给出的 fix_patch_run_cmd,以 patch --batch 替换默认的 git apply

这个 Agent 与同类方案有什么区别?

README 将其定位为区别于以 Python 为中心的 SWE-bench 的多语言议题修复基准,并说明项目参考并构建于 SWE-bench 的工作之上。

常见问题

它会自动为我生成代码修复吗?
README 记录的流程是评测已有的 fix_patch:输入候选补丁与数据集,运行 harness 并输出解决情况;未记录内置补丁生成接口。
运行一次需要什么凭据?
README 未列出 API 密钥、模型密钥或账户凭据。它明确要求 Docker;克隆仓库、获取数据集或下载镜像会涉及网络访问。
补丁不能用 git apply 应用时怎么办?
可以在配置中设置 fix_patch_run_cmd,按 README 示例改用 patch --batch --fuzz=5 应用 /home/test.patch/home/fix.patch
如何缩小评测范围或控制资源?
可用 specifics 指定 PR ID、用 skips 排除实例,并通过 max_workersmax_workers_build_imagemax_workers_run_instance 调整并发。

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents