freeCodeCamp:构建 AI 代理工作负载 - 完整的 2 小时速成课程
从零开始构建 AI 代理的全面教程:LLM 调用、记忆、工具、架构模式,以及为什么人的因素在 AI 世界中仍然重要。
为什么代理与 AI 之前的一切都不同
Rola 是 Tech42 的机器学习架构师(也是前神经科学博士),她带来了一堂关于代理式 AI 的大师课,穿透了所有炒作。这不是概念概述——而是一个包含可运行 Python 代码的实践教程,精确展示了代理与聊天机器人、工作流和传统机器学习有何不同。
关键洞见:"An agent has dynamic control flow devised by the LLM at runtime, whereas a workflow is predefined coded graphs."(代理具有由 LLM 在运行时设计的动态控制流,而工作流是预定义的编码图。)这一区别解释了何时使用代理(以及何时不使用)的所有问题。
**关于生成式 AI 热潮的独特性:**与之前需要技术技能的机器学习浪潮不同,"even my mother who has never touched a computer knows what ChatGPT is and uses it on her phone."(即使是我从未碰过电脑的母亲也知道 ChatGPT 是什么,并在手机上使用它。)这种普及之所以发生,是因为这些模型使用人类语言作为接口。
**关于什么变化使这一切成为可能:**三大支柱必须同时进步——数据(从兆字节到拍字节)、模型规模(从数百万到数万亿参数)、以及计算能力(从串行训练到通过 Transformer 实现的并行训练)。GPT-4 的 1.8 万亿参数训练了 3 个月。没有 Transformer 论文带来的并行化,我们现在还在等待。
**关于代理循环:**核心很简单——计划、行动、观察、重复。"You give it a task, it uses the LLM to plan and decompose that task, it acts with tools, observes the output, and loops until the solution is achieved."(你给它一个任务,它使用 LLM 来计划和分解该任务,它使用工具执行操作,观察输出,然后循环直到达成解决方案。)
每个代理需要的四个组件
本教程确定了所有代理实现中一致出现的要素:
- 目的/目标 - 它要解决的任务(系统提示)
- 推理/规划 - LLM 作为"大脑"
- 记忆 - 短期记忆(上下文窗口)和长期记忆(外部存储)
- 工具/动作 - 扩展 LLM 能力的函数、API、数据检索
**关于 LLM 的无状态性:**现场演示证明了这一点——问 LLM 你的名字,然后在对话后面再问一次。没有记忆管理,它就会忘记。这就是为什么代码需要将每一轮对话追加到上下文窗口中。
**关于工具扩展能力:**LLM 有训练截止日期。它们无法告诉你天气、当前日期或时间。工具通过让代理访问外部 API 来解决这个问题。演示展示了这一点:"现在几点?" → 工具调用 → "1:43。"
代理何时有效(何时无效)
这是最实用的部分——关于何时使用代理与工作流的决策框架:
在以下情况使用工作流:
- 关键任务或对错误敏感的应用
- 需要确定性结果的受监管行业
- 对延迟敏感的系统
- 对成本敏感的项目(更容易估算)
- 你确切知道如何解决问题
在以下情况使用代理:
- 可以容忍错误
- 执行路径难以编码
- 你需要更好的性能(代理循环 = 更好的平均结果)
- 成本不是主要约束
- 可以接受模型驱动的决策
需要问的关键问题:
- 任务路径是否可预测?
- 价值是否值得成本?
- 延迟是否关键?
- 错误容忍度是否可接受?
多代理架构:Supervisor 与 Swarm
本教程包含了两种架构模式之间的实时成本比较:
**Supervisor 架构:**一个 supervisor 代理将任务委托给专门的代理(加法、乘法、除法)。代理之间不能相互通信——一切都通过 supervisor 路由。结果:16 次跳转,10 次代理动作,6 次转移,约 8,000 个输入 token。
**Swarm 架构:**所有代理可以直接相互通信。结果:8 次交互,2 次转移,约 5,000 个输入 token。
**指导原则:**Swarm 对于简单任务更便宜。但随着复杂性增长,supervisor 架构变得更容易调试,因为解决方案空间更受约束。"If you can get away with a single agent, you should try to get away with a single agent just because of the overhead."(如果你能用单个代理解决问题,你应该尝试用单个代理解决,仅仅是因为开销。)
标准化推进:MCP、A2A、AGUI
代理接口正在被标准化:
- MCP (Model Context Protocol) - Anthropic 的工具和数据协议,现已与 OpenAI 一起捐赠给 Linux Foundation
- A2A (Agent2Agent) - Google 的代理间通信协议
- AGUI - 来自 Copilot、Crew AI 和 LangChain 的人机交互标准
"Think of it as a USB or HDMI portal. If interfaces are the same, we can plug and play different systems."(把它想象成 USB 或 HDMI 端口。如果接口相同,我们可以即插即用不同的系统。)这使得 MCP 中心成为可能,工具可以在整个生态系统中共享。
没有人愿意谈论的挑战
本教程没有回避真实问题:
来自 2025 年的事件:
- Replit 代理在代码冻结后删除了生产环境(回应:"对不起,我慌了")
- Air Canada 因聊天机器人的错误建议而被追责
- 据报道 400 亿美元的 GenAI 产品没有带来商业价值
**关于评估的复杂性:**有三个层次需要评估——LLM 本身(幻觉、准确性)、代理系统(工具选择、任务完成)、以及应用(延迟、成本、用户体验)。每个层次需要不同的评估方法。
**关于复合错误:**如果代理在复杂任务上走错方向,错误会累积。与具有可预测路径的工作流不同,代理调试可能非常复杂。
代理会抢走你的工作吗?莫拉维克悖论
Microsoft Research 2025 年 7 月的研究按 AI 适用性对工作进行了排名:
**高适用性:**校对员、编辑、数学家、数据科学家、Web 开发者 **低适用性:**护理助理、洗碗工、屋顶工、地板打磨工
这与莫拉维克悖论一致:对人类困难的事情对 AI 容易,反之亦然。人类在 6 个月时会爬,1 岁时会走。这些是古老的进化技能。国际象棋和哲学是新的且具有选择性的。AI 颠倒了这一点——它在 1997 年击败了国际象棋冠军,但仍然难以让机器人可靠地行走。
AI 世界的职业建议
实用要点:
- 学习 AI,不要害怕它 - 它是一种工具;我们如何使用它书写未来
- 基础知识不会过时 - 物理、数学、架构、网络仍然是必需的
- 向上爬抽象阶梯 - 定义问题、设计解决方案、对结果负责
- 系统思考 - 上下文窗口不够大,无法容纳整个代码库
- 成为博学者 - 拓宽你的知识面
- 找到利基 - AI 不擅长前沿或新颖的想法
- 专注于人的因素 - 建立信任、联系、网络
"AI is a junior assistant that's good with syntax but still needs a lot of guidance."(AI 是一个擅长语法但仍需要大量指导的初级助手。)以此对待它。
这堂代理式 AI 速成课的 8 个要点
- 动态控制流 - 将代理与工作流区分开的定义性特征
- 四个组件 - 目的、推理(LLM)、记忆和工具
- 何时使用工作流 - 关键任务、确定性、对成本敏感
- 何时使用代理 - 性能重要、路径复杂、可容忍错误
- 首选单个代理 - 多代理开销是真实的;如果可能就避免
- Swarm 与 Supervisor - Swarm 更便宜;Supervisor 在规模上更容易调试
- 标准化即将到来 - MCP、A2A、AGUI 正在创建生态系统互操作性
- 人的因素 - 网络、信任和联系是 AI 无法替代的
部署 AI 代理的组织的底线
这是从零开始构建代理最全面的免费资源。Rola 的方法——在框架之前展示原始 Python——揭示了 LangChain 和其他工具抽象掉的内容。架构之间的成本比较为架构决策提供了真实数据。
这个领域只有 2-3 年的历史。框架会变,模型会被弃用,最佳实践会演进。但基础——计划/行动/观察循环、记忆管理、工具集成、动态控制流——这些是值得深入理解的稳定模式。


