本课目标
- 理解 Tool Calling:模型怎么"伸手"操作外部世界
- 理解 Agent 的最简定义:模型 + 工具 + 循环
- 掌握评估、成本与延迟的工程实践
行是知之始。前面五讲在说模型怎么想,这一讲说模型怎么做——以及你该怎么把它变成一个能用的产品。
核心内容
Tool Calling:模型的手
模型本身只能生成文字,不能查数据库、发邮件、调 API。Tool Calling 做的事就是让模型"伸手":你告诉模型"这些工具可以用",模型决定要不要用、用哪个、传什么参数。你的代码执行工具,把结果还给模型。模型再基于结果继续生成。
流程就三步:模型决定 → 代码执行 → 结果返回。循环直到模型觉得可以给出最终回答了。
类比:模型是大脑,Tools 是手。大脑说"我要查一下今天的天气",手去查了,告诉大脑结果。大脑再决定是直接回答还是继续查。
Agent = 模型 + 工具 + 循环
Agent 不是什么神秘的东西。最简定义:一个有工具、能自己决定下一步做什么、直到任务完成才停的模型实例。
跟你平时"问一句答一句"的本质区别在于:Agent 可以自己规划步骤、自己调用工具、自己判断什么时候算做完了。你只需要给目标,不需要给 SOP。
但循环也有代价:每一步都在消耗 Token,每一步都可能出错。一个没有防呆设计的 Agent 消费起你的 API 额度来,比双十一的购物车还快。
评估与迭代:你改了一行 Prompt,真的变好了吗?
准备 20-50 条真实测试用例(别用模型生成的),覆盖正常路径、边界情况和故意刁钻的问题。每次改 Prompt 或调参数后,批量跑一遍,用明确的通过/失败标准判断——不是"感觉好多了",是"准确率从 72% 升到 85%"。
测试集比 Prompt 更重要。Prompt 可以边用边调,但如果没有一套稳定的测试集,你永远不知道自己在变好还是变差。
成本与延迟:两个天天被忽略的硬指标
上下文 = 真金白银。每多 1000 个 Token 的上下文,每次调用就多花一份钱。长对话会越来越贵——因为每次都要把全部历史重发一遍。该用 RAG 检索而不是全量 dump 的场景,省下来的 Token 就是省下来的钱。
流式响应不是花活。对超过 3 秒的任务,流式输出让用户感知延迟从 8 秒降到 2 秒。对于简单查询,路由到小模型处理——复杂问题才用大模型。
工程清单:上线前必查
- 有没有设置 max_steps 防止无限循环?
- 有没有记录每次 Tool Call 的输入输出(出问题时这是唯一的线索)?
- 有没有给每个 API 调用加 timeout?
- 有没有把用户输入和模型输出分开打日志(隐私 + 审计)?
- 评估结果是否在每次改动后重新跑过?
一个忠告:AI 应用 = 10% 的 Prompt 设计 + 30% 的工程架构 + 60% 的评估与迭代。别把 90% 的时间花在那 10% 上。
动手练习
给你的 AI 应用(或你打算做的)画一张最简单的架构图:用户输入 → 什么处理 → 调什么模型 → 什么后处理 → 返回给用户。标出每个环节的:延迟预估、失败模式和兜底方案。