diff --git a/DOCKER_SOP_BEGINNER.md b/DOCKER_SOP_BEGINNER.md index 418d071..1244bd1 100644 --- a/DOCKER_SOP_BEGINNER.md +++ b/DOCKER_SOP_BEGINNER.md @@ -195,3 +195,82 @@ rm -rf "$EVAL_ROOT/output_smoke" ``` 删除 Docker benchmark 镜像前,必须确认没有其他评测任务使用它们。 + +## 12. Benchmark 与环境矩阵 + +当前 `full` 套件共 28 项: + +| 类型 | 数量 | Benchmark | 环境要求 | +|---|---:|---|---| +| Multi-run | 8 | humaneval、live_code_bench、aime24、aime25、aime26、hmmt26、imo_answerbench、gpqa_diamond | 普通 API;humaneval 另需代码 sandbox | +| Single-run | 18 | bigcodebench、bfcl_v3、competition_math、gsm8k、hle、super_gpqa、arc、bbh、cmmlu、drop、hellaswag、mmlu、mmlu_pro、simple_qa、trivia_qa、winogrande、openai_mrcr、longbench_v2 | 普通 API;bigcodebench 另需代码 sandbox;长文本项目需要 tokenizer | +| Agent | 2 | tau2_bench、general_fc | API、judge API 和工具/Agent 配置 | + +套件数量:`full=28`、`lite=6`、`mid=13`、`k3=9`。`tencent_hunyuan` 已预留入口,具体清单确认后再启用。 + +## 13. 环境构建代码索引 + +仓库中已有以下环境脚本和说明: + +| 环境 | 构建/加载代码 | +|---|---| +| EvalScope 主镜像 | `DOCKER_BUILD.md`、`DOCKER_README.md` | +| BigCodeBench sandbox | 本文第 5 节的 Dockerfile;`Dockerfile.withcode` | +| Humaneval | `bash/run.py` 的 `SANDBOX_CONFIGS`,使用 `python:3.11-slim` | +| SWE-bench 镜像 | `bash/load_swe_images.sh`、`bash/save_swe_images.sh` | +| Terminal Bench | `bash/images_load/preload_terminal_bench_images.sh` | +| Docker 镜像清理 | `bash/cleanup_docker_images.sh` | +| SWE 镜像诊断 | `bash/diagnose_swe_images.py` | + +构建代码 sandbox: + +```bash +cd "$EVAL_ROOT" +docker pull bigcodebench/bigcodebench-evaluate:latest +docker build -t bigcodebench-sandbox:latest -f - . <<'EOF' +FROM bigcodebench/bigcodebench-evaluate:latest +ENTRYPOINT [] +CMD ["tail", "-f", "/dev/null"] +EOF +``` + +加载 SWE-bench 镜像: + +```bash +bash bash/load_swe_images.sh "$EVAL_ROOT/docker/swe_images" +``` + +加载 Terminal Bench 镜像: + +```bash +bash bash/images_load/preload_terminal_bench_images.sh +``` + +## 14. 全量启动与状态检查 + +全量任务会运行 Multi-run 重复次数,预计需要很长时间。建议后台启动: + +```bash +nohup docker run --rm --name evalscope_full \ + --network host \ + -v "$EVAL_ROOT:/opt/evalscope" \ + -v /data1/models:/opt/models:ro \ + -v /var/run/docker.sock:/var/run/docker.sock \ + "$IMAGE" bash -lc ' + cd /opt/evalscope && python3 bash/run.py \ + --model DeepSeek-V4-Flash-INT8 \ + --api-url http://127.0.0.1:30000/v1 \ + --dataset-dir /opt/evalscope \ + --output-dir /opt/evalscope/output_full \ + --tokenizer-path /opt/models/DeepSeek-V4-Flash-INT8 \ + --suite full --limit none --batch-size 4 + ' >/tmp/evalscope_full.log 2>&1 & +``` + +状态检查: + +```bash +docker ps --filter name=evalscope_full +tail -f /tmp/evalscope_full.log +find "$EVAL_ROOT/output_full" -name '*.json' | sort +```