返回博客

Agent 到底是什么?智能体八问

·0xPM
AIAgent
系列AI 初探2 / 3
  1. 1AI初探:从传统开发者视角理解 AI
  2. 2Agent 到底是什么?智能体八问
  3. 3从 API、SDK 到 MCP:大模型时代的语义协议演进
  4. 查看系列 →

一、Agent 到底是什么?

最核心的一句话:

Agent = 能自主决策、连续行动、完成目标的 AI 系统

跟普通 LLM 的区别在于:

普通 LLMAgent
交互模式你问它答,单轮它自己规划、执行、迭代
工具使用无能调用工具(搜索、代码、API)
记忆无(context 窗口内)有持久记忆
目标导向回答当前问题完成一个任务目标
失败处理没有能感知失败并重试

二、Agent 的底层结构(四件套)

感知 → 规划 → 行动 → 反馈
  • 感知:读取输入(用户指令、环境状态、工具返回)
  • 规划:决定下一步做什么(ReAct、CoT、Tree of Thought)
  • 行动:调用工具 / 写代码 / 调 API / 操作界面
  • 反馈:观察结果,决定继续 / 修正 / 停止

这个循环可以跑很多轮,直到目标完成。


三、Agent 产品最核心的特征

只有三个,缺一个都不能叫真 Agent 产品:

1. 自主性(Autonomy)

不需要用户每一步都介入。给一个目标,它自己拆解、执行。这是和 Copilot(辅助工具)最本质的区别。

2. 工具调用(Tool Use)

光靠语言模型本身不够,Agent 必须能操作外部世界——搜索、写文件、调接口、执行代码。没有工具调用,就只是个聊天机器人。

3. 多步推理 + 错误恢复(Multi-step + Recovery)

真实任务不会一步成功。Agent 产品必须能处理中间失败,能 retry、能换策略。这是工程难点,也是产品设计难点。


四、最有用的一个理解框架

把 Agent 想成一个有目标的员工,而不是一个有问必答的工具:

  • 普通 LLM = 你问什么它答什么的实习生
  • Agent = 你交代一个任务、它自己想办法完成、遇到问题自己解决的员工

Agent 产品的核心设计问题因此变成:

  • 目标怎么传达?(任务输入设计)
  • 中间过程用户看不看得见?(可解释性/透明度)
  • 失败了谁来兜底?(Human-in-the-loop 设计)
  • 记忆怎么管理?(跨任务的上下文)

五、Agent 产品通用技术架构

从底层到上层,分五层:


第一层:模型层(Brain)

就是 LLM 本身,负责理解和推理。

  • 选哪个模型(GPT-4o / Claude / 开源)
  • 是否需要 Fine-tune
  • 推理策略:ReAct、CoT、Tree of Thought

PM 关注点:模型能力天花板决定 Agent 上限,换模型是最快的产品升级路径。


第二层:记忆层(Memory)

Agent 的"大脑存储",分四种:

类型是什么举例
In-context当前对话窗口内本轮聊天记录
External Memory向量数据库长期存储用户历史偏好
Episodic过去任务的执行记录"上次搜索失败用了这个策略"
Semantic结构化知识图谱GraphRAG、知识库

PM 关注点:记忆设计直接决定 Agent 能不能"越用越聪明",是产品留存的核心。


第三层:工具层(Tools)

Agent 的"手脚",让它能操作外部世界。

工具分三类: ├── 信息获取类:搜索、RAG检索、读文件、爬网页 ├── 执行操作类:写代码、调API、操作数据库、发邮件 └── 感知环境类:读截图、监听事件、获取链上状态

工具调用的标准协议现在基本是 MCP,这是工具层的基础设施。

PM 关注点:工具集合决定 Agent 的能力边界,工具的可靠性决定产品的稳定性。


第四层:规划层(Planning)

Agent 怎么把目标拆解成行动序列。

两种主要模式:

单 Agent 规划

目标 → 拆子任务 → 逐步执行 → 汇总结果

多 Agent 协作

Orchestrator(总指挥) ├── Sub-Agent A:负责搜索 ├── Sub-Agent B:负责写代码 └── Sub-Agent C:负责验证结果

Manus 就是多 Agent 架构,每个 Agent 专职一件事,Orchestrator 统一调度。

PM 关注点:单 Agent 简单但能力有限,多 Agent 强大但调试地狱。产品复杂度决定选哪个。


第五层:执行与反馈层(Action & Feedback Loop)

这是让 Agent 真正"自主"的关键。

执行动作 ↓ 观察结果(成功 / 失败 / 部分完成) ↓ 判断下一步 ├── 成功 → 继续下一个子任务 ├── 失败 → 重试 / 换策略 / 降级 └── 不确定 → 暂停,请求人工介入

Human-in-the-loop 就设计在这一层——什么时候 Agent 自己决策,什么时候必须问人。


