AI Agent(人工智能智能体)不是简单地把大语言模型接到聊天框里。一个能真正完成任务的 Agent,通常需要理解目标、拆解步骤、调用工具、读取外部知识、维护记忆,并在执行失败时调整策略。
学习 Agent 最容易遇到的问题是:框架很多,教程很多,但它们解决的问题并不一样。有的适合理解底层机制,有的适合看行业案例,有的适合跟着课程做项目,还有的适合企业级应用集成。
可以先用一张学习地图把这些项目放到合适的位置。
flowchart LR
A[理解 Agent 基础机制] --> B[手写一个最小 Agent]
B --> C[学习主流框架]
C --> D[做可运行案例]
D --> E[理解多智能体协作]
E --> F[接入真实业务场景]
B -.-> P1[Hello-Agents]
F -.-> P2[500-AI-Agents-Projects]
D -.-> P3[GenAI_Agents]
C -.-> P4[Hugging Face Agents Course]
C -.-> P5[Microsoft AI Agents for Beginners]
C -.-> P6[Ed Donner Agents]
Agent 到底在学什么
Agent 的核心不是“会聊天”,而是“能执行任务”。大语言模型负责推理和生成,但它本身不能直接访问数据库、浏览网页、调用系统命令或修改文件。Agent 框架要做的事,就是把模型的推理能力和外部工具连接起来。
一个典型 Agent 的执行循环大致如下:
flowchart TD
A[用户提出目标] --> B[LLM 理解任务]
B --> C[规划下一步动作]
C --> D{是否需要工具}
D -- 是 --> E[调用搜索、数据库、代码执行器等工具]
E --> F[观察工具返回结果]
F --> G[更新上下文或记忆]
G --> C
D -- 否 --> H[生成最终回答或执行结果]
常见概念可以先这样理解:
| 概念 | 含义 | 解决的问题 |
|---|---|---|
| ReAct | Reasoning + Acting,边推理边行动 | 让模型知道什么时候思考、什么时候调用工具 |
| Plan-and-Solve | 先规划步骤,再逐步执行 | 适合复杂任务拆解 |
| Reflection | 反思机制 | 执行失败后重新检查原因并修正 |
| Multi-Agent | 多智能体协作 | 把复杂任务拆给不同角色的 Agent |
| RAG | Retrieval-Augmented Generation,检索增强生成 | 让 Agent 使用外部知识库,而不是只依赖模型参数 |
| MCP | Model Context Protocol,模型上下文协议 | 用统一协议连接工具、数据源和模型应用 |
| Code Agents | 让模型直接生成代码完成任务 | 减少复杂 JSON 工具调用,提高表达能力 |
理解这些概念后,再看不同开源项目,就不会被框架名字绕晕。
6 个项目的定位对比
| 项目 | 适合学习什么 | 更适合谁 | 不太适合什么场景 |
|---|---|---|---|
| Hello-Agents | Agent 底层机制、从零实现框架、ReAct、Reflection、RAG、多智能体 | 想真正理解 Agent 怎么运行的人 | 只想复制现成业务案例的人 |
| 500-AI-Agents-Projects | 500+ 行业案例、应用方向、项目灵感 | 想找落地场景、做产品调研的人 | 想从零学代码实现的人 |
| GenAI_Agents | 40+ 可运行 Agent Notebook、LangChain、LangGraph、AutoGen、MCP | 想边跑边学的人 | 不喜欢 Notebook 学习方式的人 |
| Hugging Face Agents Course | 官方课程、smolagents、Code Agents、浏览器运行练习 | 想系统上课并快速动手的人 | 想专攻企业集成架构的人 |
| Microsoft AI Agents for Beginners | 企业级 Agent 课程、Semantic Kernel、AutoGen | 想学习微软技术栈和企业模式的人 | 只想了解轻量个人项目的人 |
| Ed Donner Agents | 6 周实践、OpenAI Agents SDK、CrewAI、LangGraph、AutoGen、MCP | 想横向比较多个框架的人 | 只想研究单一框架底层实现的人 |
1. Hello-Agents:从底层机制开始理解 Agent
GitHub 地址:
https://github.com/datawhalechina/hello-agents
Hello-Agents 是 Datawhale 开源的中文 Agent 教程。它的特点是没有一上来就让你调用 LangChain 或 LangGraph 的高级接口,而是先带你理解 Agent 的基本结构,再逐步过渡到主流框架。
这类学习方式很适合打基础。因为只会调用框架接口,很容易出现一种问题:代码能跑,但不知道为什么这么写;一旦工具调用失败、上下文变长、规划出错,就不知道该改提示词、改状态管理,还是改工具封装。
Hello-Agents 的价值主要在几个层面:
| 学习层次 | 内容 |
|---|---|
| 原生实现 | 使用 OpenAI API(应用程序编程接口)从零构建最小 Agent 框架 |
| 经典范式 | 理解 ReAct、Plan-and-Solve、Reflection 等机制 |
| 低代码平台 | 了解 Coze、Dify、n8n 等平台如何快速搭建 Agent 应用 |
| 工程框架 | 学习 LangGraph 这类框架如何控制复杂工作流 |
| 能力扩展 | 长期记忆、多智能体协作、RAG、上下文工程 |
一个最小 Agent 框架通常会包含这些模块:
flowchart LR
U[用户输入] --> P[Prompt 构造]
P --> M[LLM 推理]
M --> D{是否调用工具}
D -- 是 --> T[工具执行]
T --> O[观察结果]
O --> P
D -- 否 --> R[返回结果]
S[(短期上下文)] --> P
V[(长期记忆 / 向量库)] --> P
如果学习目标是“搞懂 Agent 为什么能自己做事”,Hello-Agents 适合作为起点。尤其是 ReAct 和 Reflection 这两部分,最好不要只停留在概念层面,而要看它们在代码里如何变成循环、状态和工具调用。
上手方式很直接:
git clone https://github.com/datawhalechina/hello-agents.git
cd hello-agents
进入仓库后,可以按章节顺序学习。更推荐的方式不是直接跳到高级框架,而是先跑通最小 Agent,再看 LangGraph、RAG、多智能体协作这些章节。
2. 500-AI-Agents-Projects:用 500+ 案例理解 Agent 能做什么
GitHub 地址:
https://github.com/ashishpatel26/500-AI-Agents-Projects
500-AI-Agents-Projects 更像一个 Agent 应用目录,而不是代码课程。它收集了超过 500 个 AI Agent 项目,并按医疗、金融、教育、DevOps 等垂直领域分类。
这类仓库适合解决另一个问题:不知道 Agent 该用在哪里。
很多人学习 Agent 时会默认从聊天机器人开始,但 Agent 的价值不只是在对话里给答案。它更适合处理“需要多步骤决策和工具调用”的任务,例如:
| 场景 | Agent 可能承担的角色 |
|---|---|
| 医疗 | 辅助整理病历、查询医学知识、生成就诊摘要 |
| 金融 | 分析财报、监控市场信息、生成投资研究草稿 |
| 教育 | 个性化答疑、学习计划生成、作业反馈 |
| DevOps | 日志分析、故障定位、自动化运维脚本生成 |
| 营销 | 用户分群、内容生成、自动化触达流程设计 |
这个项目还收录了 CrewAI、AutoGen、Agno、LangGraph 等框架的实际应用。它的学习方式不应该是从头到尾逐项浏览,而是带着问题筛选:
| 目标 | 使用方式 |
|---|---|
| 找产品方向 | 按行业目录查看已有项目 |
| 选技术框架 | 对比同类项目用了哪些 Agent 框架 |
| 避免重复造轮子 | 搜索是否已有相似实现 |
| 做竞品调研 | 看项目功能边界、交互方式和工具链 |
如果已经掌握基础代码实现,但还缺少落地场景,这个仓库很有用。它能帮你把思路从“我会写一个 Agent”推进到“这个 Agent 可以解决哪个具体问题”。
3. GenAI_Agents:用 Notebook 跑通 40+ Agent 实战
GitHub 地址:
https://github.com/NirDiamant/GenAI_Agents
GenAI_Agents 是 Nir Diamant 开源的 Agent 实战资源库,特点是案例多、路径清晰,并且大量内容以 Jupyter Notebook 的形式提供。
Notebook 对学习 Agent 很友好,因为 Agent 的行为通常不是一个函数调用就能解释清楚。它会经历提示词构造、模型输出、工具调用、观察结果、再次推理等多个步骤。Notebook 可以把这些中间状态拆开展示,方便观察每一步发生了什么。
它覆盖的内容包括:
| 方向 | 能学到什么 |
|---|---|
| 基础对话 Agent | 最小智能体结构、工具调用流程 |
| 复杂工作流 | 多步骤任务规划和状态管理 |
| LangChain | 常见链式调用和工具封装 |
| LangGraph | 图结构工作流、节点和边的控制 |
| AutoGen | 多智能体对话与协作 |
| MCP | 通过协议连接模型和外部工具 |
| 记忆与反思 | 让 Agent 保留上下文并修正错误 |
适合用这个仓库练习的人,通常已经知道 Agent 的基本概念,但还没有形成“遇到需求该怎么搭”的手感。可以从简单 Notebook 开始跑,再逐步看多智能体和 LangGraph 相关示例。
一个比较稳的练习顺序是:
flowchart TD
A[基础对话 Agent] --> B[工具调用 Agent]
B --> C[RAG Agent]
C --> D[带记忆的 Agent]
D --> E[Reflection Agent]
E --> F[LangGraph 工作流]
F --> G[Multi-Agent 系统]
学习时要特别关注每个案例的输入、状态和输出,而不是只看最终答案。Agent 工程里最容易出问题的部分,往往都藏在中间状态里。
4. Hugging Face Agents Course:理解 Code Agents 和 smolagents
GitHub 地址:
https://github.com/huggingface/agents-course
Hugging Face 官方的 Agents Course 是一套系统化智能体课程,完成章节和 Final Project 后可以获得 Hugging Face 的结业证书。它的一个核心方向是推广 smolagents,并强调 Code Agents 的开发方式。
传统工具调用通常让大语言模型输出结构化 JSON,再由程序解析 JSON 并调用对应工具。例如:
{
"tool": "search",
"arguments": {
"query": "LangGraph memory example"
}
}
Code Agents 的思路不一样:让模型直接生成 Python 代码来完成任务。代码本身可以表达条件判断、循环、数据处理和多个工具组合,比一层层 JSON 调用更灵活。
两种方式可以这样对比:
| 方式 | 模型输出 | 优点 | 代价 |
|---|---|---|---|
| JSON 工具调用 | 工具名 + 参数 | 易于限制格式,方便审计 | 复杂逻辑表达起来啰嗦 |
| Code Agents | Python 代码 | 能自然表达复杂流程,代码量少 | 需要更严格的执行隔离和安全控制 |
Code Agents 的执行流程大致如下:
sequenceDiagram
participant U as 用户
participant L as LLM
participant R as 代码运行环境
participant T as 外部工具
U->>L: 提出任务
L->>L: 分析需要的步骤
L->>R: 生成并提交 Python 代码
R->>T: 调用搜索、文件、计算等工具
T-->>R: 返回工具结果
R-->>L: 返回执行结果
L-->>U: 汇总最终答案
Hugging Face 课程还有一个优势:很多练习可以直接在 Hugging Face Spaces 上运行,不一定要先搭复杂本地环境。对于刚接触 Agent 的学习者,这能减少环境配置带来的阻力。
它还包含一些有趣的实战任务,例如训练或构建能玩游戏的智能体。这样的案例不是为了炫技,而是因为游戏环境天然包含状态、动作、反馈和策略,非常适合理解 Agent 的闭环执行过程。
5. Microsoft AI Agents for Beginners:学习企业级 Agent 开发模式
GitHub 地址:
https://github.com/microsoft/ai-agents-for-beginners
Microsoft AI Agents for Beginners 是微软推出的入门课程,围绕智能体开发设计了 10 节内容。它的重点不是单个玩具案例,而是把 Agent 放进企业软件开发语境里。
企业级 Agent 和个人 Demo 的差别很大。个人 Demo 只要能完成一次任务就算成功,企业应用还要考虑权限、日志、稳定性、错误处理、审计、数据隔离和与现有系统集成。
这个课程主要涉及两个微软生态中常见的方向:
| 技术 | 作用 |
|---|---|
| Semantic Kernel | SDK(软件开发工具包),用于把大语言模型能力集成到现有应用代码中 |
| AutoGen | 多智能体协作框架,适合处理多个 Agent 之间的任务分工和对话 |
Semantic Kernel 的关注点是“如何把模型能力变成应用的一部分”。这和单独写一个聊天机器人不一样,企业系统里通常已经有用户体系、数据库、业务服务和权限模型,Agent 需要嵌入这些系统,而不是绕开它们。
可以把企业级 Agent 应用理解成这样的结构:
flowchart LR
U[业务用户] --> A[应用系统]
A --> K[Semantic Kernel]
K --> L[LLM]
K --> T[业务工具 / 插件]
T --> S[(企业系统)]
S --> T
T --> K
K --> A
A --> U
G[日志与审计] --- A
P[权限控制] --- T
AutoGen 更关注多个 Agent 之间的协作。例如,一个 Agent 负责规划,一个 Agent 负责写代码,一个 Agent 负责审查结果,另一个 Agent 负责执行测试。多智能体协作不是简单地多开几个模型实例,而是要设计角色、通信方式、终止条件和冲突处理。
这个课程适合想把 Agent 放进真实应用的人,尤其适合关注企业集成、稳定性和工程结构的开发者。
6. Ed Donner Agents:6 周横向比较主流 Agent 框架
GitHub 地址:
https://github.com/ed-donner/agents
Ed Donner 的 agents 项目是一套 6 周实践课程,重点是通过连续项目学习构建和部署自主 AI Agent。它的特点是覆盖面宽,会横向接触多个主流框架和新技术。
涉及的框架包括:
| 框架 / 技术 | 学习重点 |
|---|---|
| OpenAI Agents SDK | 使用 OpenAI 官方 SDK 构建 Agent |
| CrewAI | 通过角色分工组织多智能体协作 |
| LangGraph | 用图结构管理复杂 Agent 工作流 |
| AutoGen | 多智能体对话与协作 |
| MCP | 用统一协议连接工具和上下文资源 |
如果已经学过一个框架,再学习这个项目会更有收获。因为它不是只告诉你“某个框架怎么用”,而是能帮助你比较不同框架的抽象方式。
例如,同样是多智能体任务,不同框架的关注点可能不同:
| 问题 | CrewAI 更常见的表达 | LangGraph 更常见的表达 | AutoGen 更常见的表达 |
|---|---|---|---|
| 谁来做任务 | 角色、职责、团队 | 节点、状态、边 | Agent、消息、对话 |
| 流程怎么控制 | 任务编排 | 图结构流转 | 对话驱动 |
| 适合任务 | 分工明确的协作任务 | 状态复杂、流程可控的任务 | 多角色讨论和迭代任务 |
项目还支持在 Cursor 中学习和实践。对习惯 AI 编程工具的人来说,这种方式可以把“看课程”和“改代码”放在同一个工作流里。
该怎么选择学习顺序
如果目标是系统掌握 Agent,而不是只收藏仓库,可以按这个顺序推进:
flowchart TD
A[Hello-Agents:理解底层机制] --> B[GenAI_Agents:跑通多个 Notebook 案例]
B --> C{学习目标}
C -- 想做轻量项目 --> D[Hugging Face Agents Course]
C -- 想做企业集成 --> E[Microsoft AI Agents for Beginners]
C -- 想比较框架 --> F[Ed Donner Agents]
D --> G[500-AI-Agents-Projects:寻找落地场景]
E --> G
F --> G
不同目标可以直接选对应路线:
| 目标 | 推荐路线 |
|---|---|
| 想搞懂 Agent 底层原理 | Hello-Agents |
| 想快速看到大量应用方向 | 500-AI-Agents-Projects |
| 想边运行边学习 | GenAI_Agents |
| 想学习 Code Agents | Hugging Face Agents Course |
| 想做企业级应用 | Microsoft AI Agents for Beginners |
| 想比较多个主流框架 | Ed Donner Agents |
学 Agent 时要重点验证的 5 件事
只把示例跑通还不够。Agent 项目真正进入可用状态前,至少要检查这些问题。
| 检查点 | 要看什么 |
|---|---|
| 工具调用是否稳定 | 参数错误、工具超时、接口失败时有没有重试和降级 |
| 上下文是否可控 | 长对话后是否会丢失关键信息,是否需要摘要或记忆模块 |
| 权限是否清晰 | Agent 能调用哪些工具,是否可能误删文件或访问敏感数据 |
| 结果是否可追踪 | 每一步推理、工具调用、返回结果是否有日志 |
| 成本是否可接受 | 多轮调用、多智能体协作和 RAG 检索都会增加调用成本 |
Agent 的学习路线可以很短,也可以很深。短路径是调用一个框架完成 Demo;深路径是理解模型、工具、状态、记忆、工作流和安全边界之间的关系。上面 6 个项目分别覆盖了这些方向,按目标选择,比同时追所有框架更容易建立完整知识体系。