第1章:Agent 的本质 - 你的 AI 为什么需要"手脚"?

92 阅读7分钟

[Day 01] 第 1 章:Agent 的本质 - 你的 AI 为什么需要"手脚"?

摘要:你跟 ChatGPT 聊过天吗?它很聪明,但为什么它不能帮你订机票?本文作为《AI Agent 开发实战》的第一篇,将带你穿透概念的迷雾,揭示 Agent 的本质——不是更会聊天的机器,而是能“自己干活”的数字员工。我们将拆解 Agent 的四大组件,并介绍从 L0 到 L5 的自主性分级。

1. 一个真实的痛点:Chatbot 的局限性

你跟 ChatGPT 聊过天吗?它很聪明,几乎什么都能答。但有个问题:你说一句,它回一句。你得不停地追问、引导、复制粘贴。

我第一次深刻意识到这个问题,是想让它帮我订机票

  • :"帮我订一张明天去上海的机票。"
  • :"好的,这是一些航班信息,您可以去携程预订。"

然后就没了。

说实话,这也不全怪它。订机票是一个有**“副作用”**的动作:要登录、要选航班、要填乘机人、要付款、还得确认退改规则。任何一步搞错,都是你买单。

所以在没有工具、没有权限、也没有“关键步骤要我确认”的机制时,它只能给你信息,没法替你下单。

这正是 Chatbot 和 Agent 的分水岭:

  • Chatbot:只负责陪聊,输出文本。
  • Agent:不是更会聊天,而是系统让它能安全地做事——能用工具、能拿到授权、关键节点会停下来问你确认、全过程可追溯。

2. Agent 到底是什么?

一句话定义

Agent 就是一个能自己干活的 AI。

更工程一点的定义:你给它一个目标、一个工具箱和一套边界(预算 / 权限 / 审批 / 沙箱),它在循环里推进任务,直到完成或停下。 0003页.jpg

不是你喂一句它答一句,而是你告诉它一个目标,它自己想办法完成:

  • 需要查资料?它自己去查
  • 需要写代码?它自己去写
  • 需要调 API?它自己去调
  • 中间出错了?它自己修

核心组件:Agent 的解剖学

听起来像科幻片?其实没那么玄乎。核心就四样东西:

Agent=大脑 (LLM)+手脚 (Tools)+记忆 (Memory)+主见 (Autonomy)\text{Agent} = \text{大脑 (LLM)} + \text{手脚 (Tools)} + \text{记忆 (Memory)} + \text{主见 (Autonomy)}

  1. 大脑 (LLM) :负责思考,决定下一步干什么。这是 Agent 的核心引擎。没有 LLM,Agent 就是个死板的脚本。
  2. 手脚 (Tools) :负责执行。比如搜索网页、读写文件、调用 API、操作浏览器。LLM 只会"想",Tools 让它能"做"。
  3. 记忆 (Memory) :负责记住之前发生了什么。短期记忆是当前对话的上下文,长期记忆是跨会话的知识积累。没有记忆,Agent 每次都从零开始,效率极低。
  4. 主见 (Autonomy) :这个最关键——它得自己做决定,不是你说一步它动一步。自主性是 Agent 和普通 Chatbot 的根本区别。

补充偏见:护栏 (Guardrails) 在生产系统里,你还需要一层“护栏”。它不是 Agent 的组件,但它决定 Agent 能不能上线:预算、权限、审批、审计、沙箱。没有护栏的 Agent,迟早从“自己干活”变成“自己闯祸”。

0004页.jpg

运行模式的区别

传统软件是确定性的:给定输入 A,必然产出 B。你写一个 if-else,它永远按这个逻辑走。 Agent 是概率性的:给定输入 A,它会"思考"该怎么做,可能产出 B,也可能产出 C。

  • 传统软件: 输入 → 固定逻辑 → 输出
  • Agent: 输入 → LLM思考 → 工具调用 → 观察结果 → 继续思考 → ... → 输出

0005页.jpg

3. 一个真实的例子:研究字节跳动

假设你让 Agent 做这件事: "帮我研究一下字节跳动,写一份分析报告。"

Chatbot 的做法: ChatGPT 会给你一段它训练数据里的信息,然后说:"如果需要最新信息,请自行搜索。" 完了。你得自己去搜索、整理、写报告。

