工具提示工程:让 agent 会用工具而不是猜工具

工具提示工程:让 agent 会用工具而不是猜工具:把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复,通过架构、轨迹和故障重放完成验收。

学习目标

  • 能解释“工具提示工程:让 agent 会用工具而不是猜工具”如何把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复
  • 能区分工具提示工程、选择精度、参数通过率、结果理解率、恢复率,并指出控制权、数据与副作用边界
  • 能固定输入与版本,沿以下证据定位首个分叉:工具定义版本、任务集、选择率、参数通过率、结果理解率、恢复率与失败轨迹
  • 能注入“只看工具函数单元测试通过,却从不测模型是否会选择和正确填写它”,完成阻断、恢复、复位和同输入重放

来源、课程编排与适用边界

“工具提示工程:让 agent 会用工具而不是猜工具”以Anthropic 公开全文《Building effective agents》为总纲,并用Anthropic《Writing effective tools for agents》核对本单元机制;涉及 MCP 的控制权边界再由MCP 2025-06-18 官方规范交叉检查。

这不是 Anthropic 出版的“19 章教材”。平台把公开文章、官方工具文档与协议规范重组为 19 个应用单元;下列 152 个节点是站内课程地图,不冒充原文目录。正文、代码、图表、实验和练习均为独立教学重写;产品接口、模型行为或协议版本变化时必须重新验证。

本单元的八个课程坐标

  • 工具提示工程:让 agent 会用工具而不是猜工具:这是“把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复”的第 1 个课程坐标;必须进入机制解释、实验观察或练习证据,不能只停在目录。
  • 先打个比方:这是“把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复”的第 2 个课程坐标;必须进入机制解释、实验观察或练习证据,不能只停在目录。
  • 工具定义就是给模型看的提示:这是“把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复”的第 3 个课程坐标;必须进入机制解释、实验观察或练习证据,不能只停在目录。
  • 描述要写边界,而不只写功能:这是“把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复”的第 4 个课程坐标;必须进入机制解释、实验观察或练习证据,不能只停在目录。
  • 参数 schema 要替模型消歧:这是“把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复”的第 5 个课程坐标;必须进入机制解释、实验观察或练习证据,不能只停在目录。
  • 返回结果语义会改变下一次选择:这是“把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复”的第 6 个课程坐标;必须进入机制解释、实验观察或练习证据,不能只停在目录。
  • 错误要帮助模型恢复:这是“把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复”的第 7 个课程坐标;必须进入机制解释、实验观察或练习证据,不能只停在目录。
  • 工具定义要靠 eval 迭代:这是“把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复”的第 8 个课程坐标;必须进入机制解释、实验观察或练习证据,不能只停在目录。

术语与运行合同

本页不变量是:工具改动必须在代表轨迹上同时验证选对、填对、读懂和恢复四个环节。任何“成功”结论都要保存以下证据:工具定义版本、任务集、选择率、参数通过率、结果理解率、恢复率与失败轨迹,模型生成的计划或自信不能替代环境事实。

关键机制与可推翻实验

从真实失败轨迹开始

凭直觉润色描述容易优化错误问题,应先聚类误选、误填和误读。

动手验证:标注一批失败轨迹并计算各类占比。

边界描述比功能口号重要

“搜索数据”太宽,应该说明数据域、何时使用和与相邻工具的区别。

动手验证:用相邻意图样本测误选率。

参数名要消除歧义

抽象缩写、隐式单位和布尔开关会增加猜测,应改成语义明确的枚举和结构。

动手验证:比较改名前后的首轮 schema 通过率。

错误返回指导下一步

错误需说明缺什么、能否重试、何时转人工,不能只给内部代码。

动手验证:注入缺权限、速率限制和不存在资源三类错误,测恢复路径。

先预测,再操作三类证据

分步1 / 3

1. 架构与复杂度边界

在“工具提示工程:让 agent 会用工具而不是猜工具”中切换简单基线、受控工作流与自主循环,先预测“把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复”在哪个阶段需要增加控制权,再比较延迟、成本、可观测性和自主性。

Architecture decision laboratory

工具提示工程:让 agent 会用工具而不是猜工具

