MiniMax-Vendor-Verifier#
概述#
MiniMax-Vendor-Verifier 是一个用于验证 MiniMax M2 / M2.5 / M2.7 供应商部署正确性的多验证器基准测试。每条提示行可携带一个可选的 check_type 标签,用于路由到特定的验证器;此外还始终启用 error_only_reasoning 检测器,以捕获最常见的部署回归问题。本基准测试改编自 MiniMax-Provider-Verifier。
任务描述#
任务类型:供应商部署正确性检查(多维度)
输入:多轮对话消息(可选工具定义)以及每行的路由标签(
check_type、expected_tool_call)输出:供应商的聊天补全响应,并根据该行所选的验证器进行评分
分发逻辑:未指定
check_type的行默认使用tool_calls验证器;指定了check_type的行仅运行所列的验证器
核心特性#
移植了五个上游验证器作为纯函数:
tool_calls— 对参数进行 JSON Schema 验证,并检查数组命令的合理性,同时基于expected_tool_call生成混淆矩阵error_only_reasoning(始终启用)— 标记包含推理但无内容且无工具调用的响应(一种部署回归问题)contains_russian_characters_unicode— 语言遵循性检查;当响应中出现西里尔字符时判定为失败repeat_n_gram— 退化重复检测器(任意 3-gram 出现 4 次或以上即视为失败)scenario_check— 验证模型是否保留声明的 JSON 属性顺序,用于发现会重新排序parameters.properties的供应商
报告中每个验证器的分母:
num=0表示该子集中没有行触发此验证器(并非失败)托管数据集保留了上游的 sample.jsonl 文件,以及 M2.5 / M2.7 的每轮基线追踪数据
评估说明#
默认配置使用 0-shot 评估;
default子集包含 102 行评估指标:tool_calls_match_rate、schema_accuracy、error_only_reasoning_rate、language_following_success_rate、repeat_ngram_pass_rate、scenario_check_pass_rate
根据上游指导,正确部署的供应商应达到:
tool_calls_match_rate ≈ 0.98、schema_accuracy ≥ 0.98、error_only_reasoning_rate = 0以及scenario_check_pass_rate = 1.0使用
--limit时,较稀有的check_type行(scenario / repeat / language)可能不会全部被采样;请检查各验证器对应的num列
属性#
属性 |
值 |
|---|---|
基准测试名称 |
|
数据集ID |
|
论文 |
N/A |
标签 |
|
指标 |
|
默认 Shots |
0-shot |
评估分割 |
|
数据统计#
指标 |
值 |
|---|---|
总样本数 |
102 |
提示词长度(平均) |
72251.38 字符 |
提示词长度(最小/最大) |
16 / 341252 字符 |
样例示例#
子集: default
{
"input": [
{
"id": "6cc50a79",
"content": "日本ではどのような時にお年玉を渡しますか?",
"role": "user"
}
],
"target": "",
"id": 0,
"group_id": 0,
"tools": [],
"metadata": {
"check_type": [
"contains_russian_characters_unicode"
],
"expected_tool_call": null,
"tools_raw": []
}
}
提示模板#
未定义提示模板。
使用方法#
使用 CLI#
evalscope eval \
--model YOUR_MODEL \
--api-url OPENAI_API_COMPAT_URL \
--api-key EMPTY_TOKEN \
--datasets minimax_verifier \
--limit 10 # 正式评估时请删除此行
使用 Python#
from evalscope import run_task
from evalscope.config import TaskConfig
task_cfg = TaskConfig(
model='YOUR_MODEL',
api_url='OPENAI_API_COMPAT_URL',
api_key='EMPTY_TOKEN',
datasets=['minimax_verifier'],
limit=10, # 正式评估时请删除此行
)
run_task(task_cfg=task_cfg)