00 — 导论 / An Introduction

AGENT

智能体

一个能自己决定下一步做什么的程序。它不会回答一次就结束——而是观察环境、做出计划、调用工具、检查结果,然后带着新的认知继续下一轮。

  • 章节05
  • 阅读时长约 6 分钟
  • 难度入门
01

先看清它不是什么What an agent is not

语言模型本质上只会做一件事:给定一段文本,预测接下来最合理的文本。它没有手,没有长期记忆,也没有一个"目标"可以为之坚持。

你问一句,它答一句。上下文窗口关上,一切归零。这个过程是无状态的、单次的,也是被动的——它永远在等你开口。

智能体做的事情,是把模型放进一个循环里:给它一个目标,给它几件工具,给它一个能记住事情的地方,然后放手让它自己跑。模型从"被调用的函数"变成了"做决定的那个角色"。

智能体 = 模型 + 循环 + 工具 + 状态
— 缺任何一项,它都会退化回一次性的问答
02

一切从观察开始The control loop

智能体的全部魔力,来自一个会重复的循环。每一轮它都做四件事,然后把结果喂回给下一轮的自己。

01观察Observe
02思考Reason
03行动Act
04反馈Reflect
↻Control
Loop
  1. 观察 · Observe

    读取当前状态:用户说了什么、上一步返回了什么、文件里现在有什么。循环的入口永远是事实,而不是想象。

  2. 思考 · Reason

    模型在这一步权衡:目标还差多远?有哪些可用手段?下一步做哪一个最划算?

  3. 行动 · Act

    输出一个具体动作——调用某个工具、写一段代码、给出答复。这是循环里唯一会改变外部世界的一步。

  4. 反馈 · Reflect

    把行动的结果读回来,判断成功还是失败。成功了推进目标,失败了换一条路——然后回到观察。

03

支撑循环的四根柱子Four pillars

循环是骨架,但光有骨架跑不起来。下面这四样东西,决定了智能体是只能聊天,还是真能干活。

PILLAR 01

Tool Use工具调用

模型本身只能生成文本。工具让它伸手触到外部世界:查数据库、发请求、跑代码、读写文件。选哪个工具、传什么参数,都由模型在循环中自己判断。

决定它能做什么
PILLAR 02

Memory记忆

上下文窗口是短期记忆,装得下这一轮任务的来龙去脉;外部存储是长期记忆,装得下跨会话的经验与事实。没有记忆的智能体会在每一步重新犯同样的错。

决定它记得多久
PILLAR 03

Planning规划

把一个模糊的大目标拆成可执行的小步骤,并随时根据新信息调整顺序。好的规划不是一次列完清单,而是在每一步重新评估还剩下什么。

决定它走多远
PILLAR 04

Reflection反思

检查自己刚才的输出是否真的解决了问题,而不是看起来像解决了。这是区分"能用"和"可靠"的分界线,也是最容易被省略的一步。

决定它靠不靠谱
04

四层结构The stack

从下往上看,一个智能体系统通常由四层构成。上层负责判断,下层负责执行;出错时,问题往往不在最上面那一层。

Layer 04
环境Environment

真实世界及其后果:用户、数据库、外部 API、文件系统。它不关心你的智能体有多聪明,只如实返回结果。

Layer 03
工具Tools

环境之上的受控接口。每个工具都有清晰的输入输出契约,以及一份写给模型看的说明——模型靠这份说明决定何时使用它。

Layer 02
编排Orchestration

驱动循环的那套机制:状态管理、步数与成本上限、失败重试、权限校验,以及什么时候该停下来交还给人类。

Layer 01
模型Model

负责推理与生成的那部分。它给出判断,但不保证判断是对的——所以上面三层必须做好验证与兜底。

05

三种形态,别用错Chatbot / Workflow / Agent

并非所有任务都需要智能体。流程稳定时,写死的编排更便宜、更可控;只有在路径无法预先确定时,自主决策才划算。

表 1 · 三种形态的能力边界
维度 单次问答 工作流 智能体
步骤数量 一次 固定,预先写死 动态,边走边定
谁决定下一步 人 预设的流程 模型自己
工具使用 无 有,但路线固定 有,且由模型自选
失败之后 需要人重新提问 报错并中断 换个方法继续尝试
成本可预测性 高 高 低,需要设上限
适合的场景 分类、改写、摘要 稳定且重复的流程 目标开放、路径未知
先用工作流解决问题;只有当流程本身无法预先写死时,才值得上智能体。
— 自主性是一种成本,不是一种优点