EvalScope :执行日志解析

概况:

整体概况:本次评测 deepseek-chat(V3),数据集 gsm8k(1题)+competition_math(5题,5个Level各1题),全部答对准确率 100%,总耗时约 32s,自动生成 HTML 报告 + 脚本同级 CSV(代码里自动导出)。

第一段:初始化 & 加载任务配置

plaintext

复制代码
2026-06-05 12:01:04 - evalscope - INFO: Args: Task config is provided with dictionary type.
2026-06-05 12:01:04 - evalscope - INFO: Running with native backend
2026-06-05 12:01:04 - evalscope - INFO: Dump task config to ./outputs\20260605_120104\configs\task_config.yaml
  1. Task config is provided with dictionary type:通过字典传入评测配置(就是代码里task_cfg),不是命令行参数启动;
  2. native backend:使用 EvalScope 原生评测引擎,非 OpenCompass/VLMEvalKit 第三方后端;
  3. Dump task_config.yaml:框架自动把全量配置落地保存到 output 时间戳目录,便于复现任务。

大段 JSON 配置日志解读

json

复制代码
"model": "deepseek-chat",
"datasets": ["gsm8k","competition_math"],
"limit": 1,
"api_url": "https://api.deepseek.com/v1",
"generation_config": {"temperature":0.0,"max_new_tokens":1024},
"dataset_dir": "C:\\Users\\Administrator\\.cache\\modelscope\\hub\\datasets"
  1. 关键异常点:全局 limit=1 你.env 配置是分数据集 limit,但是日志出现顶层"limit":1全局限制每个子集只抽 1 条样本
    • gsm8k 只有 1 个 main 子集 → 评测 1 题;
    • competition_math 有 Level1~Level5 共 5 个子集 → 每个子集 1 题,合计 5 题(和后面日志 Num=5 对应);
  2. dataset_dir:数据集缓存路径,从 ModelScope 下载后存在用户缓存目录,无 HF 依赖
  3. 内置 Prompt:gsm8k/CMATH 自动配置 CoT 提示词,要求分步推理 + 答案放在\boxed{},框架靠正则提取框内数值算准确率;
  4. few_shot_num:4:默认 4 示例 Few-shot 评测(少样本出题,业内数学评测标准配置);
  5. eval_type=openai_api:走 OpenAI 兼容接口调用 DeepSeek 云端模型,非本地加载权重。

第二段:gsm8k 数据集加载 + 评测执行

plaintext

复制代码
2026-06-05 12:01:04 - evalscope - INFO: Start loading benchmark dataset: gsm8k
Processing records:100%...
2026-06-05 12:01:06 - INFO: Start evaluating 1 subsets of gsm8k: ['main']
Unified pool: 1 items to process
Creating model deepseek-chat with eval_type=openai_api ... Model loaded successfully.
Evaluating[gsm8k] 100%| 1/1 [00:05,5.13s/it]
  1. loading dataset:从本地 ModelScope 缓存读取 gsm8k 数据集,无下载动作;
  2. Unified pool:1 items:受全局 limit=1,只筛选 1 条测试样本进入评测队列;
  3. Creating model openai_api:实例化 OpenAI 接口请求客户端,配置重试、温度、最大生成长度;
  4. 5.13s/it:单题从请求 DeepSeek 到返回耗时 5.13 秒。

GSM8K 结果报表日志

plaintext

复制代码
gsm8k report table:
deepseek-chat | gsm8k | mean_acc | main | 1 | 1

Num=1:实测 1 道题目;Score=1 → Acc=100%,这 1 题答对

plaintext

复制代码
Avg Lat:1.718s、Avg In Tok:588、Avg Out Tok:97

Avg Lat:单题平均接口耗时;In = 输入总 token (问题 + 4 个 fewshot 示例),Out = 模型答案输出 token。

第三段:competition_math 数据集加载 & 评测(奥数 5 个难度分级)

plaintext

复制代码
Start loading benchmark dataset: competition_math
Processing records:100%|5000/5000、7500/7500
Start evaluating 5 subsets: ['Level 1','Level2','Level3','Level4','Level5']
Unified pool:5 items to process
Evaluating[competition_math]100%|5/5 [00:18,4.47s/it]
  1. competition_math 数据集分为 5 个难度子集 L1~L5,框架全量加载本地缓存;
  2. 全局 limit=1:每个难度抽 1 题,合计 5 题评测,总待评测样本 = 5
  3. 总推理耗时 18 秒,单题平均约 3.8s。

CMATH 分项结果

plaintext

复制代码
Level1~Level5 每个Num=1,Score全=1;OVERALL Num=5、Score=1
  1. 5 道不同难度奥数全部答对,综合准确率 100%;
  2. Avg Lat:3.7782s,平均输入 262.6token、输出 399token(奥数推理步骤更长,输出 token 远大于小学 gsm8k)。

第四段:汇总报告、文件落地

plaintext

复制代码
Overall report table:汇总gsm8k+5级CMATH全量指标
HTML report generated: xxx/report.html
Finished evaluation、Output directory: ./outputs/时间戳
  1. Overall report:全数据集汇总表格;
  2. 自动生成可视化 HTML 报告,可浏览器打开查看每题详情;
  3. 代码后置逻辑自动解析outputs/*/reports/*.json,在脚本同级生成eval_result_xxx.csv汇总表;

CSV 输出说明

程序执行完毕后同级目录生成eval_result_20260605_1201xx.csv,包含:评测时间、模型名、数据集、子集、指标、得分、样本总数、实测样本数。