第 06 章:Agent 架构:Function Calling 与规划

第 06 章:Agent 架构:Function Calling 与规划

核心观点:Agent = LLM + Memory + Planning + Tools。如果说 LLM 是大脑,那么 Agent 架构就是让大脑能够感知世界并改变世界的躯体。

1. 引言:从“聊天机器人”到“数字员工”

ChatGPT 刚出来时,它只能陪你聊天。
但如果你问它:“现在的天气怎么样?”它会说:“我的数据截止到 2023 年…”。
因为它没有工具
Agent(智能体)的出现,标志着 AI 从 Passive (被动问答) 转向 Active (主动行动)。它不再只是生成文本,而是开始执行任务

2. 核心概念:工具使用 (Tool Use)

2.1 Function Calling (函数调用)

这是 Agent 的核心机制。LLM 本身不能联网,不能查库。但它可以生成一个“调用指令”

  • 流程
    1. 用户:查询北京天气。
    2. LLM:思考后发现自己不知道,但知道有一个工具叫 get_weather(city)。于是输出:Call: get_weather("Beijing")
    3. 系统:拦截这个输出,在后台运行 Python 代码查天气,拿到结果 25℃
    4. 系统:把结果喂回给 LLM。
    5. LLM:生成最终回答:“北京今天 25 度。”

💡 比喻:想象一个坐在密室里的指挥官。他看不见外面。
但他手边有一排按钮(Tools):一个连着望远镜,一个连着机械臂。
他通过写纸条(Function Calling)告诉外面的助手按下哪个按钮,助手把看到的结果写在纸条上递回来。
Agent 驾驶舱


3. 技术解析:Agent 认知架构

3.1 ReAct 模式

ReAct = Reason (推理) + Act (行动)
这是最经典的 Agent 思考循环:

  1. Thought: 用户想买票,我需要先查时刻表。
  2. Action: 调用 query_train_schedule
  3. Observation: 查到了,有 G123 次列车。
  4. Thought: 现在我要帮用户下单。
  5. Action: 调用 book_ticket
    … 循环直到任务完成。

ReAct 循环

3.2 记忆系统 (Memory)

  • Short-term Memory: 上下文窗口。记录当前的 ReAct 思考过程。
  • Long-term Memory: 向量数据库。记录用户偏好、历史任务经验。

4. 工业实战:框架选型

现在开发 Agent,不需要从零手写 ReAct 循环,有很多成熟框架。
| 框架 | 特点 | 适用场景 | 复杂度 |
| :— | :— | :— | :— |
| LangChain | 老牌,大而全,生态最丰富。但抽象层级过高,调试困难(”LangChain Hell”)。 | 快速原型验证,常规 RAG | ⭐⭐⭐⭐⭐ |
| LangGraph | LangChain 的升级版。基于图论(Graph)构建状态机。逻辑清晰,控制力强。 | 复杂的、有循环逻辑的生产级 Agent | ⭐⭐⭐⭐ |
| AutoGen | 微软出品。主打多智能体协作(Multi-Agent)。可以让“程序员Agent”和“测试Agent”吵架来写代码。 | 复杂的自动化编程任务 | ⭐⭐⭐ |

工程师建议
如果你在做生产级应用,强烈推荐 LangGraph。相比于 LangChain 的黑盒 Chain,LangGraph 的状态机模式(State Machine)让你能精确控制 Agent 的每一步跳转,debug 极其方便。


5. 总结与预告

  • 本章总结
    • Function Calling 是 LLM 连接真实世界的桥梁。
    • ReAct 循环赋予了 AI 解决多步复杂问题的能力。
    • 多智能体协作(Multi-Agent)是未来的方向。
  • 下章预告
    Agent 需要工具,但每接一个工具都要写一堆胶水代码吗?有没有一种通用的标准,让所有 AI 都能即插即用所有工具?下一章《连接协议与生态:MCP 标准解析》,我们将介绍 Anthropic 刚刚推出的革命性协议。
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×