完整架构图

用户输入 / 任务目标 ↓ ┌─────────────┐ │ 规划层 │ ← 任务拆解、策略选择 └──────┬──────┘ ↓ ┌─────────────┐ ┌──────────────┐ │ 模型层 │ ←→ │ 记忆层 │ └──────┬──────┘ └──────────────┘ ↓ ┌─────────────┐ │ 工具层 │ ← 搜索/代码/API/链上 └──────┬──────┘ ↓ ┌─────────────┐ │ 执行&反馈层 │ ← 结果观察、错误恢复 └──────┬──────┘ ↓ 成功完成 / 请求人工介入

最有用的 PM 视角

技术架构对 PM 的意义不是去实现,而是知道哪层出问题会导致什么产品现象:

用户抱怨根因在哪层
"记不住我的偏好"记忆层设计缺失
"任务做到一半卡住了"规划层 + 反馈层
"总是调错工具"工具层的描述/选择逻辑
"答案一本正经但完全错了"模型层能力上限
"我不知道它在干什么"缺少执行过程透明化的产品设计

六、Agent vs 工作流

最核心的区别:决策权在谁手里

工作流(Workflow)Agent
路径预先定义好运行时自主决定
决策者开发者/设计者模型本身
分支条件硬编码的 if/else模型推理出来的
适合场景流程固定、可预期目标明确、路径不确定
可靠性高(可预测)低(非确定性)
灵活性低高

一个比喻

  • 工作流 = 地铁,轨道固定,每站必停,快但只能去站点有的地方
  • Agent = 出租车,你说目的地,它自己找路,能去任何地方但可能绕路

现实中的混合地带

实际产品很少是纯 Agent,更多是工作流 + Agent 节点的混合:

固定流程:用户输入 → 意图识别 → 路由 ↓ [Agent节点] 自主完成子任务 ↓ 固定流程:结果格式化 → 输出

Coze、Dify 本质上都是这种混合架构——外层是工作流,内层节点可以挂 Agent。

工作流解决的是效率问题,Agent 解决的是不确定性问题。当任务路径无法提前穷举时,才真正需要 Agent。


七、主流 Agent 框架

分三类来看:

第一类:编排框架(管规划层+执行层)

LangGraph

  • 把 Agent 行为建模成有向图(节点=动作,边=条件)
  • 支持循环、条件分支、Human-in-the-loop
  • 覆盖层:规划层 + 执行&反馈层
  • 适合:需要精确控制流程的生产级 Agent

AutoGen(微软)

  • 多 Agent 对话框架,Agent 之间互相发消息协作
  • 覆盖层:规划层(多 Agent 协作)
  • 适合:多角色协作任务(写代码+review+测试)

CrewAI

  • 更高层的多 Agent 框架,用"角色+目标"定义 Agent
  • 覆盖层:规划层
  • 适合:快速搭原型,不适合精细控制

第二类:记忆框架(专攻记忆层)

Letta(原 MemGPT)

  • 专门解决长期记忆问题,有 in-context/archival/recall 三层记忆
  • 覆盖层:记忆层

Mem0

  • 轻量级持久记忆层,可以接入任何 Agent 框架
  • 覆盖层:记忆层

Zep

  • 偏向对话历史的结构化存储和检索
  • 覆盖层:记忆层

第三类:工具/集成框架(专攻工具层)

LlamaIndex

  • 核心是 RAG,但现在也支持 Agent + 工具调用
  • 覆盖层:工具层(信息获取)+ 部分记忆层

MCP(Model Context Protocol)

  • Anthropic 提出的工具调用标准协议
  • 覆盖层:工具层的接口标准

第四类:完整平台(All-in-One)

LangChain

  • 最早的 Agent 框架,覆盖几乎所有层
  • 但太重、抽象太多,生产环境问题多
  • 现在更多作为胶水层用

Haystack

  • 企业级,偏 RAG + Pipeline,也支持 Agent
  • 覆盖层:工具层 + 规划层

八、框架 vs 五层架构的对应

┌─────────────┬──────────────────────────────────────────┐ │ 层 │ 对应框架 │ ├─────────────┼──────────────────────────────────────────┤ │ 模型层 │ 不在框架范围,直接调 API(OpenAI/Anthropic)│ │ 记忆层 │ Letta、Mem0、Zep、LlamaIndex │ │ 工具层 │ MCP、LlamaIndex、LangChain Tools │ │ 规划层 │ LangGraph、AutoGen、CrewAI │ │ 执行&反馈层 │ LangGraph(最完整)、LangChain │ └─────────────┴──────────────────────────────────────────┘

没有任何一个框架完整覆盖五层,生产级 Agent 产品通常是:

LangGraph(规划+执行) + Letta/Mem0(记忆) + MCP(工具协议) + 直连模型 API(模型层)

评论

加载中…