参数说明#
执行 evalscope eval --help 可获取全部参数说明。
环境变量#
以下环境变量可在启动前设置,用于控制全局默认行为:
环境变量 |
说明 |
默认值 |
|---|---|---|
|
EvalScope 缓存根目录,用于存放数据集、评测中间文件等 |
|
|
全局默认语言,影响报告等输出语言( |
|
|
评测进度心跳上报间隔(秒) |
|
|
ModelScope 模型与数据集缓存根目录 |
|
模型参数#
参数 |
类型 |
说明 |
默认值 |
|---|---|---|---|
|
|
被评测的模型名称 |
- |
|
|
模型别名,用于报告展示 |
|
|
|
模型API端点,支持OpenAI兼容格式 |
|
|
|
模型API端点密钥 |
|
|
|
模型加载参数,逗号分隔的 |
|
|
|
模型任务类型 |
|
|
|
模型推理模板,支持Jinja模板字符串(仅本地推理支持该参数) |
|
示例:
# key=value形式
--model-args revision=master,precision=torch.float16,device_map=auto
# JSON字符串形式
--model-args '{"revision": "master", "precision": "torch.float16", "device_map": "auto"}'
模型推理参数#
--generation-config 参数支持以下配置项(逗号分隔的key=value或JSON字符串):
参数 |
类型 |
说明 |
支持的后端 |
|---|---|---|---|
|
|
请求超时时间(秒) |
所有 |
|
|
重试次数,默认为5 |
OpenAI兼容 |
|
|
重试间隔时间(秒),默认10 |
OpenAI兼容 |
|
|
是否流式返回响应 |
所有 |
|
|
最大生成token数量 |
所有 |
|
|
Nucleus采样,考虑概率质量为top_p的token |
所有 |
|
|
采样温度,范围0~2,越高越随机 |
所有 |
|
|
范围-2.0~2.0,正值惩罚重复token |
OpenAI兼容 |
|
|
范围-2.0~2.0,正值惩罚已出现token |
OpenAI兼容 |
|
|
token id到偏置值的映射(-100~100) |
OpenAI兼容 |
|
|
随机种子 |
OpenAI兼容 |
|
|
是否采用采样策略(否则贪婪解码) |
Transformers |
|
|
从top_k最可能的词中采样 |
Anthropic, Google, HuggingFace, vLLM, SGLang |
|
|
是否返回输出token的对数概率 |
OpenAI, Grok, TogetherAI, HuggingFace, llama-cpp-python, vLLM, SGLang |
|
|
返回概率最高的前N个token(范围0~20) |
OpenAI, Grok, HuggingFace, vLLM, SGLang |
|
|
工具调用是否支持并行 |
OpenAI, Groq |
|
|
工具输出的最大字节数 |
所有(默认16*1024) |
|
|
向OpenAI兼容服务发送的额外请求体 |
OpenAI兼容服务 |
|
|
向OpenAI兼容服务发送的额外查询参数 |
OpenAI兼容服务 |
|
|
向OpenAI兼容服务发送的额外请求头 |
OpenAI兼容服务 |
|
|
图像生成模型专用,指定图像高度 |
图像生成模型 |
|
|
图像生成模型专用,指定图像宽度 |
图像生成模型 |
|
|
图像生成模型专用,推理步数 |
图像生成模型 |
|
|
图像生成模型专用,指导尺度 |
图像生成模型 |
示例:
# key=value形式
--generation-config do_sample=true,temperature=0.5
# JSON字符串形式(支持更复杂参数)
--generation-config '{"do_sample":true,"temperature":0.5,"extra_body": {"chat_template_kwargs":{"enable_thinking": false}}}'
数据集参数#
参数 |
类型 |
说明 |
默认值 |
|---|---|---|---|
|
|
数据集名称列表,空格分隔 |
- |
|
|
数据集下载路径 |
|
|
|
数据集下载源 |
|
|
|
每个数据集最大评测数据量 |
|
|
|
重复推理一个样例多次 |
|
|
|
数据集配置参数(JSON字符串),详见下表 |
|
dataset-args 配置项#
--dataset-args 为JSON字符串,每个数据集可配置以下参数:
参数 |
类型 |
说明 |
|---|---|---|
|
|
数据集modelscope id/本地路径 |
|
|
本地数据集路径,已废弃,请使用 |
|
|
评测样本超时时间(秒),代码类任务建议设置 |
|
|
Prompt模板,示例: |
|
|
系统prompt |
|
|
评测数据子集列表 |
|
|
few-shot示例数量 |
|
|
是否随机采样few-shot数据 |
|
|
是否打乱数据 |
|
|
是否打乱选项顺序(仅多选题) |
|
|
指标列表,默认支持 |
|
|
评测结果聚合方式,默认 |
|
|
输出过滤器 |
|
|
是否强制重新下载数据集 |
|
|
数据集相关的额外参数,具体参考各数据集说明,指定 |
|
|
Sandbox配置(详见下方Sandbox参数) |
sandbox_config 配置项:
参数 |
类型 |
说明 |
默认值 |
|---|---|---|---|
|
|
Docker镜像名称 |
|
|
|
是否启用网络 |
|
|
|
工具配置字典 |
|
示例:
--datasets gsm8k arc ifeval hle \
--dataset-args '{
"gsm8k": {
"few_shot_num": 4,
"few_shot_random": false
},
"arc": {
"dataset_id": "/path/to/arc"
},
"ifeval": {
"filters": {
"remove_until": "</think>"
}
},
"hle": {
"extra_params": {
"include_multi_modal": false
}
}
}'
评测参数#
参数 |
类型 |
说明 |
默认值 |
|---|---|---|---|
|
|
评测类型 |
|
|
|
评测批量大小,作用于以下阶段: |
|
|
|
评测后端 |
|
|
|
非Native后端的配置文件路径 |
- |
Judge参数#
LLM-as-a-Judge评测参数,使用裁判模型判断正误:
参数 |
类型 |
说明 |
默认值 |
|---|---|---|---|
|
|
裁判模型策略 |
|
|
|
[已废弃] 请使用 |
|
|
|
裁判模型配置(JSON字符串),详见下表 |
- |
|
|
是否生成分析报告(自动判断语言) |
|
judge-model-args 配置项#
参数 |
类型 |
说明 |
默认值 |
|---|---|---|---|
|
|
API密钥 |
从 |
|
|
API端点 |
从 |
|
|
模型ID |
从 |
|
|
系统prompt |
- |
|
|
Prompt模板 |
根据 |
|
|
生成参数(同 |
- |
|
|
裁判模型加载参数(同 |
|
|
|
打分方式 |
|
|
|
解析输出的正则表达式 |
|
|
|
|
|
参见
关于ModelScope模型推理服务,请参考ModelScope API推理服务
pattern 模式默认prompt模板
Your job is to look at a question, a gold target, and a predicted answer, and return a letter "A" or "B" to indicate whether the predicted answer is correct or incorrect.
[Question]
{question}
[Reference Answer]
{gold}
[Predicted Answer]
{pred}
Evaluate the model's answer based on correctness compared to the reference answer.
Grade the predicted answer of this new question as one of:
A: CORRECT
B: INCORRECT
Just return the letters "A" or "B", with no text around it.
numeric 模式默认prompt模板
Please act as an impartial judge and evaluate the quality of the response provided by an AI assistant to the user question displayed below. Your evaluation should consider factors such as the helpfulness, relevance, accuracy, depth, creativity, and level of detail of the response.
Begin your evaluation by providing a short explanation. Be as objective as possible.
After providing your explanation, you must rate the response on a scale of 0 (worst) to 1 (best) by strictly following this format: "[[rating]]", for example: "Rating: [[0.5]]"
[Question]
{question}
[Response]
{pred}
Sandbox参数#
EvalScope 使用嵌套的 --sandbox 配置(对应 SandboxTaskConfig)统一管理沙箱设置。
--sandbox 配置项#
参数 |
类型 |
说明 |
默认值 |
|---|---|---|---|
|
|
是否启用沙箱 |
|
|
|
沙箱引擎,可选 |
|
|
|
任务级沙箱配置,将与 |
|
|
|
转发给 ms_enclave manager 构造函数的参数(如远端 docker daemon 的 |
|
|
|
池化执行的预热池大小, |
|
完整使用方法(含本地与远端管理器配置示例)请参考 沙箱环境使用。
Agent 参数#
--agent-config / agent_config 用于启用 Agent 评测模式:当设置后,所有基于 DefaultDataAdapter 的基准会改用多轮 AgentLoop 进行推理。AgentLoopAdapter 子类(如 swe_bench_*_agentic)会忽略该全局配置,改用 dataset_args.extra_params。
参数 |
类型 |
说明 |
默认值 |
|---|---|---|---|
|
|
Agent 全局配置,详见下表 |
|
agent-config 配置项#
字段 |
类型 |
说明 |
默认值 |
|---|---|---|---|
|
|
策略名称: |
|
|
|
工具白名单: |
|
|
|
工具运行环境: |
|
|
|
循环迭代硬上限 |
|
|
|
策略构造参数,例如 |
|
|
|
环境构造参数。 |
|
参见
完整使用说明、用例与 Trace 可视化请参见 Agent 评测。
其他参数#
参数 |
类型 |
说明 |
默认值 |
|---|---|---|---|
|
|
评测输出路径(详见下方目录结构) |
|
|
|
是否不在工作目录中添加时间戳 |
|
|
|
复用本地缓存路径(如 |
|
|
|
只重新运行评测(重用推理结果) |
|
|
|
是否开启进度追踪,将层级评测进度实时写入 |
|
|
|
采集每次推理请求的性能指标(延迟、TTFT、Token 用量),汇总后写入评测报告。采集 TTFT 需开启 |
|
|
|
随机种子 |
|
|
|
是否开启调试模式 |
|
|
|
是否忽略生成过程中的错误 |
|
|
|
预检参数,不执行推理,只打印参数 |
|
work-dir 目录结构示例#
./outputs/{timestamp}/
├── configs/
│ └── task_config_b6f42c.yaml # 任务配置
├── logs/
│ └── eval_log.log # 评测日志
├── predictions/
│ └── {model_id}/
│ └── {dataset}.jsonl # 模型推理结果
├── reports/
│ └── {model_id}/
│ └── {dataset}.json # 评测报告
├── reviews/
│ └── {model_id}/
│ └── {dataset}.jsonl # 评测结果详情
└── progress.json # 进度追踪文件(启用--enable-progress-tracker时生成)
progress.json 文件格式示例:
{
"status": "running",
"pipeline": "eval",
"total_count": 14042,
"processed_count": 5200,
"percent": 37.03,
"stage": {
"name": "Evaluating", "label": "mmlu",
"current": 1, "total": 3, "status": "running",
"children": [
{"name": "Predicting", "label": "mmlu@test", "current": 1000, "total": 1000, "status": "completed", "children": []},
{"name": "Reviewing", "label": "mmlu@test", "current": 320, "total": 1000, "status": "running", "children": []}
]
},
"updated_at": "2026-03-09T10:05:42Z"
}