本文从“是什么、为什么需要它、底层怎么运作、和其他概念有什么关联”四个维度,系统拆解学习计划中的核心概念。内容较长,但保证你看完能真正理解,而不是只记名词。


第一阶段:夯实应用基石(与大模型“对话”和“定规矩”的能力)

1. Prompt Engineering(提示词工程)

  • 是什么:不是简单的“问问题”,而是通过设计特定的输入模板(角色、格式、示例),精准激活大模型在预训练阶段学到的对应能力
  • 底层逻辑:大模型本质是“概率预测机”。好的提示词相当于设置了“先验概率”和“输出约束”(如 JSON 格式)。例如加一句“你是资深财务分析师”会让模型调取参数空间里所有财务类语料的权重,显著提升专业回答的概率。
  • 为什么重要:这是成本最低的“微调”,不需要训练数据就能 0 成本大幅提升准确率。

2. 思维链(CoT)与思维树(ToT)

  • CoT 是什么:强制模型在输出最终答案前,先输出中间推理步骤(“Let’s think step by step”)。
  • 运作原理:它将复杂问题拆解为串行的多个简单子问题。每一步的推理结果都作为下一步的上下文,极大减少了“跳跃性误差”(比如算术题算错)。
  • ToT 是什么:在 CoT 的基础上引入了搜索算法(如 BFS/DFS)。模型在每一步探索多个可能的“推理分支”(像树枝分叉),然后给每个分支打分,放弃死路,保留最优路径。适合解决“24点游戏”或“逻辑谜题”这类需要回溯验证的问题。

3. Agent(智能体)与 AutoGen

  • Agent 的本质:一个无限循环的“大脑”。它不只是“回答一次”,而是自主规划 -> 调用工具 -> 观察结果 -> 再规划,直到任务终结。
  • AutoGen(微软框架):核心特色是多智能体对话(Multi-Agent Conversation)。你可以定义“程序员 Agent”、“测试员 Agent”、“项目经理 Agent”,它们之间通过对话协作完成任务,而不是单一 Agent 单打独斗。

4. ReAct 模式(Reasoning + Acting)

这是 Agent 最主流的底层循环范式。关键点是“思考与行动交错”

  1. Thought(思考):模型在内部用自然语言推理下一步该做什么。
  2. Action(行动):模型输出一个具体的工具调用指令,如 search("巴黎天气")
  3. Observation(观察):系统将工具返回的结果直接塞回给模型。
  • 精髓:观察结果会覆盖掉之前的错误推理,让模型基于真实的外部反馈修正路径,而不是凭空瞎想,从而有效缓解大模型的“幻觉”。

5. 记忆(Memory)

在 Agent 中,记忆分为两类:

  • 短期记忆(短期上下文):存放在 Prompt 的 System 或 History 中,受限于上下文窗口(如 DeepSeek 的 64K/128K)。简单处理是“滑动窗口”丢旧留新。
  • 长期记忆(外部存储):当对话太长发核心信息丢失时,使用向量数据库存储历史对话摘要,需要时通过语义检索拉回。

高级策略:还包括“总结记忆”(Summarization),即每轮对话后让模型压缩历史,只保留关键决策点,节省 Token。

6. MCP(模型上下文协议)

  • 定位:AI 界的“USB-C 接口”。以前接入一个外部数据库要写大量定制化代码,MCP 定义了标准化的通信格式(JSON-RPC)。只要服务端实现 MCP 协议(暴露 Tools、Resources、Prompts),任何支持 MCP 的 Agent 都能直接“即插即用”挂载这个服务,彻底解决了 AI 应用和外部工具之间的碎片化集成问题。

第二阶段:掌握 Agent 核心(让模型“动手”与“查资料”)

7. Function Call vs. Skill vs. MCP(最难区分的三角关系)

  • Function Call(协议层):是大模型输出格式的约定。模型不执行代码,只返回一个结构化的 JSON(例如 {"name": "add", "args": {"a": 1, "b": 2}}),告诉宿主程序“请帮我调用这个函数”。这是模型与应用程序之间的接口。
  • Skill(应用层封装):是提前预制好的 Prompt 模板 + 对应业务代码。比如“发送邮件 Skill”,里面既包含“提取收件人、标题、正文”的提示词,也包含调通 SMTP 服务器的 Python 脚本。Agent 调用 Skill 时,背后的代码会真正把邮件发出去。
  • MCP(互联协议层):是服务器与 Agent 框架之间的标准化协议。如果你用 MCP 开发了一个“文件系统服务器”,那么无论是 Claude Desktop、LangChain 还是 Spring AI,只要是遵循 MCP 协议的客户端,都能挂载它。

一句话总结Function Call 定义“模型怎么说”,Skill 定义“应用程序怎么做”,MCP 定义“不同应用之间怎么互通”。

8. RAG(检索增强生成)全流程深入

  • 为什么要 RAG:大模型的预训练知识是静态的(截止日期)。RAG 让模型能“翻阅资料”回答私域或时效性问题。

运行五步法(重点)

  1. 分片(Chunking):将长文档切块。切太短丢失上下文,切太长影响检索精度。常用策略是“按语义边界(段落/句子)切分”。
  2. 向量化(Embedding):用嵌入模型将文本块转为浮点数向量(如 768 维或 1536 维)。关键点:该向量捕捉了文本的“语义坐标”(“苹果”和“橘子”在向量空间中距离近,“苹果”和“汽车”距离远)。
  3. 索引(Indexing):向量数据库(如 Milvus、Pinecone)构建索引,支持高效的近似最近邻(ANN)搜索,能在毫秒级从亿万数据中找出最相似的 Top-K 个块。
  4. 召回(Retrieval):将用户问题也转为向量,去数据库里找余弦相似度最高的几个块。
  5. 重排(Rerank):这是精度救星。初召(ANN)追求速度,精度略差。重排用更重的 Cross-Encoder 模型,把候选块和用户问题拼接起来计算真正的相关性得分,重新排序,最后把得分最高的 1-3 块喂给大模型生成答案。

