Appearance
AI 概念地图
Prompt、RAG、Agent、Embedding、微调、Eval、MCP、上下文压缩、记忆系统——这些词你可能都见过,单独拿出来也大致能说两句。但放到一起,它们之间到底是什么关系?谁先谁后?哪些是同一层的东西,哪些根本不在一个维度上?这页把它们按工程逻辑排了一遍。
这页怎么用
- 如果你是第一次进入站点:先通读一遍,知道有哪些核心概念、彼此怎么连。
- 如果你已经在读某一章:回到这里,对照看它在整条主线里的位置。
- 如果你准备做项目:先确认当前项目主要用到的是哪几个模块,不要把所有概念一次摊开。
学 AI 越学越乱,很多时候问题不在概念本身,在于还没分层就开始找方案。模型答错了去调 Prompt,但真正缺的可能是检索;系统失控了去换更大的模型,但真正缺的是终止条件和权限边界。先把问题放回正确的层级,再去找方案,效率会高很多。
第一层:模型与上下文
所有后续概念都建立在一个基础上:模型到底在做什么,输入和输出的边界在哪里。
LLM
大语言模型可以先理解成"根据已有上下文继续预测下一个 token 的系统"。它擅长语言生成、总结、抽取和推理,但并不天然拥有真实世界的最新事实,也不会自动知道你的业务规则。
- 对应章节:LLM 基础概念
Token 与 Context Window
Token 是模型处理文本时的基本单位,Context Window 是模型一次能看到的上下文范围。很多"模型突然变笨""前面说的话忘了""长文档效果变差"的问题,本质都和上下文限制有关。
Prompt
Prompt 可以理解成你给模型安排任务时的最小接口设计。角色、目标、约束、上下文怎么给,直接决定输出质量。
- 对应章节:Prompt 工程
两件事记住就够了:模型是上下文驱动的生成系统,不是事实仓库;塞更多上下文不等于效果更好。
第二层:把模型接进程序
模型能说话了,但光会说话在工程上没什么用。程序需要的是结构化数据、可调用的动作、统一的接口——这一层就是把模型的输出从"自然语言"变成"程序可以直接消费的东西"。
Structured Output
程序要消费的是数据结构,不是自然语言段落。Structured Output 就是让模型输出 JSON、Schema 或可校验字段。很多 AI 应用从 demo 走向系统化,第一步就卡在这里。
- 对应章节:Structured Output
Tool Calling
模型本身不会查天气、访问数据库、操作文件。Tool Calling 让模型负责决定"该调用什么工具",宿主系统负责真正执行,再把结果喂回去。
- 对应章节:Tool Calling
MCP
如果 Tool Calling 解决的是"单个工具怎么接",那么 MCP 更像"工具生态怎么标准化接入"。它让模型、宿主和工具之间的连接更统一,也更适合复杂开发环境。
- 对应章节:MCP 协议
三者在系统里的位置不同:Structured Output 管输出格式,Tool Calling 管执行动作,MCP 管工具生态怎么统一接入。
第三层:把知识接进模型
模型不知道你的业务知识怎么办?全塞进 Prompt 放不下,改模型参数成本又太高。这里要解决的就是:外部知识怎么送进去。
Embedding 与向量检索
Embedding 可以把文本映射成向量,用于做语义相似度搜索。它本身不是 RAG,但通常是 RAG 的检索基础。
- 对应章节:Embedding 与向量检索
RAG
RAG = Retrieval-Augmented Generation。先从资料库检索相关内容,再把检索结果放进上下文中给模型生成答案。它适合解决"模型需要用到外部知识,但又不值得直接改模型参数"的问题。
微调
微调更适合改变模型的输出风格、任务分布、格式偏好或某类能力表现,拿它来"让模型记住一堆资料"通常不是最优选。很多开发者一开始会把 RAG 和微调混在一起,所以必须分清边界。
"该 RAG 还是该微调"是这一层最常见的纠结点。判断很简单:你缺的是外部知识接入,还是模型行为分布的调整?前者先看检索,后者才轮到微调。大多数业务场景里,检索比微调早用得上。
第四层:从单轮调用走向多步系统
前三层里,模型基本上还是"你问一次,它答一次"。真正做项目你会发现,很多任务一次调用搞不定——模型需要连续规划、调工具、看结果、再决定下一步。
我一开始也是直接冲 Agent 去的,结果发现大部分"不好使"的问题,根源都在检索没做好或输出格式不稳定。先把前三层走扎实,进这层才不会一直在救火。
Agent
Agent 可以理解成"让模型在一个循环里连续做决策"。它通常涉及计划、调用工具、读取结果、继续下一步,因此能力更强,但也更容易失控。
- 对应章节:Agent 基础原理
- 对应项目:Research Agent
多 Agent
多 Agent 把不同角色、不同任务分给多个智能体协作完成。它通常出现在任务较复杂、需要分工和审查的场景里,跟"单个 Agent 做得更多"是不同的思路。
- 对应专题:多 Agent 协调
记忆系统
当系统需要跨会话保留偏好、规则、历史或知识时,就涉及记忆系统。核心问题是:什么该记、记多久、怎么读回来。简单存聊天记录远远不够。
- 对应专题:持久化记忆系统
状态保存、循环控制、跨轮记忆——每一个都容易出 bug,而且出了 bug 比前几层更难定位。这不是吓唬人,是事实。
第五层:工程化与风险控制
功能能跑了,但能跑和能上线是两回事。幻觉、注入攻击、效果退化——上线之前这些问题绕不开。
Hallucination
模型在不确定时仍然会给出看似合理的答案,这就是幻觉。它是一个系统性风险,做真实业务就一定要面对。
- 对应章节:AI 幻觉
Prompt Injection
当模型开始读网页、文档、用户输入甚至工具返回结果时,外部内容就可能反过来影响模型行为。Prompt Injection 要防的就是"外部输入不可信"这个问题。
Eval
如果没有评测,你只会知道"这次看起来不错",却不知道下次更新是不是悄悄把效果弄坏了。Eval 把 AI 功能变成可以回归、可以比较、可以持续优化的系统。
- 对应章节:AI 应用评测
系统设计
Prompt、工具、知识库、安全、日志、评测同时出现时,你做的已经是一个完整 AI 系统了。
- 对应章节:AI 应用系统设计
做 demo 的时候这层可以先不管,上线之前绕不开。
第六层:开发者工作流
很多开发者最先接触 AI 的场景,其实是拿 AI 辅助写代码,而不是做独立 AI 产品。这一层算是主线能力在软件工程现场的一次反向应用。
AI Coding
AI Coding 更像一套新的开发工作流——任务拆解、上下文准备、工具边界、验证、回归、风险控制都涉及。跟 Prompt 工程有重叠,但重点偏向软件开发流程本身。
- 对应专题:AI Coding 规划与实践
对很多开发者来说,这层反而是日常最先接触到的。
六层之间的关系
Prompt / Structured Output / Tool Calling— 模型怎么被程序稳定调用Embedding / RAG— 外部知识怎么接入模型Agent / 多 Agent / 记忆系统— 多步任务怎样组织Hallucination / Prompt Injection / Eval / 系统设计— 上线后怎么保证可靠微调 / AI Coding— 主线稳定后,能力定制和工作流怎么继续升级
阅读顺序:先搞清模型是什么 → 怎么接进程序 → 知识和工具怎么接 → 多步系统和工程化。顺序错了容易变成追热点词汇,按这个顺序走,很多概念会自然互相解释。
下一步怎么读
- 想先把主线学扎实:去看 AI 应用开发 或 Vibe Coding
- 想尽快做出应用:去看 综合项目
- 想知道整条路线怎么安排:去看 学习总计划 和 学习路线图
用这张图排查问题
遇到问题先想它属于哪一层,再去找方案。一直在改 Prompt 但效果还是不稳定,通常说明问题不在第一层——可能缺检索,也可能是输出格式没约束好。
RAG、Agent、MCP 经常被放在一起讨论,但它们解决的是不同层次的问题。主线里很多看起来"高级"的概念,回头看都是前面几层自然长出来的。