R

c10 - Agent 技术栈与工具调用

创建 2026-05-18 更新 2026-05-18 17 条双链 共创

10. Agent 技术栈与工具调用:从生成内容到执行任务

Agent 不只是”更强的 ChatGPT”,而是一种根本性不同的产品形态:从生成内容转向执行任务。这带来了全新的工程挑战和产品设计范式——核心问题不再是”输出质量好不好”,而是”任务完成率够不够高、失败时怎么兜底”。

10.1 记忆架构:Agent 的认知基础设施

记忆类型机制产品实例PM 关注点
短期记忆(In-Context)当前对话上下文窗口对话历史、工具调用记录窗口用尽时如何压缩
外部记忆(External)向量数据库 + RAG用户文档、历史任务、知识库存什么、何时检索
参数记忆(Parametric)模型权重中的通用知识训练数据中的世界知识无法实时更新,依赖 RAG 补充
工作记忆(Working Memory)任务执行中的临时状态中间计算结果、已完成步骤列表需要专门设计的状态管理机制

核心挑战:随着 Agent 执行步骤增加,工具调用记录、中间结果迅速填满上下文窗口。如何设计上下文压缩和状态持久化,是 Agent 产品工程的核心难题,直接影响任务长度上限。

10.2 工具调用机制与设计原则

Function Calling 的物理基础是受约束解码:模型被强制输出符合 JSON Schema 的工具调用指令(工具名 + 参数),由外部执行器执行后返回结果。模型读取结果,决定下一步行动。

工具设计三原则

  1. 接口原子化:每个工具只做一件事。search_and_summarize() 是反模式——拆成独立的 search()summarize() 工具更利于错误定位和灵活组合。

  2. 错误信息可机读:工具返回值必须包含 Agent 能理解的错误描述(如 {"error": "文件不存在", "suggestion": "请先调用 list_files 获取可用文件列表"})。否则 Agent 无法自我纠错,会在错误上反复重试。

  3. 副作用分级

    • 只读操作(search、read、query)→ 自动执行
    • 写操作(send_email、create_file、update_record)→ 返回草稿等待用户确认
    • 高风险操作(删除、转账、发布)→ 明确拒绝或双重确认

10.3 可靠性困境:复合错误的产品含义

这是 Agent 产品最常被忽视的系统性问题:

步骤数单步 95% 成功率单步 99% 成功率
5 步77%95%
10 步60%90%
20 步36%82%

这不是工程问题,而是产品定义问题:20 步 Agent 完成率 36% 根本无法上线。产品必须设计:

  • 错误检测机制:每步执行后验证结果是否合理
  • 局部回退策略:单步失败时回退这一步,而非从头重来
  • 人机协作断点(Human-in-the-Loop Checkpoint):在关键决策节点主动请求用户确认,降低单次错误的级联损失

10.4 架构模式选型

单 Agent + 多工具:最简单。适合线性、步骤明确的任务。上下文膨胀是主要瓶颈。

多 Agent 协作(Orchestrator 模式)

  • Planner:负责将复杂任务拆解为子任务
  • Executor:每个子任务由专门 Agent 执行(工具范围有限,上下文干净)
  • Reviewer:验证执行结果,触发重试或上报

适合复杂、可并行、需要自我检验的任务(如自动化研究、代码生成 + 测试 + 修复循环)。

MCP(Model Context Protocol)Anthropic 提出的工具调用标准协议,将工具定义、资源访问、采样控制标准化为统一接口。正在成为 AI 生态的”HTTP 协议”——任何工具只要提供 MCP Server,即可被任何支持 MCP 的 Agent 直接调用,无需重复集成。

对 PM 的战略意义:MCP 生态意味着工具集成成本大幅下降,产品的竞争优势将更多来自垂直场景的工作流设计和数据积累,而非工具集成能力本身。

10.5 成本结构:Agent 是乘法计费

Agent 的每个”行动步骤”对应一次或多次 LLM 调用:

  • 10 步 Agent = 10+ 次 API 调用
  • 每次调用包含完整的历史上下文 → 每步 token 数递增
  • 部分步骤还包含 RAG 检索 → 额外的 Embedding 和 Reranker 成本

实际影响:Agent 产品的单次任务成本可能是普通对话的 10–100 倍。这直接影响:

  • 产品定价(按任务 / 按结果收费,而非按 token 计费)
  • 架构设计(哪些中间结果可以缓存复用)
  • 用户体验设计(长时间任务需要异步 + 进度通知机制,而非同步等待)

相关概念卡:Agent 与工具调用Function CallingRAG 模块二延伸:m206 记忆机制与 Browser Agent 进展 | m207 完整失败模式分类与兜底体系 专题升级:0411 Agent 系统化专题 — 本章给的是 G3 截面快照,专题在此基础上提供时间纵轴(G02 五代演化详解·G1-G5)+ 静态分层骨架(S01 Agent 六层架构剖面)+ 范式映射矩阵(S02 流派架构对照表) 上一章:c09 RAG 下一章:c11 System 2