evalstone/evalscope/docs/zh/benchmarks/minimax_verifier.md
2026-07-08 08:57:50 +00:00

4.2 KiB
Raw Blame History

MiniMax-Vendor-Verifier

概述

MiniMax-Vendor-Verifier 是一个用于验证 MiniMax M2 / M2.5 / M2.7 供应商部署正确性的多验证器基准测试。每条提示行可携带一个可选的 check_type 标签,用于路由到特定的验证器;此外还始终启用 error_only_reasoning 检测器,以捕获最常见的部署回归问题。本基准测试改编自 MiniMax-Provider-Verifier

任务描述

  • 任务类型:供应商部署正确性检查(多维度)
  • 输入:多轮对话消息(可选工具定义)以及每行的路由标签(check_typeexpected_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_rateschema_accuracyerror_only_reasoning_ratelanguage_following_success_raterepeat_ngram_pass_ratescenario_check_pass_rate
  • 根据上游指导,正确部署的供应商应达到:tool_calls_match_rate ≈ 0.98schema_accuracy ≥ 0.98error_only_reasoning_rate = 0 以及 scenario_check_pass_rate = 1.0
  • 使用 --limit 时,较稀有的 check_typescenario / repeat / language可能不会全部被采样请检查各验证器对应的 num

属性

属性
基准测试名称 minimax_verifier
数据集ID evalscope/MiniMaxVendorVerifier
论文 N/A
标签 Agent, FunctionCalling
指标 tool_calls_match_rate, schema_accuracy, error_only_reasoning_rate, language_following_success_rate, repeat_ngram_pass_rate, scenario_check_pass_rate
默认 Shots 0-shot
评估分割 test

数据统计

指标
总样本数 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)