news 2026/6/12 17:08:28

【模型评测】SWE-bench Verified数据集-1-配置评测任务

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【模型评测】SWE-bench Verified数据集-1-配置评测任务

mini-swe-agent 运行 SWE-bench-verified 操作指南

1. 安装

# 进入项目目录cd/{path}/mini-swe-agent# 安装(开发模式)pipinstall-e.

安装后会得到两个 CLI 命令:mini(交互式)和mini-extra(批量评测等工具)。


2. 核心命令

跑 SWE-bench-verified 的核心命令是mini-extra swebench

mini-extra swebench\--subsetverified\--splitdev\--slice"0:5"\-manthropic/claude-opus-4-6-20260205\-cswebench.yaml\-o./results_verified

参数说明

参数说明
--subset verified指定 SWE-bench-verified 数据集(对应 HuggingFace 上的princeton-nlp/SWE-Bench_Verified
--split dev数据集 split,默认dev
--slice "0:5"只跑前 5 条 instance(用于快速测试);去掉则跑全部
-m/--model模型名称,支持 litellm 的所有后端(Anthropic、OpenAI、OpenRouter 等)
-c/--config配置文件,默认swebench.yaml
-o/--output输出目录,存放preds.json、轨迹文件和日志
-w/--workers并行 worker 数量(默认单线程)
--filter正则过滤 instance ID
--redo-existing覆盖已有结果重新跑

3. 单条 Instance 调试

如果只想跑某一条 instance 调试:

mini-extra swebench-single<instance-id>\-manthropic/claude-opus-4-6-20260205\-cswebench.yaml

单条模式参数说明

参数说明
-i/--instanceinstance ID 或索引数字
-y/--yolo无需确认,自动执行
--exit-immediatelyagent 想结束时直接退出,不弹确认提示
-l/--cost-limit成本限制(美元),设为 0 表示不限制
-o/--output轨迹输出文件路径

4. 批量运行 SWE-bench-verified

小批量测试(推荐先跑几条验证流程)

mini-extra swebench\--subsetverified\--splitdev\--slice"0:3"\-manthropic/claude-sonnet-4-5-20250929\-cswebench.yaml\-o./results_verified_test\-w1

全量运行

mini-extra swebench\--subsetverified\--splitdev\-manthropic/claude-sonnet-4-5-20250929\-cswebench.yaml\-o./results_verified_full\-w4

只跑特定项目(如 django)

mini-extra swebench\--subsetverified\--filter"^django__"\-manthropic/claude-sonnet-4-5-20250929\-cswebench.yaml\-o./results_verified_django\-w4

5. 输出结果结构

运行结束后,输出目录结构如下:

results_verified/ ├── preds.json # SWE-bench 标准格式的预测结果 │ # 可直接用于官方评测脚本 ├── exit_statuses_1234567890.yaml # 各 instance 的退出状态 ├── minisweagent.log # 完整运行日志 └── django__django-11011/ # 每个 instance 一个目录 └── django__django-11011.traj.json # 完整交互轨迹

preds.json 格式

{"django__django-11011":{"model_name_or_path":"anthropic/claude-sonnet-4-5-20250929","instance_id":"django__django-11011","model_patch":"diff --git a/django/... ..."},...}

6. 使用官方 SWE-bench 评测

得到preds.json后,用 SWE-bench 官方工具评测:

# 安装 swe-bench 评测工具pipinstallswebench# 运行评测python-mswebench.harness.run_evaluation\--dataset_nameprinceton-nlp/SWE-Bench_Verified\--predictions_path./results_verified/preds.json\--max_workers4\--run_idverified_eval

7. 完整实操流程总结

# Step 1: 进入项目目录并安装cd/{path}/3rd/mini-swe-agent pipinstall-e.# Step 2: 设置 API KeyexportANTHROPIC_API_KEY="sk-..."# Step 3: 单条调试(验证流程是否正常)mini-extra swebench-single\--subsetverified\--instance0\-manthropic/claude-sonnet-4-5-20250929\-cswebench.yaml\-y\--exit-immediately# Step 4: 小批量测试(跑5条看看效果)mini-extra swebench\--subsetverified\--slice"0:5"\-manthropic/claude-sonnet-4-5-20250929\-cswebench.yaml\-o./results_verified_5\-w1# Step 5: 全量运行mini-extra swebench\--subsetverified\-manthropic/claude-sonnet-4-5-20250929\-cswebench.yaml\-o./results_verified_full\-w4# Step 6: 官方评测python-mswebench.harness.run_evaluation\--dataset_nameprinceton-nlp/SWE-Bench_Verified\--predictions_path./results_verified_full/preds.json\--max_workers4

8. 常见问题

问题解决
Docker 镜像拉取失败确保已安装 Docker,或改用--environment-class singularity
API 调用超时/失败检查 API Key,或调整model_kwargs中的参数
想换模型修改-m参数,支持 litellm 的所有模型格式(如openai/gpt-4o
想修改 system prompt复制swebench.yaml,修改system_template,用-c指定新配置

9. 离线使用方法

9.1 为什么需要联网

完整流程中以下步骤需要网络连接:

Agent 运行阶段(mini-extra swebench

  • 从 HuggingFace 下载 SWE-bench 数据集
  • 拉取 SWE-bench Docker 镜像
  • 调用大模型 API

评测阶段(swebench.harness.run_evaluation

  • 拉取 Docker 评测镜像
  • 容器内安装依赖(部分需要从 PyPI 下载)

9.2 离线替代方案

如果你处于离线环境,可以预先拉取镜像:

# 1. 先在有网环境列出所有需要的镜像python-c" from datasets import load_dataset ds = load_dataset('princeton-nlp/SWE-Bench_Verified', split='dev') for inst in ds: iid = inst['instance_id'].replace('__', '_1776_') print(f'docker.io/swebench/sweb.eval.x86_64.{iid}:latest'.lower()) ">images.txt# 2. 批量拉取catimages.txt|xargs-I{}dockerpull{}# 3. 保存镜像(可选,用于迁移到离线机器)dockersave$(catimages.txt|tr'\n'' ')-oswebench_images.tar

然后在离线机器上:

# 加载镜像dockerload-iswebench_images.tar

9.3 简化验证(不跑完整测试)

如果只是想验证 agent 生成的 patch 格式正确,不跑完整 SWE-bench 评测:

# 本地验证 preds.json 格式是否正确python-c" import json with open('./results_verified_full/preds.json') as f: preds = json.load(f) print(f'共生成 {len(preds)} 个 patch') for k, v in list(preds.items())[:3]: print(f'{k}: patch长度={len(v[\"model_patch\"])}') "

注意:这不能替代官方评测,官方评测是唯一准确判断 patch 是否正确修复了 issue 的方式。


10. 数据集映射

mini-extra swebench支持的数据集 subset 名称:

Subset nameDataset
fullprinceton-nlp/SWE-Bench
verifiedprinceton-nlp/SWE-Bench_Verified
liteprinceton-nlp/SWE-Bench_Lite
multimodalprinceton-nlp/SWE-Bench_Multimodal
multilingualswe-bench/SWE-Bench_Multilingual
smithSWE-bench/SWE-smith
rebenchnebius/SWE-rebench
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/12 17:04:52

5分钟掌握ASMR下载神器:asmr-downloader完全使用指南

5分钟掌握ASMR下载神器&#xff1a;asmr-downloader完全使用指南 【免费下载链接】asmr-downloader A tool for download asmr media from asmr.one(Thanks for the asmr.one) 项目地址: https://gitcode.com/gh_mirrors/as/asmr-downloader 还在为寻找高品质ASMR音频资…

作者头像 李华
网站建设 2026/6/12 17:03:52

2026大厂抢人!小白也能抓住Agent风口,高薪就业+收藏必备!

Agent和大模型是2026年技术圈最热门方向&#xff0c;大厂招聘和春招都围绕此展开。虽然高薪诱人&#xff0c;但能胜任岗位者少。 放眼2026技术圈&#xff0c;Agent 绝对是当下最热门的方向。不管是大厂的技术动向&#xff0c;还是春招新增的岗位&#xff0c;核心都围绕着 Agent…

作者头像 李华
网站建设 2026/6/12 17:02:50

CFR Java反编译引擎深度解析:从字节码到可读源码的技术实现

CFR Java反编译引擎深度解析&#xff1a;从字节码到可读源码的技术实现 【免费下载链接】cfr This is the public repository for the CFR Java decompiler 项目地址: https://gitcode.com/gh_mirrors/cf/cfr 在Java开发领域&#xff0c;字节码反编译是一项至关重要的技…

作者头像 李华
网站建设 2026/6/12 16:55:51

神经符号推理与主动学习在知识图谱问答中的应用

1. 神经符号推理与主动学习的融合框架神经符号推理&#xff08;Neuro-Symbolic Reasoning&#xff09;是近年来人工智能领域的重要突破&#xff0c;它巧妙地将神经网络的强大学习能力与符号系统的精确推理能力相结合。在知识图谱问答&#xff08;KGQA&#xff09;这一典型的多跳…

作者头像 李华