courses 第五课 tool_use(6 单元):从第一个简单工具到多工具聊天机器人——让 Claude 调用函数、拿回结果、继续推理。
一句话定位
从「会说」到「会做」的最后一课:定义工具 schema、处理工具调用循环、结构化输出、工具选择控制——六个单元覆盖 agent 能力的地基。
六单元精要
01 概览—— 工具使用的循环:模型请求调用 → 你的代码执行 → 结果回传 → 模型继续02 第一个简单工具—— 最小可运行示例:schema 定义与调用握手03 结构化输出—— 强制 JSON schema:工具调用是结构化输出的超集04 完整工作流—— 多轮工具循环的工程化:错误处理、超时、结果路由05 工具选择—— tool_choice 控制:自动/强制/禁止——什么时候让模型挑、什么时候你指定06 多工具聊天机器人—— 工具组合与对话状态的合成毕业设计
方法论精华
1. 工具循环的责任分界:模型决定「调什么、传什么参」,你的代码负责「真实执行与安全」——能力给模型、权限留代码,这是 agent 安全的第一原理(与金融域「人在钱上」、法务「审批队列」同构)。
2. 结构化输出是工具调用的地基:先学会强制 JSON,再学工具——前者解决「说得清」,后者解决「做得动」。
3. tool_choice 的三态设计:自动(模型挑)、强制(必须调这个)、禁止(纯对话)——把「谁做决定」本身做成参数,不同信任度的环节用不同态。
4. 错误也是提示:工具执行失败的信息回传给模型,它会调整重试——失败处理不是边界情况,是对话的一部分。
编者按
工具使用是整个 agent 时代的 API 地基——MCP 生态(连接器)、托管 agent(launch-your-agent)、一切「Claude 替你干活」的产品,底层都是这个六单元讲的循环。学完本课再看 knowledge-work-plugins,你会看清每个插件不过是「工具定义 + 方法论提示」的打包。