从零理解 AI Agent:Agent 到底是什么?

56 阅读4分钟

《从零理解 AI Agent》系列 · 第 1 / 7 篇 。 下一篇:[Agent Loop——Agent 的心跳]


一、从一次对话说起

你肯定用过 ChatGPT:你问一句,它答一句,像发微信一样。这叫一问一答。

但现在有一种新的 AI 产品,比如 Claude Code。你在终端里跟它说一句话,它会自己跑完一整套流程,最后给你一个结果。这叫一问,走一系列流程,给出答案。

两者的本质区别是:谁在掌握循环。

1.1 AI 应用的三种形态

目前的人机协作形态大致有三种,理解了它们,你就知道 Agent 到底特殊在哪:

1. ChatBot(聊天机器人) 人发一条,AI 回一条。AI 完全被动,你说一句它动一下。

2. Copilot(副驾驶) 人在工作时,AI 弹出建议,人选择是否接受,接受了才执行。方向盘在人手里,AI 只是提示。

3. Agent(智能体) AI 在开车,人坐副驾驶。 你只需要说清楚目的地。

举个例子。你是一个开发者,对 AI 说:

"帮我把项目从 Express 迁移到 Hono"

接下来会发生什么?

AI:(开始思考)好,我需要先看一下现在的路由结构……
AI:(读文件)读取 src/routes/index.ts
AI:(分析)发现 15 个路由,3 个中间件……
AI:(跑命令)pnpm add hono
AI:(改文件)重写 src/routes/index.ts
AI:(跑测试)pnpm test
AI:(发现报错)有两个测试挂了,看看是什么问题……
AI:(修 bug)修复类型不匹配的问题
AI:(再跑测试)全部通过
AI:搞定了,一共改了 8 个文件。

看到了吗?人一句话,AI 跑很多轮。每一轮它都在做同一件事:想一步,做一步,看一步。

用公式表达就是:

人一句话 → 【Think(想)、Act(做)、Observe(看)】循环 → 完成,汇报

这就是大名鼎鼎的 ReAct 模式:Reasoning(推理)+ Action(行动)+ Observation(观察)。

1.2 一次 Agent 调用背后发生了什么?

上面那个例子还比较简单。我们再看一个更真实的场景,你在终端对 Claude 说:

"帮我把 src/utils.ts 里的 formatDate 函数重构一下,把 momentjs 库替换成 dayjs 库。"

一个合格的 Agent 要完成这件事,至少要过五关:

第一关:它得会"想"。 先决定做什么:读文件、分析内容、查看 package.json 里有没有 dayjs(没有就安装)、改代码、跑测试。想一步、做一步、看一步,循环往复。

第二关:它得有"手"。 光想没用,它得能读文件、跑命令。所以它需要调用 Read 工具读文件、用 Bash 工具跑命令、用 Edit 工具改代码。工具的定义、调度、并发的控制、权限的管理,共同组成了一个 Tool System(工具系统)。

第三关:它得"记得住"。 假设这次重构要改 15 个文件,改到第 10 个文件时,它必须记得前 9 个已经改过了,不能重复操作。可是 LLM 的上下文窗口是有限的,前面的信息越来越多、塞不下怎么办?这就需要上下文工程(Context Engineering)——它被称为 Agent 的大脑供氧系统,决定了大脑能接收多少养分、处理多少信息。

第四关:它得有"长期记忆"。 第一次重构时你告诉它"我们项目用 pnpm 装依赖",它得记住。下次你开一个全新对话,它还得记得这条规矩,不能用 npm。这就是 Memory System——跨会话的长期记忆。

第五关:复杂任务一个人搞不定。 主 Agent 在开发的同时,可能还要读上万行的代码库。读着读着上下文就爆了。怎么办?它可以 fork 出一个子 Agent,专门负责读代码库、做分析,把结果压缩成一两千 token 再交回主 Agent。这就是 Multi-Agent System——注意,多 Agent 不是"一人分饰多角",而是多个拥有独立上下文的 Agent 在协作。

除此之外,还有一堆工程问题:危险指令要拦截(权限)、关键节点要能插入检查(Hook)、API 挂了要重试、用户 Ctrl+C 退出要保存状态、模型陷入死循环要能检测……这些统称 Harness Engineering。

1.3 Agent 的六大核心能力

把上面的分析提炼一下,就得到了 Agent 的六大核心能力:

能力作用比喻
Agent Loop想一步,做一步,看一步的循环心跳
Tool System读文件,跑命令,调 API手脚
Context Engineering管理有限的上下文窗口大脑供氧
Memory System跨会话的长期记忆记忆力
Multi-Agent拆任务、分上下文团队协作
Harness Engineering权限、Hook、重试、退出、生命周期骨架