把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复

复杂度档位

不变量:工具改动必须在代表轨迹上同时验证选对、填对、读懂和恢复四个环节

受控工作流:只激活能够由收益证明的阶段1收集轨迹2定位误用3改写接口4批量评测5发布或回退蓝色表示当前方案承担的责任;虚线阶段仍留在系统边界外。关键证据:工具定义版本、任务…
自主性46
延迟52
成本48
可观测78

最小可运行实现

for (const version of toolDefinitionCandidates) {
  const runs = await runToolEval(version, representativeTasks);
  report(version, {
    selection: precision(runs),
    arguments: schemaPassRate(runs),
    comprehension: nextStepAccuracy(runs),
    recovery: recoveryRate(runs),
  });
}

这段切片只暴露“把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复”的最小运行合同。交付版本还要补齐超时、密钥隔离、结构化日志、幂等和批量评测;缺少工具定义版本、任务集、选择率、参数通过率、结果理解率、恢复率与失败轨迹时,代码能运行也不代表本章结论成立。

小结

  • 工具定义是给模型看的提示,须当作可评测提示迭代
  • 描述要写边界而不只写功能,消除误选
  • 参数名要消除歧义,用语义明确的枚举和结构
  • 错误返回要指导模型恢复,不能只给内部代码
  • 须同时验证选对、填对、读懂和恢复四个环节

练习与答案

练习

问题 1:最小证明。 怎样用最少样本证明“工具改动必须在代表轨迹上同时验证选对、填对、读懂和恢复四个环节”?

问题 2:课程覆盖。 工具提示工程:让 agent 会用工具而不是猜工具、先打个比方、工具定义就是给模型看的提示、描述要写边界,而不只写功能、参数 schema 要替模型消歧、返回结果语义会改变下一次选择、错误要帮助模型恢复、工具定义要靠 eval 迭代如何进入可操作验证?

问题 3:恢复闭环。 怎样证明“只看工具函数单元测试通过,却从不测模型是否会选择和正确填写它”已经修复?

本章回顾

  • “工具提示工程:让 agent 会用工具而不是猜工具”的主问题是把工具定义当作可评测提示,迭代名称、描述、参数、返回与错误恢复。
  • 核心不变量是工具改动必须在代表轨迹上同时验证选对、填对、读懂和恢复四个环节。
  • 首要反例是只看工具函数单元测试通过,却从不测模型是否会选择和正确填写它。
  • 最小证据包包含工具定义版本、任务集、选择率、参数通过率、结果理解率、恢复率与失败轨迹。

名词解释

本章出现的专业名词,用大白话再讲一遍。

工具提示工程

通过迭代工具定义改善模型使用行为的过程。在“工具提示工程:让 agent 会用工具而不是猜工具”中必须能按以下证据重新定位:工具定义版本、任务集、选择率、参数通过率、结果理解率、恢复率与失败轨迹。

选择精度

需要该工具的任务中模型正确选择它的比例。在“工具提示工程:让 agent 会用工具而不是猜工具”中必须能按以下证据重新定位:工具定义版本、任务集、选择率、参数通过率、结果理解率、恢复率与失败轨迹。

参数通过率

模型生成参数一次通过 schema 与业务校验的比例。在“工具提示工程:让 agent 会用工具而不是猜工具”中必须能按以下证据重新定位:工具定义版本、任务集、选择率、参数通过率、结果理解率、恢复率与失败轨迹。

结果理解率

模型能否依据工具返回做出正确下一步的比例。在“工具提示工程:让 agent 会用工具而不是猜工具”中必须能按以下证据重新定位:工具定义版本、任务集、选择率、参数通过率、结果理解率、恢复率与失败轨迹。

恢复率

工具返回可恢复错误后模型能修正并继续的比例。在“工具提示工程:让 agent 会用工具而不是猜工具”中必须能按以下证据重新定位:工具定义版本、任务集、选择率、参数通过率、结果理解率、恢复率与失败轨迹。

阅读导航

← 真实场景解剖:客服智能体与编码智能体为什么适合 agent · 生产化收官:简单、透明与 ACI 上线检查清单 →

讨论

评论区加载中…