4.9 KiB
4.9 KiB
EvalScope 评测套件(DeepSeek-V4-Flash-INT8 定制版)
本仓库基于 EvalScope 构建,面向 DeepSeek-V4-Flash-INT8(no-thinking / thinking) 模型,提供一键化、可断点续跑、可汇总对比的 benchmark 评测能力。
1. 仓库定位
- 底座:EvalScope 开源评测框架(本地 editable 安装)。
- 目标模型:DeepSeek-V4-Flash-INT8,通过本地 sglang 服务以 OpenAI API 形式调用。
- 核心产出:
- 标准化 benchmark 分数(与 Kimi / GLM / DS 官方对比表对齐)。
- 每个 benchmark 的详细预测、review、报告 JSON。
- 汇总 Excel / CSV,含真实运行时间(active time)统计。
2. 目录结构
/data1/sora/evalscope/
├── bash/ # 评测入口与辅助脚本
│ ├── run.py # 统一评测入口(full/lite/mid/group*/official)
│ ├── collect_results.py # 汇总各 benchmark 分数到 Excel/CSV
│ ├── perf_backup.py # 断点续跑:备份/恢复 predictions 与 perf
│ └── pull_swe_bench_images.py # 预拉 SWE-bench Docker 镜像
├── config/
│ └── dpv4-int8_nothinking.yaml # 各 benchmark 的 temperature / max_tokens 配置
├── tools/docker/ # Docker 镜像构建上下文
│ ├── Dockerfile.py312 # evalscope-complete-py312 镜像定义
│ ├── bash/ # 构建时内置的入口脚本
│ └── evalscope/ # 构建时内置的源码
├── myread.md # 完整使用手册(环境、数据、Docker、参数、结果)
├── DOCKER_BUILD.md # Docker 镜像构建实录
└── results/ # 汇总 Excel / CSV 输出目录
3. 核心能力
3.1 统一入口 bash/run.py
一个脚本跑所有 benchmark:
python bash/run.py \
--model DeepSeek-V4-Flash-Int8 \
--api-url http://localhost:30000/v1 \
--dataset-dir /data1/sora/evalscope \
--output-dir /data1/sora/evalscope/output \
--suite official \
--limit none
支持 suite:
| suite | 说明 |
|---|---|
full |
全部 benchmark + multi-run |
lite |
快速冒烟 |
mid |
较全子集 |
group1/2/3 |
多机组分组 |
official |
腾讯入库标准对比表核心子集 |
3.2 thinking 模式
# 开启 thinking,max_tokens 按倍数放大
python bash/run.py --suite official --thinking --thinking-max-tokens-scale 2.0
# 或在原 max_tokens 基础上再加 token
python bash/run.py --suite official --thinking --max-tokens-add 32768
3.3 输出目录结构
output/
└── {folder_name}/ # 默认 model_name,thinking 时默认 model_name_THINKING
├── {benchmark}/
│ └── seed_{seed}/
│ ├── predictions/
│ ├── reviews/
│ ├── reports/{benchmark}.json
│ └── logs/
└── active_time/ # 真实运行时间累计
results/
└── {folder_name}.xlsx # 汇总表格
3.4 断点续跑
- 通过
perf_backup.py在每次 benchmark 结束后备份 predictions 和 report。 - 再次运行同一 benchmark 时自动恢复,避免重复推理。
- 运行时间通过
active_time/累计,kill 后重启不会把等待时间算进去。
4. 快速开始
4.1 环境(宿主机)
conda create -n evalscope python=3.12 -y
conda activate evalscope
cd /data1/sora/evalscope
pip install -e ./evalscope
4.2 数据
参考 myread.md 第 4 章,从 ModelScope 下载数据集到 datasets/。
4.3 Docker 一键评测
docker load -i docker/evalscope-complete-py312.tar.gz
docker run -it --rm \
--network host \
-v /data1/sora/evalscope:/opt/evalscope \
-v /data1/models:/opt/models \
-v /var/run/docker.sock:/var/run/docker.sock \
evalscope-complete-py312:latest \
bash -c "cd /opt/evalscope && python bash/run.py --suite official --limit none"
5. 主要自定义增强
相较于上游 EvalScope,本仓库额外增加了:
--folder-name:自定义顶层输出文件夹。--thinking/--thinking-max-tokens-scale/--max-tokens-add:支持 thinking 模型评测。officialsuite:对齐腾讯入库标准的 8 个核心 benchmark。active_time机制:更准确地测量 benchmark 真实运行时间。perf_backup.py:支持 kill 后断点续跑。pull_swe_bench_images.py:支持批量预拉 SWE-bench 镜像。
6. 相关文档
- 完整使用手册:
myread.md - Docker 构建实录:
DOCKER_BUILD.md - 上游 EvalScope 文档:https://evalscope.readthedocs.io/
7. 维护者
- 仓库:
git.meta-stone.net/sora/evalstone.git - Docker 镜像:
SoraAmami/evalscope-docker(ModelScope) - 数据集:
SoraAmami/evalscope-datasets(ModelScope)