Notes

AI Agent 全栈开发学习路线图 (Roadmap)

目标受众:Web 全栈开发者 (具备 HTTP, JSON, DB, 异步编程基础) 当前阶段:AI Agent 零基础入门 -> 能够独立开发复杂 Agent 应用

第一阶段:大模型交互基础 (The "Hello World" of AI)

在这个阶段,你需要脱离 Web UI (如 ChatGPT 网页版),学会通过代码与 LLM (大语言模型) 进行“裸”交互。理解 LLM 本质上是一个“概率预测函数”。

1.1 LLM 基础概念科普

  • 什么是 LLM:理解 Token (词元) 的概念,Context Window (上下文窗口) 的限制。
  • Prompt Engineering (提示词工程)
    • Zero-shot, One-shot, Few-shot prompting。
    • Chain of Thought (CoT) 思维链。
    • System Prompt vs User Prompt 的区别。
  • Temperature & Top_p:理解控制输出随机性和创造性的参数。

1.2 OpenAI API 协议 (行业标准)

这是目前所有 LLM 都在兼容的接口标准,必须精通。

  • Chat Completions API
    • 掌握 messages 数组结构 (role: system, user, assistant)。
    • 理解 API 的无状态性 (Statelessness) —— 为什么每次都要发历史记录?
  • Completions API (Legacy):了解即可,知道它与 Chat API 的区别(单次补全 vs 对话)。
  • Streaming (流式传输)
    • Server-Sent Events (SSE) 协议原理。
    • 如何在前端/后端处理 delta 数据块,实现“打字机”效果。
  • Embeddings API:理解如何将文本转化为向量 (Vector),这是 RAG 的基石。

1.3 结构化输出 (Structured Output)

让 LLM 不再只会瞎聊,而是生成 JSON,这是接入现有系统的关键。

  • JSON Mode:强制模型输出合法的 JSON 字符串。
  • Function Calling (核心)
    • 定义 tools schema。
    • 理解模型如何“请求”调用函数,以及开发者如何“执行”函数并回传结果。
    • 思考:Output Parser (正则解析) vs Function Calling (原生支持) 的优劣。

第二阶段:Agent 核心架构 (从 Chatbot 到 Agent)

Agent = LLM + Planning + Memory + Tools。这一阶段是让模型具备“手脚”和“大脑”。

2.1 Tool Use (工具调用能力)

  • 基础工具封装:编写一个简单的 Python/Node.js 函数(如查询天气、读取本地文件),并通过 Function Calling 让 LLM 自动调用。
  • 实战项目:Mini Cursor (CLI版)
    • 目标:让 LLM 能够读取代码文件、理解内容、并调用文件系统 API 修改代码。
    • 难点:如何处理文件读取的 Token 消耗?如何保证修改的准确性?

2.2 Memory (记忆管理)

解决 Context Window 有限的问题。

  • Short-term Memory:简单的消息列表传递。
  • Long-term Memory 策略
    • Buffer Window:只保留最近 N 轮对话(截断)。
    • Summary:让 LLM 定期总结之前的对话内容(总结)。
    • Vector Store:将历史对话存入向量库,按需检索(检索)。

2.3 Planning (规划能力)

让 Agent 解决复杂问题,而不是单步操作。

  • ReAct 模式 (Reason + Act):学习 Agent 如何“思考 -> 行动 -> 观察结果 -> 再思考”。
  • Plan-and-Solve:先生成完整计划,再逐步执行。
  • Reflection (反思):Agent 执行出错时,如何让它自我修正?

第三阶段:RAG (检索增强生成) - 给 Agent 外挂知识库

RAG 是目前企业级应用最广泛的技术,解决了 LLM 知识滞后和幻觉问题。

3.1 向量与数据库

  • Vector Database (向量数据库)
    • 学习 Milvus (生产级)、Chroma (轻量级) 或 pgvector (PostgreSQL插件)。
    • 核心概念:Collection, Dimension, Metric Type (L2, IP, Cosine)。
  • Embedding Models:OpenAI text-embedding-3, HuggingFace 本地模型。

3.2 RAG 核心流程 (ETL for AI)

  • Document Loading:处理 PDF, Markdown, HTML 等格式。
  • Text Splitting (切分)
    • 为什么不能直接切?
    • 学习 RecursiveCharacterTextSplitter (按语义结构切分)。
    • 学习 MarkdownHeaderTextSplitter
  • Retrieval (检索)
    • 相似度搜索 (Similarity Search)。
    • MMR (最大边际相关性) 去重。
  • Rerank (重排序):检索出 100 条后,用高精度模型精选前 5 条。

3.3 实战项目:电子书/技术文档问答助手

  • 搭建 Milvus 环境。
  • 编写脚本将文档向量化入库。
  • 构建 RAG 链:用户提问 -> 检索相关片段 -> 组装 Prompt -> LLM 回答。

第四阶段:协议标准与高级生态 (MCP & Frameworks)

全栈开发者需要关注标准化和复用性,避免重复造轮子。

4.1 MCP (Model Context Protocol)

这是 Anthropic 提出的新标准,旨在统一 AI 连接数据的接口,非常重要。

  • MCP 基础:理解 Client, Server, Host 的架构。
  • 跨进程调用:学习如何通过 stdio 或 SSE 连接本地/远程的 MCP Server。
  • 实战
    • 部署一个 Filesystem MCP Server
    • 部署一个 Browser MCP Server (让 Agent 能控制浏览器)。
    • 使用 LangChain/LangGraph 复用现有的 MCP Server (如高德地图 MCP)。

4.2 开发框架选择 (LangChain vs 其它)

  • LangChain / LangGraph
    • 优点:生态最丰富,组件最全。
    • 缺点:抽象层过厚,调试困难(全栈开发者可能会觉得“黑盒”)。
    • 重点学习:LangGraph (基于图的状态机,更适合构建复杂 Agent)。
  • Vercel AI SDK (前端全栈首选):
    • 极度适合 Next.js/Node.js 开发者。
    • useChat, streamText 等 API 非常符合 Web 开发直觉。
  • LlamaIndex:专注于数据索引和 RAG,数据处理能力强于 LangChain。

第五阶段:工程化与部署 (Production)

从 Demo 到产品的最后一步。

5.1 评估与监控 (Eval & Ops)

  • LangSmith / LangFuse
    • 追踪 Agent 的思考过程 (Trace)。
    • 统计 Token 消耗和成本。
    • 评估回答质量 (让 LLM 给 LLM 打分)。

5.2 部署架构

  • 后端服务:FastAPI (Python) 或 NestJS/Express (Node.js)。
  • 模型部署 (可选):学习使用 Ollama 在本地跑 Llama 3 / Qwen 等开源模型,替代 OpenAI API 降低开发成本。

学习资源推荐

  1. 官方文档 (必读): OpenAI API Docs, Anthropic MCP Docs.
  2. 教程: DeepLearning.AI 的短课程 (Andrew Ng 出品,质量极高且免费)。
  3. 代码库: LangChain 官方示例, Vercel AI SDK 示例。

建议的学习路径顺序

  1. Python/Node.js 脚本裸调 OpenAI API (弄懂原理)。
  2. 实现简单的 RAG (弄懂向量检索)。
  3. 手写一个简单的 ReAct Loop (弄懂 Agent 循环)。
  4. 学习 LangGraph/Vercel AI SDK (使用框架提效)。
  5. 研究 MCP (扩展能力边界)。
cd ..