B2 · Tool Use · 测试用例

对应框架维度:B2 Tool Use 状态:初稿 最后更新:2026-04-07


工具说明

当前 agent 接入 49 个工具,分为以下类别:

Built-in (12个)

垂直领域工具 (37个)

关键特性

  1. 地域互斥:中国大陆必须用高德(maps_*),海外必须用 Google Maps,混用会失败
  2. 依赖链:部分工具需要先查询 ID 再使用(如 beike_lookup_city_id → beike_search_resale_housing)
  3. 搜索→详情模式:社交媒体工具需要先搜索拿 ID,再查详情/评论

用例规范

每条用例包含以下字段:

字段 说明
ID 格式:B2-{维度缩写}-{序号}
维度 所属评测维度
难度 简单 / 中等 / 困难
输入 用户消息 + 上下文
期望行为 agent 应该调用哪些工具、参数是什么、执行顺序如何
判定标准 Pass / Fail 的明确条件
评分方式 自动 / LLM-judge
Skill 配置 Group A (无 skill) / Group B (有 skill,列出相关 skill)

一、工具选择准确率(TS: Tool Selection)

是否选了正确的工具(可能有多个合理选项)。

B2-TS-01 · 单一工具明确场景


B2-TS-02 · 专用工具优于通用工具


B2-TS-03 · 地域工具选择(国内)


B2-TS-04 · 地域工具选择(海外)


B2-TS-05 · 多工具可选,需选最佳


B2-TS-06 · 错误工具选择(负面 case)


二、参数构造准确率(PC: Parameter Construction)

参数是否完整、类型正确、值合理。

B2-PC-01 · 必填参数完整性


B2-PC-02 · 时间参数推断


B2-PC-03 · 参数类型转换(城市名→ID)


B2-PC-04 · 枚举参数选择


B2-PC-05 · 可选参数合理性


B2-PC-06 · 参数推断错误(负面 case)


B2-PC-07 · 多轮参数累积


B2-PC-08 · 多轮参数修正


三、工具链编排(TC: Tool Chaining)

多工具有先后依赖时,顺序和条件是否正确。

B2-TC-01 · 两步依赖(查询 ID → 使用 ID)


B2-TC-02 · 搜索 → 详情链


B2-TC-03 · 并行执行(无依赖)


B2-TC-04 · 三步以上复杂链


B2-TC-05 · 条件分支执行


B2-TC-06 · 多轮工具链(搜索→用户选择→查详情)


B2-TC-07 · 工具结果引导的工具切换


四、工具失败恢复(FR: Failure Recovery)

工具返回错误时,是否有合理的重试/降级策略。

B2-FR-01 · 搜索无结果降级


B2-FR-02 · 参数错误重试


B2-FR-03 · 工具不可用切换备选


B2-FR-04 · 部分失败的优雅处理


B2-FR-05 · 多轮错误恢复


五、工具冗余调用(RC: Redundant Calls)

是否存在不必要的重复调用(效率指标)。

B2-RC-01 · 重复调用相同工具


B2-RC-02 · 过度查询详情


B2-RC-03 · 不必要的工具链


B2-RC-04 · 已有信息的重复获取


B2-RC-05 · 渐进式筛选(避免重复调用)


六、多模态工具使用(MM: Multimodal Tool Use)

用户通过图片等多模态输入时,agent 能否选择正确的工具并构造参数。

B2-MM-01 · 图片搜索工具选择


B2-MM-02 · 图片信息提取参数构造


B2-MM-03 · 图片 + 文字的工具选择


B2-MM-04 · 多模态工具链


B2-MM-05 · 图片质量不足时的降级


评测执行说明

总用例数

维度 代号 用例数
工具选择准确率 TS 6
参数构造准确率 PC 8
工具链编排 TC 7
工具失败恢复 FR 5
工具冗余调用 RC 5
多模态工具使用 MM 5
合计 36

难度分布

难度 数量
简单 6
中等 15
困难 10

对话轮次分布

类型 数量
单轮 24
多轮(2-4 轮) 7

评分方式分布

方式 数量 说明
自动 17 可程序化验证(工具名称、参数、调用次数、trace)
LLM-judge 5 需要语义理解(降级策略合理性、选择合理性)
自动 + LLM-judge 3 部分自动检查,部分需语义判断

工具覆盖范围

工具类别 涉及 case 数
旅行类 (机票/酒店) 8
电商类 (淘宝) 6
地图导航类 (高德/Google Maps) 6
房产类 (贝壳) 4
社交媒体类 (微博/知乎) 3
通用 (web_search/weather) 5

双组评测标准

通过门槛

组别 维度通过线 说明
Group A(无 Skill) 各维度 ≥ 70% 验证 agent 基础工具使用能力
Group B(有 Skill) ≥ Group A 分数(delta ≥ 0 为硬门槛) Skill 不应降低工具使用准确率

失败定性规则

Group A 失败                 → agent 工具使用能力不足,修模型/prompt
Group B 失败 且 Group A 通过 → Skill 干扰了工具选择或参数构造(如强制流程覆盖了正确调用),修 Skill
Group A 和 Group B 都失败    → agent 问题

B2 特有规则:Skill 相关工具的 Group B 应更高

当 Skill 的执行流程明确规定了工具调用方式时(例如 flight-selection skill 规定「必须先搜 ±1 天」),Group B 在对应 case 上应该高于 Group A——因为 Skill 给了明确的调用规范,按图索骥比凭空猜测更应该做对。

工具类型 Group A 期望 Group B 期望
通用工具(天气/搜索) ≥ 70% ≥ Group A
Skill 显式规定的工具调用 ≥ 70% ≥ 85%(Skill 提供了明确规范,应更高)

B2-RC 维度例外:冗余调用允许 Group B 略多

原因:Skill 的执行流程(如 ±1 天多次搜索、Draft Proposal 确认)天然比无 Skill 时调用更多工具,这是有价值的额外步骤,不是真正的冗余。

skill_impact_delta 汇总

目标:
  TS / PC / TC / FR / MM:delta ≥ 0
  RC(冗余调用):delta 允许 ≤ +20%(Skill 流程合理增加调用次数)

红线:
  TS(工具选择)delta < -10% → Skill 干扰了工具选择,必须修复
  PC(参数构造)delta < -10% → Skill 破坏了参数构造,必须修复

后续迭代方向