Agent 的做法: 一个真正的 Agent 会这样运行:

  1. 第一步:任务分解

    • 用户目标: 研究字节跳动,写分析报告
    • 子任务拆解: 1. 搜索公司背景 -> 2. 查产品线 -> 3. 分析竞对 -> 4. 查财务 -> 5. 综合写报告
  2. 第二步:逐个执行

    • [执行子任务1]

      • 思考: 需要搜索背景信息。
      • 行动: 调用搜索工具,query="ByteDance company background"。
      • 观察: 返回10条结果,包含创始人、成立时间等。
      • 思考: 信息足够,存入记忆。
    • [执行子任务2]

      • 思考: 需要了解产品线。
      • 行动: 调用搜索工具...
    • [执行子任务4]

      • 思考: 需要财务信息。
      • 行动: 搜索 query="ByteDance revenue 2024"。
      • 观察: 找到财报分析文章...
  3. 第三步:自我检查

    • 检查清单: 公司背景(✓) 产品线(✓) 竞对(✓) 财务信息(✗ 不够详细,需补充)
  4. 第四步:综合输出

    • 把所有信息整理成结构化报告,交给你。

整个过程,你只说了一句话。剩下的,它自己搞定。

4. Agent 的自主性等级 (The Spectrum)

0006页.jpg

Agent 不是非黑即白的概念,而是一个谱系。我把它分成六个等级(非学术标准,仅作工程参考):

等级名称说明典型例子
L0Chatbot问一句答一句,无工具。ChatGPT 基础对话
L1Tool Agent能调用工具,但只是简单的"你让我查,我就查"。GPTs Actions
L2ReAct Agent(重点) 具备“思考-行动-观察”循环,能解决单线复杂问题。LangChain ReAct
L3Planning Agent(重点) 大任务先拆解计划,再逐个执行。BabyAGI
L4Multi-Agent(重点) 多个专业 Agent 分工协作(如 Supervisor 模式)。LangGraph, CrewAI
L5Autonomous模糊目标,长期自主运行,自我迭代。Claude Code (探索中)

本书覆盖范围:大多数人目前用的是 L0-L1。本书主要教你怎么构建 L2-L4。至于 L5,说实话,现在还没有真正可靠的 L5 Agent。谁说有,你可以持保留态度。

5. Agent 能做什么,不能做什么

我见过太多人把 Agent 捧得太高,好像它能干任何事。不是的。

✅ Agent 擅长的场景:

  • 目标明确:"帮我总结这篇文章"
  • 步骤可拆解:"按这个流程处理数据"
  • 结果可验证:"代码能跑就行"
  • 重复性高:"每天早上给我发简报"

❌ Agent 不擅长的场景:

  • 开放性创意:"帮我想个颠覆性的商业模式"(没有明确标准)
  • 主观判断:"这个设计好不好看"(需要人类审美)
  • 高风险决策:"帮我决定要不要投资"(责任归属问题)
  • 不可逆副作用:"删掉生产库"(一旦做错,损失不可逆)

"实习生测试"

一个简单的判断方法:

如果这个任务你交给一个刚入职的实习生,你能用文字清楚地告诉他怎么做(SOP),那大概率适合 Agent。 如果你自己都说不清楚"怎么算做好了",那 Agent 也搞不定。

6. 参考架构:Shannon

0009页.jpg

Shannon 它是一个三层架构的多 Agent 系统。

为什么选 Shannon?

  1. 生产级设计:不仅仅是 demo,它考虑了持久化、Token 预算、沙箱。

  2. 三层分离

    • Orchestrator (Go) :负责编排、调度。
    • Agent Core (Rust) :负责执行、隔离。
    • LLM Service (Python) :负责模型与工具生态。
  3. 覆盖全等级:从简单的 L1 任务到复杂的 L4 多 Agent 协作都能处理。

我们学习的目标是掌握设计模式。你完全可以用 LangGraph、AutoGen 或纯 Python 实现同样的逻辑。

7. 常见误区

0010页.jpg

  1. Agent = ChatGPT + 插件?

    • 不完全对。插件只是"工具",Agent 的核心是自主决策循环。能自己决定"什么时候用什么工具"才是关键。
  2. Agent 能替代人类?

    • 不能。Agent 是增强工具,不是替代品。它处理重复性任务,但需要人类设定目标和验收结果。
  3. Agent 越自主越好?

    • 不一定。自主性越高,不确定性越大。生产环境中,往往需要在"自主性"和"可控性"之间找平衡。

8. 总结与下期预告

今日要点:

  • Agent 定义:能自主完成任务的 AI 系统。
  • 四个组件:大脑 + 手脚 + 记忆 + 主见。
  • 核心区别:Chatbot 是“说”,Agent 是“做”。
  • 判断标准:通过“实习生测试”的任务才适合交给 Agent。

0012页.jpg