开会也好,刷技术群也好,总有人甩出一串词:Agent、RAG、MCP、Skill、Embedding、幻觉……点头的人不少,真能分清谁管啥的却不多。听着像同一件事,拆开其实各管一段。
它们多半不是「又换了一个更聪明的 AI」,而是给同一个会说话的模型加配件:有的帮它查材料,有的借它一双手,有的教它按你们的规矩多走几步。
这篇就当一张装配图。全程只跟一件具体的事:
你对助手说:「按公司最新登录规章,改仓库里的接口说明,改完自测再给我看。」
后面每个词都回答同一句——这一步,AI 缺啥,它补啥。
一、先立一张图:AI 助手的能力一层层
把助手想成一台能组装的机器,芯是大模型,外面一圈圈配件:
从里到外(读图时可以从下往上):
- 大模型 — 会说话的芯
- Prompt / 上下文 / Token — 你怎么说、它一次能看多少
- Embedding + 向量库 — 把文字变成可检索的「意思指纹」
- RAG — 先开卷再答
- 工具调用 + MCP — 借手、统一插头
- Agent + Skill — 自己排工序 + 墙上的作业卡
后面词条按这个顺序拆;看到最后会整条串回去。
二、大模型 / LLM:AI 的嘴和脑
AI 缺什么: 一个能根据已喂进去的文字,继续往下写「像人话」的引擎。
它补什么: 语言能力本身——解释、起草、改写、总结。
比喻: 厨子很会炒菜,但冰箱里没有你们公司今天刚改的登录规章。
不是什么: 不是自动联网的百科全书,也不等于「装进聊天框」就变成会改仓库的程序员。
接到故事: 没有它,后面一切免谈;有了它,也只是「会说」,还不会自动按规章改文档。
一句话:大模型负责把话写圆;对不对、新不新,另说。
三、Prompt、上下文、Token:你怎么跟 AI 说话
Prompt(提示词)
AI 缺什么: 它不知道你这一次到底要干什么。
它补什么: 你的说明书 + 问题 + 约束(语气、格式、禁止事项)。
比喻: 点菜时说清楚「少辣、不要香菜」,厨子才不会自由发挥。
不是什么: 不是神秘咒语;写清楚比堆形容词有用。
上下文窗口(Context)
AI 缺什么: 一次对话里能同时「看见」的篇幅有限。
它补什么: 当前轮次里放得下的系统说明、历史消息、检索片段、工具结果。
比喻: 餐桌上的转盘——菜太多,早上来的那盘会被转下去。
不是什么: 不是永久记忆;窗口外的内容,它这轮等于没看见。
Token
AI 缺什么: 需要一把尺子量「吃进去 / 吐出来」有多长。
它补什么: 计费和长度限制的单位(大致是碎开的字词块,中英文切法不同)。
比喻: 不是按「字」买菜,是按「切好的块」计价。
不是什么: 不是智商点数;Token 多只表示这段文字更长或更碎。
接到故事: 你那句需求本身就是 Prompt;规章全文如果太长,塞不进窗口,就得靠后面的检索,而不是整本粘贴。
四、幻觉:话说圆了,不等于事发生了
AI 缺什么: 它优化的是「接下来哪个词更像」,不是「哪个事实已核实」。
幻觉补的认知: 让你知道——流畅 ≠ 正确。
比喻: 有人口才极好,能把没发生的事讲得像亲历。
不是什么: 不是「模型坏了才幻觉」;没外挂依据时,圆场是常态风险。
接到故事: 你若只问「我们登录锁定规则是啥」,它可能自信答「错 3 次锁 24 小时」——听着专业,和你们规章无关。
所以才需要后面的 RAG、人工审核,而不是神话「模型绝对诚实」。
五、Embedding 与向量库:给句子打「意思指纹」
Embedding(嵌入 / 向量)
AI 缺什么: 纯关键词搜索经常「用词不一样就找不到」。
它补什么: 把一段文字变成一串数字(向量),意思近的点得近。
比喻: 给每段规章按「气味」做指纹——「密码错误锁定」和「输错几次会封多久」气味相近。
不是什么: 不是另一种聊天模型;它是检索用的表示。
向量库
AI 缺什么: 指纹造出来还得存、得快查。
它补什么: 专存向量、按相似度召回的柜子(也可和关键词混合检索)。
比喻: 图书馆里按「味道相近」也能摸到书架,而不只靠书名四个字完全一致。
不是什么: 不是自动写文档的 Agent。
教学里用关键词也能演示「先找再答」;生产里 Embedding + 向量库更抗换说法。本地 Demo 故意用关键词,是为了零依赖、一眼看懂。
六、RAG:给 AI 临时开卷
RAG = Retrieval-Augmented Generation,检索增强生成。
AI 缺什么: 训练数据里没有你们今天的规章;硬背也容易幻觉。
它补什么: 先检索相关材料 → 塞进上下文 → 再让模型答。
比喻: 开卷考试——允许翻书,但书是你刚塞进去的那几页。
不是什么: 不是「自动干活的 Agent」;RAG 解决的是答得有据,不是自己去改仓库。
接到故事:助手应先捞出「登录失败锁定」「密码存储」相关条文,再谈怎么改接口说明。
最小直觉长这样(伪代码):
// 教学示意:检索 → 拼进 prompt → 再调用模型
function answerWithRag(question, docs) {
const hits = retrieve(question, docs); // 关键词或向量检索
const context = hits.map((d) => d.body).join("\n---\n");
const prompt = `
你只能根据下列公司规章回答;规章没有的内容请说「未知」,不要编造。
【规章】
${context}
【问题】
${question}
`;
return callLLM(prompt);
}
文末 Demo 会让你亲手点一次:不检索的瞎编 vs 检索后的摘录。
七、工具调用 / Function Calling:给 AI 借一双手
AI 缺什么: 纯文本模型改不了你磁盘上的文件,也跑不了测试。
它补什么: 模型可以提出「请执行某某动作」(读文件、写文件、跑命令);真正动手的是你的程序。
比喻: 厨子说「去冰箱拿鸡蛋」——嘴是模型的,手是服务员的。
不是什么: 不是模型自己长出了手;也不是「一说就魔法完成」。
示意:模型返回一个结构化调用,运行时去执行。
// 模型可能返回这样的「提议」(示意)
const toolCall = {
name: "read_repo_file",
arguments: { path: "docs/login-api.md" },
};
// 你的运行时执行,再把结果喂回对话
const fileText = await readRepoFile(toolCall.arguments.path);
接到故事:改接口说明、跑自测,都得靠工具,不能只靠「生成一段看起来像 Diff 的文字」。
八、Agent:从「答一句」到「为了目标多走几步」
AI 缺什么: 单轮问答不会自己看结果、再决定下一步。
它补什么: 一个循环——想一步 → 调用工具/检索 → 观察结果 → 再想,直到目标完成、失败或被你打断。
比喻: 不是只报菜名的点餐员,而是会自己排工序的助理:先翻规章、再开文件、再改、再测。
不是什么: 套了个 ChatGPT 皮肤 ≠ Agent;Agent 的关键是多步决策循环,不是聊天气泡样式。
极简骨架:
async function runAgent(goal, { tools, maxSteps = 8 }) {
let messages = [{ role: "user", content: goal }];
for (let i = 0; i < maxSteps; i++) {
const decision = await callLLM(messages); // 可能含 tool_calls
if (!decision.tool_calls?.length) {
return decision.content; // 认为做完了,给你看
}
for (const call of decision.tool_calls) {
const result = await tools[call.name](call.arguments);
messages.push({ role: "tool", name: call.name, content: result });
}
}
return "达到步数上限,请人接手。";
}
接到故事:你的那句话是 goal;中间「查规章 → 读文档 → 改 → 测」由 Agent 串,而不是你手动复制粘贴十几轮。
九、MCP:接外部世界的标准插头
MCP = Model Context Protocol,由 Anthropic 提出的开放协议,用来把数据源和工具以标准方式接到 AI 应用上。
AI 缺什么: 每个客户端、每个工具都私有对接,换一家助手就重写一遍「读邮件 / 读仓库 / 开浏览器」。
它补什么: 统一的插口约定——服务端暴露能力,客户端按协议发现并调用。
比喻: USB:U 盘、键盘、读卡器,插头形状谈拢了,才不用每台电脑焊专用线。
不是什么: 不是一种更聪明的大模型,也不是某家聊天产品的昵称;它是连接协议。
接到故事:读仓库文件、列目录,可以通过 MCP 服务暴露成标准工具;Agent 调的是「插上的能力」,而不是写死在某一家 SDK 里的私有函数名(当然,落地时你仍要鉴权、审计、最小权限)。
十、Skill:墙上的店规作业卡
Skill(技能) 在不同产品里名字略有出入,这里取共同意思:一份可复用的「这件事按咱们规矩怎么干」——步骤、约束、常用工具、输出格式。
AI 缺什么: 每次从零猜流程,容易漏「必须先对规章编号」「禁止直接 push」。
它补什么: 把流程写成卡片,助手少发挥、多按谱。
比喻: 奶茶店墙上的标准作业卡:先洗杯再打冰,不是让新人现场发明。
不是什么: 不是微调模型参数;也不是把权重重新训练一遍。Skill 改的是作业说明,改的是行为剧本。
接到故事:可以有一张 Skill 写明——先 RAG 取登录规章 → 再读 docs/login-api.md → 只改文档不改业务代码 → 跑文档链接检查 → 最后交给人审。
十一、多 Agent:多个专科助手(点到为止)
AI 缺什么: 单个循环里塞进「检索专家 + 写作专家 + 测试专家」,上下文又挤、职责又糊。
它补什么: 拆成多个角色协作(有的产品叫多 Agent、Crew)。
比喻: 前厅点单、后厨做菜、传菜核对,而不是一个人同时干三摊还假装很稳。
不是什么: 人越多越强的神话;编排、交接、扯皮成本会转回来找你。
接到故事:可以「规章检索 Agent」和「文档修改 Agent」分工,但个人项目里一个 Agent + 好 Skill 往往更够用。
十二、微调 & 工作流:防混淆的两块告示牌
| 概念 | 它在干什么 | 别和谁混 |
|---|---|---|
| 微调(Fine-tune) | 用你们的数据改模型脾性/口吻/领域格式 | 不是 RAG;也不等于上了 Agent |
| 工作流编排 | 人写死的流水线:A 完必做 B | 和 Agent「自己决定下一步」是两种脾气 |
微调贵、慢、要数据与评估;规章常变时,优先 RAG + Skill,而不是动不动微调。工作流适合合规固定的步骤;探索性任务才更像 Agent。
十三、完整串场:从一句话到改好文档
回放总任务:
- Skill 定规矩:必须引用规章编号;只动文档;改完自测;最后人审。
- Agent 拆步:查规章 → 读文件 → 改 → 测 → 汇总。
- Embedding / 向量库 + RAG 取出登录相关条文(开卷材料)。
- MCP / 工具 读仓库里的接口说明。
- 工具 写出修改、跑检查。
- 你 拍板——AI 再能干,上线责任还是人的。
全程主角仍是「你在跟 AI 协作」;配件各司其职。
十四、对照表:这些词给 AI 补了啥
| 概念 | 给 AI 补了啥 | 没有它时怎样 | 常见误会 |
|---|---|---|---|
| 大模型 | 会说话、会写 | 没有「嘴和脑」 | 以为自动懂公司新政 |
| Prompt / 上下文 / Token | 说明任务、限制视野与长度 | 答非所问或中途失忆 | 当成玄学咒语 |
| 幻觉(认知) | 提醒流畅≠正确 | 被圆场骗到 | 以为只有劣质模型才幻 |
| Embedding / 向量库 | 按意思检索 | 换个说法就搜不到 | 当成聊天模型 |
| RAG | 临时开卷、有据可依 | 瞎编规章 | 当成 Agent |
| 工具调用 | 借手执行动作 | 只能吐文字 | 以为模型自己长了手 |
| Agent | 多步决策循环 | 你得手搓十几轮 | 聊天气泡=Agent |
| MCP | 外部能力统一插头 | 家家私有对接 | 当成一种模型 |
| Skill | 可复用作业卡 | 每次从零猜流程 | 当成微调 |
| 多 Agent | 专科分工 | 单角色又挤又糊 | 人多必强 |
十五、动手:迷你 Demo(有检索 vs 没检索)
目录里有一份零依赖小页面(假 3 段登录规章):
demo/index.htmldemo/app.jsdemo/README.md
本地这样跑:
cd demo
python3 -m http.server 8765
# 浏览器打开 http://127.0.0.1:8765
点两个按钮:
- 不检索,直接「瞎答」 — 会看到「错 3 次锁 24 小时 / 用 MD5」这种听着专业、和规章无关的圆场。
- 先检索再答 — 会先列出命中的
R-01/R-02片段,再摘录「错 5 次锁 15 分钟 / Argon2id」。
核心检索逻辑就这么短(和生产向量检索不是一个量级,但关系同构):
function retrieve(question, docs, topK = 2) {
const qTokens = tokenize(question);
return docs
.map((doc) => {
const hay = (doc.title + " " + doc.body).toLowerCase();
let score = 0;
for (const t of qTokens) if (hay.includes(t)) score += 1;
return { doc, score };
})
.filter((x) => x.score > 0)
.sort((a, b) => b.score - a.score)
.slice(0, topK);
}
你若把 Demo 里的「假回答」换成真正的 callLLM(prompt),就是最小可用的 RAG 雏形——提示词里最好写死:规章没有的说未知,禁止编造。
十六、收束
和 AI 打交道,先分清两样东西就够用很久:
- 模型:会写字的芯;
- 配件:RAG 管依据,工具管动手,Agent 管多步,MCP 管怎么插,Skill 管按店规。
下次再听到新词,不妨先问一句:它是在给 AI 补眼睛、补手、补工序,还是只是换了个马甲?
分得清,就不容易被名词吓住,也不容易把聊天框当成万能工具箱。