9. LangChain 与 Spring AI(框架本质)

  • LangChain:核心抽象是 Chain(链)。它把“调用 LLM”、“调用向量库”、“处理输出”都变成可拼接的组件。它的终极产品是 LangGraph(下文会讲),用于构建带状态循环的复杂 Agent,而非简单的线性链。
  • Spring AIJava 世界的 LangChain。它使用 Spring 生态的 RestClientApplicationContext,通过注解注入不同模型(如通义千问、ChatGPT)。优势是能让 Java 后端工程师零基础接入 AI,不需要学 Python。

第三阶段:模型优化与部署(让代码跑起来)

10. AI Coding 与 Claude Code(代码智能体)

  • AI Coding 的精髓:不再是“代码补全”,而是 “代码库的维护代理”。它能理解项目结构、依赖关系。
  • Claude Code 杀手锏:它是一个终端原生 Agent。它能直接执行 Bash 命令、读取整个项目树(Tree-sitter 解析语法)。当你给它一个编译报错,它能自己修改 pom.xmlpackage.json,运行 npm install,再重新编译,直到绿灯通过。这种“闭环调试”能力远超常规插件。

11. Spec Coding(规范驱动开发)

这种范式是 AI 编程的工程化保证。原则是“先文档,后代码”。

  1. 意图明确:用自然语言写“我想要一个支持限流的网关”,而非直接说“写个 Gateway 类”。
  2. 结构化规格:使用 Gherkin(Given-When-Then)或特定模板,让需求无歧义。
  3. 多步精化:先让 AI 生成设计文档,Review 通过后,再让 AI 根据设计文档生成代码。这样生成的代码质量远高于一步到位。

12. LangGraph(复杂流程管理)

  • 普通 Chain 是无环有向图(DAG)(线性或串行)。LangGraph 是循环图(Cyclic Graph)。它把 Agent 的每一步抽象成“节点(Node)”和“边(Edge)”,支持 if-else 跳转、循环重试。例如“代码运行报错 -> 跳转到修复节点 -> 修复后再跳转到测试节点”。它内置了状态持久化,支持人机协同(Human-in-the-loop),即执行到关键节点时暂停,等人工审批后再继续。

第四阶段:行业前沿(模型瘦身与定制)

13. 蒸馏(Knowledge Distillation)

  • 原理:教师模型(如 175B 的 GPT-4)输出 “软标签(Soft Labels)”(即概率分布,例如预测“猫”概率 0.7,“狗”概率 0.3,而非硬标签 0/1)。学生模型(如 7B 的小模型)去拟合这些软概率,学到的不只是答案,更是“教师是怎么思考边界模糊样本的”。这使得小模型能以 10% 的参数量,达到大模型 90% 的能力。

14. 微调技术详解(SFT / LoRA / QLoRA)

  • SFT(监督微调):最传统的方式。用大量人工标注的“问答对”重新训练模型全部参数,效果好但极贵(需 8×A100 显卡)。
  • LoRA(低秩适配)冻结原模型,在 Transformer 的权重矩阵旁插入两个小矩阵(A 和 B)。训练时只更新这两个小矩阵。因为矩阵秩很低(如 r=8),参数量只有原模型的 0.1% ~ 1%,一张 4090 就能跑。
  • QLoRA:在 LoRA 基础上加了量化(Quantization)。把原模型加载成 4-bit 精度(原本是 16-bit),显存占用暴降。同时引入了 NF4(一种正态分布的 4-bit 数据类型)双量化(二次量化压缩常数项),保证量化后精度损失最小。
  • DPO(直接偏好优化)革命性方法。传统 RLHF(基于人类反馈的强化学习)需要先训练一个奖励模型(Reward Model),再用 PPO 策略优化,极其复杂且不稳定。DPO 直接用“偏好数据”(A 回答比 B 回答好)推导出损失函数,绕过奖励模型,用 SFT 同级别的算力就能完成对齐训练。

15. vLLM(推理加速)

  • 核心是 PagedAttention。大模型推理时,每个 Token 的 Key-Value 缓存(KV Cache)占用巨量显存。传统方法会碎片化。vLLM 借鉴操作系统的虚拟内存分页,将 KV Cache 分页管理,使显存利用率提升 2~4 倍,同时支持连续批处理(Continuous Batching),即前一个请求生成 Token 时,显存空隙能塞入新请求,极大提高吞吐量。

写在最后:这些概念如何串联成一个完整的 AI Agent 系统?

  • 前端/交互:用 Prompt Engineering + ReAct 规划任务。
  • 能力扩展:通过 Function Call/Skill 联动本地系统,通过 MCP 跨服挂载外部服务。
  • 外部知识:靠 RAG(向量数据库 + 重排) 提供精准资料。
  • 开发方式:用 LangGraph 编排复杂流程,用 Claude Code 辅助写集成代码。
  • 生产落地:如果大模型太贵,用 蒸馏 出小模型;如果用私有数据,用 LoRA/QLoRA 微调;最后用 vLLM 部署上线。

这套链路走通,你就完全理解了现代 AI 应用的全栈开发逻辑。如果有哪个具体环节(比如 RAG 的分块策略、LoRA 的秩怎么选)你还想深究,欢迎继续交流。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