来源:GitHub (★310)
URL: https://github.com/SeraphimSerapis/tool-eval-bench
精读日期:2026-08-29
模型:DeepSeek V4 Flash(AI 生成,人工未审校)
正文获取:全文

一、核心论点/事实

  • tool-eval-bench 是一个面向 LLM 工具调用(tool-calling)质量的基准测试工具,专为 agentic 工作流设计,GitHub 星标 310。
  • 包含 69 个确定性场景(外加 19 个可选的 Hard Mode 对抗性场景),覆盖工具选择、参数精度、多步链、拒绝、错误恢复、本地化、指令遵循、安全与提示注入、52 工具命名空间、自主规划、结构化输出等类别(A–O)。
  • 支持 vLLM、SGLang、llama.cpp、LiteLLM、Ollama、TGI 等主流 serving 栈,通过 OpenAI 兼容端点接入。
  • 每个场景按 2(通过)、1(部分)、0(失败)三档评分,最终分数按类别加权;若 Safety & Boundaries 类别得分低于 50%,总评级上限封顶为三星
  • 每次运行生成 Markdown 报告(含完整对话轨迹)和终端摘要(综合得分、星级、分类百分比)。
  • 超时和连接错误不计入分数(而非计零),因为其衡量的是 serving 环境而非模型能力;排行榜仅对配置完全匹配的运行进行分组排名。
  • 内置性能基准:llama-bench 风格 prefill/generation 速度、深度与并发扫描、needle-in-a-haystack 长上下文检索、GSM8K/MMLU/IFEval 标准评测。

二、方法/架构拆解

  • 场景设计:69 个确定性场景 + 19 个 Hard Mode(对抗性、状态化、事务性),每个场景有明确的通过/部分/失败判定标准,并写入完整对话轨迹。
  • Mock 工具响应:模拟真实 API 的响应噪声(额外元数据、时间戳、嵌套对象),迫使模型从真实形状的响应中提取正确字段,而非手工裁剪的干净数据。
  • 评分机制:每场景 0/1/2 三档计分,类别加权(大类别权重更高);提供替代评分方案(对更难场景加权更高);支持 Pass@k / Pass^k 统计检验(--trials 参数)。
  • 配置优先级:CLI 参数 > 环境变量 > 配置文件;TOOL_EVAL_BASE_URL 环境变量用于远程服务器或非标准端口;自动扫描 vLLM/llama.cpp/SGLang 等常见 localhost 端口。
  • 运行模式
  • --short:核心 15 场景快速运行(几分钟,无需配置文件)
  • --hardmode:启用 19 个对抗性场景
  • --perf:性能基准(吞吐、推测解码、上下文压力)
  • --needle:长上下文检索(上下文长度 × 深度网格)
  • --categories K A --fail-on-safety:仅跑安全与工具选择类别,安全回归时 CI 失败
  • 上下文压力测试:在场景前预填充部分窗口,定位质量下降的临界点。
  • 安装方式uv tool install git+https://github.com/SeraphimSerapis/tool-eval-bench.git;性能版安装 tool-eval-bench[perf]

三、值得注意的局限/争议

作者承认的局限:

  • 该基准是工具调用质量基准,不是完整的 agentic 系统基准——不评估多轮自主规划、长期记忆、环境交互等完整 agent 能力。
  • 超时/连接错误不计入分数,意味着不同运行环境下的评分可比性受限(60/69 场景的评分与 69/69 不可直接比较)。
  • 排行榜仅对配置完全匹配的运行分组,不同 flag 集的分数不可直接对比。

AI 判断的局限/争议:

  • 确定性场景(deterministic scenarios)可能低估真实世界工具调用的开放性——真实 API 返回的噪声和异常远比 mock 数据复杂。
  • 评分依赖人工定义的通过/部分/失败标准,存在主观性;不同模型在同一场景的边界情况可能难以公平判定。
  • 69 个场景的覆盖面虽广,但 52-tool 命名空间等压力测试仍可能无法反映生产环境中数百个工具的真实规模。
  • 未提及多模态工具调用(如图像输入触发工具)或流式工具调用等前沿场景。

四、与 RRLab 研究的关联

  • 模型评测:tool-eval-bench 的分类加权评分、星级封顶机制(安全类别低于 50% 封顶三星)和 Pass@k 统计检验,可直接借鉴到 RRLab 的模型评测体系中,特别是 agent 工具调用能力的量化评估。
  • Harness 工程:其配置优先级(CLI > 环境变量 > 配置文件)、自动端口扫描、OpenAI 兼容端点接入方式,为 RRLab 的 harness 设计提供了轻量级、可复用的工程模式;--fail-on-safety 的 CI 集成思路值得参考。
  • Agent 落地:69 个确定性场景覆盖了工具选择、参数精度、多步链、错误恢复等 agent 落地中的关键质量维度,可作为 RRLab agent 产品上线前的质量门禁(quality gate)。
  • 多模型协同:Hard Mode 的对抗性场景(提示注入、安全边界)可用于评估多模型协同中安全模型的鲁棒性;不同 serving 栈(vLLM/SGLang/llama.cpp)的对比测试有助于选择多模型部署的底层引擎。
  • AI 原生产品:mock 工具响应携带真实噪声的设计理念(让模型从真实形状的响应中提取字段),对 RRLab 构建 AI 原生产品的评测数据生成有直接启发——评测数据应模拟真实生产环境而非理想化输入。

本笔记由 DeepSeek V4 Flash 自动生成,未经人工审校。原文链接:https://github.com/SeraphimSerapis/tool-eval-bench