Agent 101:从聊天机器人到自主智能体 / Agent 101: From Chatbots to Autonomous Agents
一、范式演进:六十年的钟摆,从 ELIZA 到 Claude Computer Use
如果要理解"Agent 究竟是什么",最简洁的方式不是给它下一个抽象定义,而是沿着时间线把"会说话的程序"摆一排:1966 年的 ELIZA、2011 年的 Siri、2023 年的 AutoGPT、2024 年的 Claude Computer Use。这四件东西看起来都"能对话",但它们在底层范式上的差异,比 iPhone 14 和诺基亚 3310 之间的差异还要大。把它们排成一条线,我们才看得清 Agent 这条主线到底从哪儿分叉出来。
1.1 符号主义时代:会说话的规则引擎
1966 年,MIT 的 Joseph Weizenbaum 写出了 ELIZA。它通过极简的模式匹配(pattern matching)和替换规则,模拟一位罗杰斯学派心理治疗师。你说"I am sad",它回"Why do you say you are sad?";你说"My mother hates me",它回"Who else in your family hates you?"。ELIZA 没有任何世界知识,没有任何推理能力,没有任何记忆。它唯一做的事情,是把输入句子里的人称代词做几次替换,然后套用一个模板。这是反应式范式(Reactive Paradigm)的原型——输入 → 规则 → 输出,没有循环,没有状态,没有目标。
注意 ELIZA 的局限:它甚至不知道自己在和谁说话,也不知道自己刚才说过什么。每一次回复都是一次"无状态函数调用"。但讽刺的是,正是这种"无意义但拟人"的对话模式,让最早的图灵测试拥趸们兴奋不已——这也提醒我们,对"智能"的判断从来都不是纯技术问题。
时间跳到 1970–1990 年代,AI 主流进入符号主义 GOFAI(Good Old-Fashioned AI)的鼎盛期,研究者们打造了一批审慎式智能体(Deliberative Agent):STRIPS 规划器、SOAR 认知架构、BDI(Belief-Desire-Intention)模型。这些系统的共同点是:内部维护一个显式的世界模型(world model),通过逻辑推理或搜索算法生成动作序列。它们是"深思熟虑型"的智能体——先想清楚再动手,能下国际象棋、能规划机器人路径、能证明数学定理。但它们的问题同样致命:知识获取瓶颈(knowledge acquisition bottleneck)。人类专家要把所有规则手写出来,而真实世界的规则数量是无限的。
1.2 连接主义的退潮与 LLM 的拐点
1990 年代后期到 2010 年代,统计学习与深度学习兴起,智能体研究反而沉寂了。原因很简单:神经网络是黑盒,没法显式表示信念和意图;强化学习虽然能训练游戏智能体(Atari、AlphaGo),但样本效率和泛化能力都很差。这段时间的"智能体"主要活在游戏 AI 和机器人控制里,对话系统则变成了另一条独立的技术线——Siri、Alexa、Google Assistant。
Siri 是 2011 年随 iPhone 4S 发布的语音助手。它的架构是典型的混合范式(Hybrid Paradigm):底层是语音识别(ASR)+ 自然语言理解(NLU),中间是意图分类与槽位填充(slot filling),顶层是一个手写的"技能路由器",把请求分发到对应的 API(设闹钟、发短信、查天气)。它能完成"有限的、有明确 API 的"任务,但跨不出预设的边界。你问 Siri"帮我写一首关于秋天的七律",它要么拒绝,要么给你一个搜索引擎结果列表。Siri 没有真正的"理解",它是一个高度工程化的意图路由器。
2017 年 Transformer 架构出现,2020 年 GPT-3 诞生,2022 年 ChatGPT 引爆公众认知。到 2023 年 4 月,Significant Gravitas 发布了 AutoGPT——这是 Agent 概念第一次大规模进入公众视野。AutoGPT 的核心理念极其简单:让 GPT-4 自己做规划、自己调用工具、自己迭代,直到任务完成。它本质上是一个循环:LLM 思考 → 输出动作 → 执行动作(搜索、写文件、运行代码)→ 把结果喂回 LLM → 继续。这个循环就是我们在本章要反复强调的"Agent 本质"。
但 AutoGPT 也暴露了 LLM 驱动 Agent 的所有毛病:幻觉、目标漂移(goal drift)、循环死锁、成本爆炸(一次任务可能烧掉几十美元 API 费)。它在 2023 年火了一阵,又迅速被诟病为"演示惊艳、实战拉胯"。然而它的历史地位不可动摇——它把"Agent = LLM + 循环 + 工具"这套范式写进了大众的肌肉记忆。
2024 年 10 月,Anthropic 发布了 Claude Computer Use,让模型直接控制桌面操作系统的截图与键鼠。这个范式把"工具调用"推到了极致:不再依赖预设 API,而是让模型像人一样看屏幕、点鼠标、敲键盘。它属于认知范式(Cognitive Paradigm)的成熟形态——感知(截图)→ 推理(要做什么)→ 行动(点击/输入)→ 观察(下一帧截图)→ 循环。紧随其后,OpenAI 的 Operator、Google 的 Project Mariner、阿里云的 Qwen-Agent-Computer 都沿着这条路线跟进。智能体研究从"调用 API"正式升级为"操作环境"。
1.3 四种范式横向对比
为了把上面的演进压缩成一个可对比的框架,我们用一张表来归纳。这里采用学术界常用的分类法,将智能体范式分为四类:
| 范式 (Paradigm) | 代表系统 | 决策机制 | 记忆 | 典型任务 | 主要缺陷 | |----------------|---------|----------|------|----------|----------| | 反应式 Reactive | ELIZA、Brooks subsumption | 刺激-响应规则 | 无 | 闲聊、简单 Q&A | 没有目标、没有规划 | | 审慎式 Deliberative | STRIPS、SOAR、BDI | 符号推理 + 搜索 | 显式世界模型 | 规划、下棋、定理证明 | 知识获取瓶颈、脆弱性 | | 混合式 Hybrid | Siri、Alexa、智能客服 | 意图分类 + 路由 + 规则 | 短上下文 + 槽位 | 语音助手、客服机器人 | 跨不出预设 API | | 认知式 Cognitive | AutoGPT、Claude Computer Use、Devin | LLM 推理 + 工具调用循环 | 长上下文 + 向量记忆 | 开放任务、自主研究 | 幻觉、成本、可靠性 |
这张表是后续所有讨论的锚点。我们要讨论的"现代 Agent",特指第四类——认知范式。前三类依然重要(尤其是工业界的 Hybrid 范式仍是主流),但它们不属于本书核心。
下面这张 Mermaid 图展示了认知 Agent 的核心数据结构流向,同时也对比了传统 Chatbot 的单次请求-响应:
```mermaid flowchart LR subgraph Chatbot U1[User Input] --> L1[LLM] L1 --> R1[Response] end subgraph Agent P[Perception] --> T[Thinking / LLM] T --> A[Action / Tool Call] A --> O[Observation] O --> T O --> Done{Task Done?} Done -- No --> T Done -- Yes --> Out[Final Answer] end ```
这张图的关键信息只有一个:Chatbot 是单向流(User → LLM → Response),Agent 是循环流(Perception ↔ Thinking ↔ Action ↔ Observation)。循环是 Agent 与 Chatbot 的分水岭,不是模型大小,不是提示词技巧,不是工具数量。后面的章节我们会反复回到这个循环,并逐步把它拆成可工程化的组件。
---
二、Agent 的精确定义:三个判据与一个光谱
"Agent"这个词已经被滥用得面目全非。市场人员说"我们的 ChatBot 是 AI Agent";产品经理说"RAG 增强的搜索是 Agent";投资人则把任何用了 LLM 的东西都叫 Agent。我们必须先收紧定义,否则后续讨论全是空中楼阁。
2.1 三个判据:目标、循环、环境
一个系统要被称作 Agent,必须同时满足以下三个判据:
判据一:目标导向(Goal-Oriented) 系统被赋予一个明确或不明确的目标,它的所有行为都应当朝着该目标收敛。传统程序也是目标导向的("读文件→处理→写文件"),但程序的目标是被硬编码的,而 Agent 的目标通常以自然语言或半结构化形式给出,且由系统自身去拆解和解释。"帮我调研一下 2024 年 LLM 推理优化的最新进展"——这是一个典型的开放式目标,Agent 需要自行判断什么叫"最新进展"、调研到什么程度算完成、如何决定输出格式。
判据二:循环决策(Loop-Based Decision Making) 系统不是一次性输出结果,而是通过多次感知-思考-行动循环逐步逼近目标。这一条是 Agent 与 Chatbot 的核心区别。Chatbot 是 $f: \text{input} \mapsto \text{output}$ 的一次性映射;Agent 是 $\text{state}_{t+1} = g(\text{state}_t, \text{observation}_t)$ 的迭代过程。注意,这里的"循环"并不一定要显式地用 `while` 实现,它可以是隐式的——只要模型在生成过程中实际进行了多轮推理(例如 Chain-of-Thought),它就具备了循环的精神。但只有当循环跨越了工具调用边界,把外部世界的反馈拉回来,这个循环才真正变成 Agent 循环,而不是仅仅是 Chain-of-Thought。
判据三:环境交互(Environment Interaction) 系统能够通过工具或动作改变环境状态,并从环境中获得反馈。这个反馈可以是搜索引擎的查询结果、文件系统的读写结果、API 的返回值、屏幕截图的变化、物理机器人的传感器数据。没有环境交互的 Agent 不存在——即便是一个"自我对话"的 Agent,它的环境至少也是它自己的上下文窗口。
把这三个判据合起来,我们得到一个工作定义:
> Agent 是一种具备目标导向、循环决策、环境交互能力的计算系统,它通过感知环境、推理规划、调用工具的反复迭代,自主地完成任务。
这个定义排除了什么?它排除了"用 prompt 包装的 ChatGPT"——单轮对话,没有循环,没有工具调用。它也排除了"传统软件程序"——程序有目标但没有自主推理。它还排除了"纯 RAG 系统"——RAG 是检索增强的单轮问答,没有循环决策(除非你把它塞进一个循环框架里)。
2.2 自主性光谱:从 Copilot 到 Fully Autonomous
"自主"(autonomous)这个词同样被严重稀释。在严谨的学术语境里,自主性是一个连续光谱,不是二元开关。我们用一个简单的分级体系来定位不同的 Agent 系统:
- **L0 - 纯 LLM**:用户输入,模型单次输出。无工具,无记忆。
- **L1 - Copilot**:人类主导,模型辅助。模型可以补全代码、改写句子、回答问题,但每一步都需要人类触发。GitHub Copilot 的代码补全模式是典型代表。
- **L2 - Task Agent**:给定一个明确任务,Agent 自主完成,但每一步可能要求人类确认。Devin、Cursor Agent 处于这一级。
- **L3 - Autonomous Agent**:给定一个高层目标,Agent 自主规划、分解、执行、纠错,中间不需要人类介入。AutoGPT 的设想是这一级,但实际表现远未达标。
- **L4 - Multi-Agent System**:多个 Agent 协同,各自承担不同角色,互相通信、互相校验。ChatDev、CrewAI、AutoGen 框架尝试实现这一形态。
- **L5 - AGI Agent**:具备通用任务能力、长期规划能力、自我改进能力。这是研究愿景,不是工程现实。
绝大多数今天被称为"Agent"的产品实际处于 L1 到 L3 之间。AutoGPT 名义上是 L3,但因为可靠性问题,实际只能算 L2 的不稳定版本。Claude Computer Use 在某些基准上接近 L3,但成本和延迟让大规模部署受限。
这个光谱的意义在于:它提醒我们讨论"Agent 能力"时必须先问"在哪个自主性层级"。一个 L1 Copilot 和 L4 Multi-Agent 系统的工程挑战、技术栈、风险模型完全不同,混在一起讨论只会让对话失效。
2.3 与 LLM 应用的关键边界
让我们把最容易混淆的四种 LLM 系统摆在一起,做一次精确切分:
| 系统类型 | 是否有循环 | 是否调用工具 | 是否修改环境 | 例子 | |----------|------------|--------------|--------------|------| | 基础 LLM Chat | ❌ | ❌ | ❌ | ChatGPT 网页版 | | RAG 系统 | ❌ | ✅(仅检索) | ❌ | 文档问答、客服知识库 | | Workflow + LLM | ⚠️(预定义) | ✅ | ✅ | LangChain LCEL 流水线 | | Agent | ✅(动态生成) | ✅ | ✅ | AutoGPT、Claude Computer Use、Manus |
注意第三行和第四行的区别——它们都有工具调用、都可能修改环境,关键区别是循环是否由 LLM 自主生成。Workflow 是开发者用代码写死的步骤序列,LLM 只是其中一个节点;Agent 是 LLM 在每一步决定"下一步该做什么",循环本身是动态的、可适应的。这一条边界,是判断一个系统是否"真正的 Agent"的最终判据。
---
三、核心能力图谱:感知、推理、行动、记忆
把 Agent 的"能力"拆开看,本质上就是四个动词:感知(Perceive)、推理(Reason)、行动(Act)、记忆(Remember)。所有复杂的 Agent 行为,都是这四个能力在不同尺度上的组合。我们逐一拆解。
3.1 四大能力的语义边界
感知(Perception):Agent 从环境中获取信息的能力。在文本 Agent 里,感知就是读用户的输入、读工具的返回值;在多模态 Agent 里,感知扩展为图像识别(截图、摄像头)、语音识别(麦克风)、传感器数据(机器人)。感知的关键不是"能不能读",而是"读了之后能不能结构化"。一个只会把原始文本塞进上下文的系统,感知能力是弱的;一个能识别"这段文字包含一个 URL、一个数字、一个时间戳"的系统,感知能力是强的。
推理(Reasoning):基于感知到的信息和记忆中的知识,生成下一步计划的能力。这是 LLM 发挥核心作用的地方,也是 Agent 智能的真正载体。推理能力包括:任务分解(把"调研 LLM 推理优化"拆成"读论文 → 总结 → 对比 → 写报告")、工具选择(在当前状态下应该调用哪个工具)、参数推断(调用搜索时该用什么 query)、结果评估(工具返回的结果是否回答了子问题)。这里有一个反直觉的洞察:推理能力的强弱,比模型参数量的多少,更能决定 Agent 的表现。一个用 GPT-4 但 prompt 写得很烂的 Agent,会被一个用 GPT-4o-mini 但 prompt 精心设计的 Agent 完爆。
行动(Action):把推理结果转化为对环境的实际操作。最常见的行动形式是工具调用(Tool Calling):调用搜索 API、读写文件、执行 shell 命令、调用其他 LLM、发送 HTTP 请求。Claude Computer Use 把"行动"推到了物理操作的层面——移动鼠标、敲键盘、点击按钮。行动的关键约束是可观测性:每个行动都必须能被追踪、被回滚、被审计。这是 Agent 系统工程化最复杂的一块,也是出错最多的地方。
记忆(Memory):跨越时间步保留和检索信息的能力。记忆分为几层:短期记忆(当前对话上下文,受限于 context window)、工作记忆(当前任务的中间状态,比如"我已经搜过 A、B、C,下一步该搜 D")、长期记忆(向量数据库存储的历史经验、用户偏好、过往案例)、情景记忆(特定事件的时间序列)。一个没有记忆的 Agent 就是金鱼——七秒之后又重新发现同样的问题。一个有完善记忆的 Agent,能从过去的失败中学习,能跨会话保留用户的偏好。
3.2 五件套组件:Brain、Memory、Tools、Planner、Loop
把上面的能力图谱落到工程实现,我们得到 Agent 的五件套组件:
1. Brain(大脑):通常是 LLM,负责推理和决策。是 Agent 智能的主要来源,但绝不是唯一来源。 2. Memory(记忆):短期 = 上下文窗口,长期 = 向量数据库 + 知识图谱。负责跨时间步保留信息。 3. Tools(工具):Agent 可调用的外部能力集合。每个工具必须有清晰的 schema(输入参数、输出格式、调用方式)。 4. Planner(规划器):负责任务分解和策略选择。在简单 Agent 里,Planner 与 Brain 是同一个 LLM;在复杂 Agent 里,Planner 可以是独立的模型或算法(如蒙特卡洛树搜索、PDDL 规划器)。 5. Loop(循环控制器):负责驱动感知-推理-行动的迭代循环,决定何时停止、何时调用人类、何时切换子任务。
这五件套的边界不是绝对的。在 LangChain、AutoGen、CrewAI 这些框架里,同样的功能可能被拆成不同的模块。但任何严肃的 Agent 架构讨论,最终都会回到这五个概念的某种组合。