evalscopedata
收藏资源简介:
## Contents (26 Benchmarks) | 类别 | Benchmark | 数据量 | 预计时间 | 特殊要求 | |------|-----------|--------|----------|----------| | **知识与语言理解** | ARC | 1,000+ | ~0.1h | 无 | | | BBH | 1,000+ | ~0.2h | 无 | | | DROP | 1,000+ | ~0.2h | 无 | | | GPQA Diamond | 198 | ~1.4h | 无 | | | HLE | 100+ | ~0.5h | 无 | | | MMLU | 1,000+ | ~0.2h | 无 | | | MMLU-Pro | 1,000+ | ~0.3h | 无 | | | Super GPQA | 400+ | ~0.8h | 无 | | | Winogrande | 1,000+ | ~0.1h | 无 | | | TriviaQA | 1,000+ | ~0.3h | 无 | | | SimpleQA | 100+ | ~0.1h | 无 | | | CMMLU | 1,000+ | ~0.2h | 无 | | **推理/数学** | AIME24 | 30 | ~0.15h | 无 | | | AIME25 | 30 | ~0.34h | 无 | | | AIME26 | 30 | ~0.14h | 无 | | | Competition Math | 1,000+ | ~0.5h | 无 | | | GSM8K | 1,000+ | ~0.2h | 无 | | | IMO AnswerBench | 120 | ~1.3h | 无 | | | HMMT26 | 30 | ~0.6h | 无 | | **代码/工程** | LiveCodeBench | 100 | ~0.2h | 无 | | | BigCodeBench | 100 | ~0.3h | 无 | | | HumanEval | 164 | ~0.1h | 无 | | | Terminal Bench v2 | 3 | ~2h+ | Docker 镜像 | | **长上下文** | LongBench-v2 | 400+ | ~2h | 长文本截断 | | | OpenAI MRCR | 400 | ~2h | 长文本截断 | | **智能体/工具** | BrowseComp | 3 | ~0.5h | 搜索工具配置 | | | Tau2 Bench | 30 | ~1h | 用户模拟器 | | **SWE-bench** | SWE-bench Pro | 500 | ~24h+ | 每样本 Docker | | | SWE-bench Verified | 500 | ~24h+ | 每样本 Docker | | | SWE-bench Multilingual | 500 | ~24h+ | 每样本 Docker | --- ## Quick Start ### 1. 下载数据集 由于不同 benchmark 的数据 schema 不同,**不能直接用 `MsDataset.load()` 一次性加载所有数据**(会报 `CastError: column names don't match`)。 推荐用 **`snapshot_download`** 直接下载所有缓存文件,然后让 evalscope 按 benchmark 独立读取。 ```bash # Install modelscope pip install modelscope # Login modelscope login --token your-token # 下载整个数据集目录 python -c " from modelscope.hub.snapshot_download import snapshot_download snapshot_download( 'SoraAmami/evalscopedata', repo_type='dataset', cache_dir='/your/data/path', local_dir='/your/data/path/evalscope_datasets' ) " ``` 下载后目录结构: ``` /your/data/path/evalscope_datasets/ ├── datasets/ │ ├── evalscope_aime24-*/ │ ├── evalscope_aime25-*/ │ ├── evalscope_gsm8k-*/ │ └── ... └── README.md ``` evalscope 运行时指向: ```bash --dataset-dir /your/data/path/evalscope_datasets/datasets ``` ### 2. 下载 Docker 镜像 ```bash # Download Docker tar from ModelScope python -c " from modelscope.hub.file_download import model_file_download model_file_download( model_id='SoraAmami/evalscope-docker', file_path='evalscope-complete-py312.tar', local_dir='/your/docker/path' ) " # Load Docker image docker load -i /your/docker/path/evalscope-complete-py312.tar # Verify docker images | grep evalscope-complete-py312 ``` ### 3. 运行 evalscope `run_1.py` 支持以下参数: | 参数 | 说明 | 默认值 | |------|------|--------| | `--model` | 模型名称 | `DeepSeek-V4-Flash-INT8` | | `--api-url` | 模型服务 API 地址 | `http://localhost:30000/v1` | | `--dataset-dir` | 数据集目录 | `./datasets` | | `--output-dir` | 输出目录 | `./output` | | `--limit` | 每个子任务最多跑几条 | `2`(传 `none` 或 `all` 表示不限制) | #### 方式一:直接运行(本地环境已安装) ```bash cd /path/to/evalscope # 跑完整数据(不限制 limit) python bash/run_1.py \ --model DeepSeek-V4-Flash-INT8 \ --api-url http://localhost:30000/v1 \ --dataset-dir /path/to/downloaded/datasets \ --output-dir /path/to/output \ --limit none # 只跑 2 条快速测试 python bash/run_1.py \ --model DeepSeek-V4-Flash-INT8 \ --api-url http://localhost:30000/v1 \ --dataset-dir /path/to/downloaded/datasets \ --output-dir /path/to/output \ --limit 2 ``` #### 方式二:Docker 运行(推荐,环境隔离) ```bash # 启动容器 docker run -it --rm \ --gpus all \ -v /path/to/datasets:/data/datasets \ -v /path/to/output:/data/output \ -v /var/run/docker.sock:/var/run/docker.sock \ -e MODEL_API_URL=http://host.docker.internal:30000/v1 \ -e MODEL_NAME=DeepSeek-V4-Flash-INT8 \ evalscope-complete-py312:latest \ bash -c "cd /data/evalscope && python bash/run_1.py --dataset-dir /data/datasets --limit none" ``` ### 4. 输出文件路径 所有输出默认保存在 `--output-dir` 下(默认 `./output`)。 #### 输出目录结构 ``` output/ ├── {benchmark_name}/ │ ├── seed_{seed}/ # 多 seed 时每个 seed 独立目录 │ │ ├── reports/ │ │ │ └── {model_name}/ │ │ │ └── {benchmark_name}.json # 评测结果(分数、指标) │ │ ├── predictions.jsonl # 模型预测结果 │ │ ├── perf_stats.json # 性能统计(TTFT、TPOT 等) │ │ └── *_metrics.json # 其他指标 │ └── ... (single-seed 只有 seed_42 一层) ``` #### 各 benchmark 输出示例 ``` output/ ├── aime24/ │ ├── seed_42/ │ │ ├── reports/DeepSeek-V4-Flash-Int8/aime24.json │ │ └── predictions.jsonl │ ├── seed_1/ │ │ ├── reports/DeepSeek-V4-Flash-Int8/aime24.json │ │ └── predictions.jsonl │ └── ... ├── gsm8k/ │ └── seed_42/ │ ├── reports/DeepSeek-V4-Flash-Int8/gsm8k.json │ └── predictions.jsonl ├── longbench_v2/ │ └── seed_42/ │ ├── reports/DeepSeek-V4-Flash-Int8/longbench_v2.json │ └── predictions.jsonl └── tau2_bench/ └── seed_42/ ├── reports/DeepSeek-V4-Flash-Int8/tau2_bench.json └── predictions.jsonl ``` #### 关于 `--limit` - `--limit 2`:每个子任务只跑 2 条,用于快速验证流程是否正确 - `--limit none` 或 `--limit all`:跑完整数据(数据量见上表) - **注意**:`run_1.py` 对一些小数据集会跑多个 seed(如 aime24 跑 17 个 seed),每个 seed 内部再用 `limit` 限制。传 `--limit none` 时,每个 seed 都会跑完整数据量。 #### 如何查看结果 ```bash # 查看单个 benchmark 结果 cat output/aime24/seed_42/reports/DeepSeek-V4-Flash-Int8/aime24.json # 查看所有 benchmark 的分数 python -c " import json, glob for f in sorted(glob.glob('output/*/seed_42/reports/*/*.json')): data = json.load(open(f)) print(f, data.get('score', data.get('mean_acc', 'N/A'))) " ``` --- ## Complete Experiment Workflow ### 前置准备 1. **模型服务**:确保模型服务已启动(如 sglang) ```bash # 示例:启动 sglang 服务 bash /data1/restart_model_service.sh ``` 2. **Judge 模型**(用于 Tau2 Bench): - 配置 `deepseek-v4-pro` API - 或本地部署 judge 模型 3. **搜索工具**(用于 BrowseComp): - 配置 DuckDuckGo MCP 工具 - 或配置其他搜索 API ### 实验分组(3台机器) | 机器 | Benchmark | 预计时间 | |------|-----------|----------| | **机器1** | 知识与语言理解 (12个) | ~6h | | **机器2** | 推理/数学 (7个) + 代码/工程 (3个) | ~8h | | **机器3** | 长上下文 (2个) + 智能体 (2个) + SWE-bench (3个) | ~48h+ | ### 运行脚本 **机器1 - 知识与语言理解**: ```bash python bash/run_1.py \ --datasets arc,bbh,drop,gpqa_diamond,hle,mmlu,mmlu_pro,super_gpqa,winogrande,trivia_qa,simple_qa,cmmlu \ --limit none ``` **机器2 - 推理与代码**: ```bash python bash/run_1.py \ --datasets aime24,aime25,aime26,competition_math,gsm8k,imo_answerbench,hmmt26,live_code_bench,bigcodebench,humaneval \ --limit none ``` **机器3 - 长上下文与智能体**: ```bash # 长上下文 python bash/run_1.py \ --datasets longbench_v2,openai_mrcr \ --limit none # 智能体(需配置搜索工具) python bash/run_1.py \ --datasets browsecomp,tau2_bench \ --limit none # SWE-bench(每样本独立 Docker) python bash/run_swe_bench.py \ --datasets swe_bench_pro,swe_bench_verified,swe_bench_multilingual_agentic \ --limit 3 ``` ### 结果收集 所有结果保存在 `output/` 目录: ``` output/ ├── {benchmark_name}/ │ ├── reports/ │ │ └── {model_name}/ │ │ └── {benchmark_name}.json # 评测结果 │ └── predictions.jsonl # 模型预测 ``` ### 生成评测报告 ```bash python scripts/generate_report.py \ --output-dir output \ --model-name DeepSeek-V4-Flash-INT8 \ --output-xlsx P800模型能力评测结果.xlsx ``` --- ## Dataset Structure ``` datasets/ ├── AI-ModelScope_DROP-*/ ├── AI-ModelScope_gpqa_diamond-*/ ├── evalscope_aime24-*/ ├── evalscope_aime25-*/ ├── evalscope_aime26-*/ ├── evalscope_bbh-*/ ├── evalscope_bigcodebench-*/ ├── evalscope_browse_comp-*/ ├── evalscope_cmmlu-*/ ├── evalscope_competition_math-*/ ├── evalscope_hellaswag-*/ ├── evalscope_hmmt_feb_2026-*/ ├── evalscope_human_eval-*/ ├── evalscope_imo-answerbench-*/ ├── evalscope_livecodebench_code_generation_lite_parquet-*/ ├── evalscope_SimpleQA-*/ ├── evalscope_trivia_qa-*/ ├── AI-ModelScope_gsm8k-*/ ├── cais_hle-*/ ├── cais_mmlu-*/ ├── allenai_ai2_arc-*/ ├── AI-ModelScope_winogrande_val-*/ ├── m-a-p_SuperGPQA-*/ ├── openai-mirror_mrcr-*/ ├── opencompass_humaneval-*/ ├── princeton-nlp_SWE-bench_Verified-*/ ├── ScaleAI_MCP-Atlas-*/ ├── ScaleAI_SWE-bench_Pro-*/ ├── SWE-bench_SWE-bench_Multilingual-*/ ├── TIGER-Lab_MMLU-Pro-*/ └── ZhipuAI_LongBench-v2-*/ ``` Each subdirectory contains cached HuggingFace Datasets files (Arrow format). --- ## Docker Image Contents ``` evalscope-complete-py312:latest ├── Python 3.12 ├── evalscope (with all dependencies) ├── tau2-bench (installed from /data1/sora/evalscope/tau2-bench) ├── transformers, torch, datasets ├── modelscope CLI └── Docker CLI (for nested Docker - SWE-bench) ``` ### 使用 Docker 的注意事项 1. **GPU 支持**:需要 `--gpus all` 参数 2. **Docker Socket**:需要 `-v /var/run/docker.sock:/var/run/docker.sock` 用于 SWE-bench 3. **数据集挂载**:将下载的数据集挂载到容器内 4. **模型服务**:如果模型服务在宿主机,使用 `host.docker.internal` 或 `--network host` --- ## Size | 资源 | 大小 | |------|------| | 数据集 | ~7.7 GB (330 files) | | Docker 镜像 | ~688 MB (tar.gz) | | 解压后 Docker 镜像 | ~3.07 GB | --- ## Notes - These are **cached datasets** to avoid repeated downloads during evaluation. - Each benchmark loads its own cache files independently; you do not need to load all datasets at once. - For benchmarks requiring Docker (e.g., SWE-bench, Terminal Bench v2), Docker images are **not included** and need to be pulled separately. - For agent benchmarks requiring web search tools (e.g., BrowseComp), external MCP tools need to be configured separately. --- ## License Original datasets retain their respective licenses. This repository only provides cached copies and Docker environment for convenience.



