🗣️ 第一章:AI 在"说"什么?
你跟 ChatGPT 聊天的时候,有没有想过:它到底是怎么"看懂"你说的中文的?它又是怎么"想"出回答的?
要搞明白这件事,我们得从 AI 看世界的"基本单位"说起。
Token 就是 AI 眼中的"一个字"。
人类看书是以"字"和"词"为单位,AI 看文本是以 Token 为单位。一个中文汉字可能是一个 Token,一个英文单词也可能是。AI 把你说的话先"切"成一个个 Token,然后才能处理。
把 Token 想象成乐高积木的每一块。你说"今天天气真好",AI 看到的是"今/天/天/气/真/好"这几块积木。AI 不懂中文语法,它只知道:这块积木后面,接哪块积木的概率最高。
给每个 Token 打一个"数字身份证"。
Token 只是一块积木,AI 还不认识它。Embedding 的作用是把每个 Token 变成一串数字(向量),让意思相近的 Token 在"数字空间"里靠得更近。比如"猫"和"狗"的数字很接近,"猫"和"汽车"的数字差很远。
想象一个巨大的"意义地图"。"猫"在一个山头,"狗"在隔壁山头,"汽车"在另一个大洲。AI 通过看这些"山头"的距离,就能判断词和词之间的关系——这就是它"理解"语义的方式。
所以,AI 理解你的话的过程是:你说的话 → 切成 Token → 每个 Token 变成 Embedding 数字 → AI 开始"思考"。
🧩 第二章:AI 的大脑长什么样?
上一步,我们知道了 AI 把文字变成了数字。那么接下来,这些数字进入了一个叫做 Transformer 的"大脑"。
Transformer 是目前几乎所有大模型(GPT、DeepSeek、Llama)的核心引擎。
它由两部分组成:一层层的"注意力"机制,一层层的"前馈网络"。数据进来,经过这两层处理,AI 就能"读懂"上下文,然后预测下一个该说什么。
把 Transformer 想象成一个"超级阅读理解班"。班上有两种学生:一种叫"注意力同学"(Self-Attention),专门看上下文里哪些词最重要、互相有关系;另一种叫"前馈同学"(FFN),专门把注意力同学找到的信息消化、加工、变成自己的知识。
让 AI 看到一个词时,能"注意"到上下文中其他相关的词。
比如句子"我要去银行存钱","银行"这个词,Self-Attention 会注意到后面有"存钱",于是知道这里的"银行"是"Bank"而不是"河岸"。它把上下文信息"融合"到当前词里,让 AI 真正理解一句话,而不是一个个孤立的词。
把注意力收集到的信息进行进一步加工和变换。
如果说 Self-Attention 是"找关系",那 FFN 就是"做消化"。它对每个位置的表示做非线性变换,让 AI 能够学到更复杂的模式。每一层 Transformer 都是"先注意关系,再消化信息",重复很多层,理解就越来越深。
把一堆分数变成"概率"的最后一步。
AI 想了半天,最后要决定"下一个词说什么"。它会给词典里每个词打个分,SoftMax 的作用就是把这些分数变成加起来等于 1 的概率。比如"好"得 0.7、"坏"得 0.2、"差"得 0.1——然后 AI 就按概率选一个词说出来。
SoftMax 就像"投票统计"。AI 大脑里每个候选词都是一个候选人,大脑给每个人投了不同票数。SoftMax 就是那个唱票的人,把所有票数变成百分比,让大家一眼看到谁赢面最大。
所以 Transformer 的完整流程就是:
🎓 第三章:AI 是怎么"变聪明"的?
Transformer 是 AI 的大脑结构,但刚出生的 AI 什么都不懂。它需要通过"学习"来变聪明。这个学习过程,和人类学习的方式惊人地相似。
参数量就是 AI 大脑里"旋钮"的数量。
AI 大脑里有亿万个"旋钮"(权重),每个旋钮控制着 AI 对某种模式、某种知识的记忆和理解。参数量越大,旋钮越多,AI 能记住和理解的东西就越多。GPT-3 有 1750 亿个参数,DeepSeek-V3 有 6710 亿个参数。
把参数想象成调音台上的旋钮。调音台旋钮越多,能调出的音色越丰富。AI 的参数就是这样的旋钮——"语法旋钮"、"常识旋钮"、"逻辑旋钮"……训练就是不断拧这些旋钮,直到 AI 的输出变得靠谱。
AI "考试"答错了多少分。
训练时,给 AI 一个任务,它给出答案,然后和标准答案对比。Loss 就是"AI 的答案和标准答案差了多少"。Loss 越大说明错得越离谱,Loss 越小说明 AI 表现越好。
就像学生做完题对答案。你做了 100 道题,错了 30 道,你的"Loss"就是 30。如果你只错 5 道,Loss 就是 5。训练的目标就是让 Loss 越来越低。
找出"哪个旋钮拧错了方向"。
AI 答错了(Loss 很高),得知道是谁的锅。反向传播就是从"答错"的结果倒着追,一层层往回算:哪个参数该负多少责任?这样才知道每个旋钮该往哪个方向拧。
根据反向传播的结果,实际去拧旋钮。
反向传播告诉你方向,梯度下降就是动手拧。它每次根据"梯度"(错误下降最快的方向)调整参数,让 Loss 一点点降下来。反复这个过程,AI 就越来越聪明。
想象你蒙着眼睛下山。你用脚探一探,感觉哪个方向是下坡的(这就是"梯度"),然后往那个方向走一小步(这就是"下降")。反复走,你就能走到山谷最低处(Loss 最低点)。
每次拧旋钮拧多大、走下山路走多远。
学习率太大了,你可能一下跨过谷底又爬上对面的山;学习率太小了,你走了半天还在山顶附近。找到一个合适的学习率,是训练 AI 的关键技巧。
串起来理解:AI 训练就是一个不断"做题→对答案→找错→调旋钮"的循环。Loss 是对答案发现错了多少分,反向传播是找出哪个旋钮的锅,梯度下降是按方向拧旋钮,学习率是每次拧多少。重复几百万次,AI 就从"什么都不懂"变成了"对答如流"。
🏗️ 第四章:不同的"大脑结构"
不是所有 AI 大脑都长一个样。在 Transformer 出现之前,还有过别的"大脑结构"。而即使在 Transformer 内部,也有不同的设计路线。
Transformer 之前的主流大脑,但有个致命缺点。
RNN 读书的方式是"一个字一个字往前读",每读一个字就更新一下记忆。问题是:读到后面就忘了前面。一句话太长,RNN 就"记不住"前面的内容了。
RNN 就像一个记忆力不好的人读长文。读到第三章的时候,第一章讲什么已经忘了。Transformer 解决了这个问题——它可以同时看到一整句话的所有词,不用"一个一个挨着读",所以记得住上下文。
每个问题都用"全脑"来回答。
在 Dense 架构里,不管你问什么问题,AI 大脑里的所有参数全部参与计算。好处是每个参数都参与思考,坏处是计算量大、成本高。GPT-3、GPT-4 都是 Dense 架构。
把大脑分成很多"专家",按需调用。
MoE 把 AI 大脑分成很多"小专家"(子网络),你问数学题就调数学专家,问编程就调编程专家。这样虽然总参数很多,但每次只用一小部分,又快又省。DeepSeek-V3、Mixtral 都用了 MoE。
🏢 Dense 架构
✅ 所有参数都参与,表达力强
❌ 计算量大、推理慢
❌ 参数多了就很贵
代表:GPT-3、GPT-4
🎯 MoE 架构
✅ 总参数大但每次只激活一部分
✅ 推理快、成本低
❌ 路由机制复杂
代表:DeepSeek-V3、Mixtral
Dense 就像一家"全能医院"。不管你来看什么病,所有医生(参数)全部出动给你会诊。服务好,但效率低。
MoE 就像一家"分诊医院"。先看你什么病,再叫对应科室的医生出来。医院里医生总数很多,但每次只用一小部分,高效又省钱。
📚 第五章:从"什么都不懂"到"对答如流"
AI 的成长不是一步到位的。它经历了三个阶段:先大量阅读学会基础知识,再通过指导学会"怎么说话",最后通过反馈学会"怎么说话让人满意"。
让 AI 海量阅读,学会语言和世界知识。
这一步 AI 读了互联网上万亿 Token 的文本——维基百科、新闻、书籍、论文、网页……它不是在"背",而是在学习"语言的规律"和"世界的知识"。预训练完的 AI 知道很多,但还不会"好好回答问题"——你问它问题,它可能接着你的话继续"续写",而不是回答。
预训练就像一个人从小到大读了图书馆里所有的书。他知识渊博,但没上过"社交礼仪课"。你问他"你好",他可能会接着说"你好我是某某书第三章提到的人物……"——他只是顺着你的话"续写"。
教 AI "有人问问题,就该回答问题"。
用大量"问题→回答"的示范数据训练 AI,让它学会:别人提问时,不要续写,而是像助手一样回答。这一步让 AI 从"只会续写文本"变成"会回答问题"。
教 AI "什么样的回答更让人满意"。
SFT 之后的 AI 会回答了,但回答得好不好?RLHF 让人类来打分——同一个问题的多个回答,人类选哪个更好。AI 根据这些反馈调整自己,让回答越来越贴近人类偏好:有用、诚实、无害。
AI 长大到一定程度,突然"开窍"了。
有趣的是,AI 参数量小的时候,很多任务做不好。但当参数量跨过某个"门槛",某些能力会突然"涌现"出来——比如做数学题、写代码、逻辑推理。这种"突然变强"不是线性的,所以叫"涌现"。
就像小朋友学说话。1 岁只会蹦单词,2 岁突然会句子了,3 岁突然能讲故事了。不是每天进步一点点,而是"量变引起质变"。AI 也是这样,参数到一定规模,能力就"跳"上了一个台阶。
不用重新训练,AI 看你给的例子就能学会。
预训练好的 AI 有一个神奇能力:你在对话里给它几个例子,它就能"照葫芦画瓢"。比如你给它几个"翻译"的例子,它就能开始翻译了。不需要重新训练,只要在对话里给"上下文"就行。
✍️ 第六章:AI 怎么"写文章"?
训练好了的 AI,到底是怎么一步步"写出"回答的?这里面有几个关键概念。
一个字一个字地"续写",每次都根据前面已写的内容预测下一个字。
GPT 就是自回归模型。你问它问题,它不是一次性想好全部答案,而是一个 Token 一个 Token 地"写":先写第一个字,然后根据你的问题+第一个字预测第二个字,再根据问题+前两个字预测第三个字……如此循环,直到写完。
就像玩"成语接龙"。你说了"一心一意",下一个人要根据前面的内容想下一个词。AI 写文章就是一直在"接龙"——只不过它接的不是成语,而是 Token。
AI 的"短期记忆"有多大。
AI 一次能"看到"的 Token 数量是有限的,这个限制就叫上下文窗口。如果窗口是 8000 个 Token,那 AI 最多只能"记住"最近 8000 个 Token 的内容。超出的,它就忘了。
上下文窗口就像 AI 的"工作台"。 工作台就这么大,放不下太多东西。你往上面放新的东西,旧的就掉下去了。窗口越大,AI 能同时"看到"的信息越多,理解越全面。
控制 AI "脑洞"大小的旋钮。
AI 每次预测下一个词时,会给出多个候选词及概率。Temperature 控制它有多"大胆":温度低,AI 总选概率最高的词(保守、稳定、可预测);温度高,AI 愿意选概率低的词(有创意、有惊喜、但可能不靠谱)。
另一个控制"选词范围"的方式。
Top-p 设一个值(比如 0.9),只从概率加起来到 0.9 的那些候选词里选,剩下的直接不考虑。这样既保证不会选到太离谱的词,又保留了一定的随机性。
| 参数 | 值低 | 值高 | 用在哪 |
|---|---|---|---|
| Temperature | 稳定、保守、适合写代码 | 创意、多样、适合写诗 | 问答、编程用低;创作用高 |
| Top-p | 只在最优词里选 | 考虑更多候选词 | 通常设 0.9 左右 |
AI 一个字一个字地"说"给你看,而不是等全部写完再显示。
因为 AI 本来就是一个字一个字生成的,所以可以边生成边输出。你看到 ChatGPT "打字"一样地蹦字出来,这就是流式输出。好处是体验更好,不用干等。
🤔 第七章:AI 为什么会"胡说八道"?
你大概遇到过 AI 一本正经地说假话。这不是 Bug,这是 AI 工作原理决定的。
AI 自信地说出不存在的事实。
AI 本质上是在"预测下一个最可能的词",而不是在"查证事实"。所以当它不确定的时候,它会根据概率编一个看起来很像真的答案。它不是在"骗你"——它真的"以为"自己说的是对的。
AI 就像一个"考试时不会做但很能编"的学生。他不会空着,他会根据题目写一段看起来有道理的话。有时候蒙对了,有时候完全是编的。AI 的幻觉就是这个——它不知道自己不知道,只会按概率续写。
你给 AI 的指令/请求。
你怎么问,很大程度上决定 AI 怎么答。同一个问题,问法不同,结果天差地别。Prompt 工程就是研究"怎么问 AI 才能得到好答案"的技术。
让 AI "想清楚了再答"。
减少幻觉的一个重要技巧:不要让 AI 直接给答案,而是让它"一步一步想"。你在 Prompt 里加一句"请一步一步思考"或者"先分析再回答",AI 就会先"推理"再"下结论"。中间的推理步骤让 AI 更容易答对。
就像做数学题。直接写答案容易错,但如果你把计算过程写出来,一步步算,出错的概率就低多了。CoT 就是让 AI "把草稿打出来",这样更准确。
减少幻觉的方法:① 用 CoT 让它"想清楚再说";② 给它参考材料(下一章的 RAG);③ 把 Temperature 调低让它更保守;④ 明确告诉它"不知道就说不知道"。
🔧 第八章:让 AI 更靠谱
光靠 Prompt 技巧还不够。要让 AI 真正可靠地回答问题,我们需要给它"外挂"——让它能查资料、管好上下文。
先帮 AI 查资料,再让 AI 根据资料回答。
RAG 的思路很简单:AI 知识有限且可能过时,那就在 AI 回答之前,先去知识库里搜相关资料,把搜到的内容塞进 Prompt 里,让 AI "看着资料回答"。这样就不容易瞎编了。
就像开卷考试。闭卷考试时学生可能瞎编(幻觉),开卷考试时可以翻书找答案(RAG),准确率自然高很多。RAG 就是给 AI 一次"开卷考试"的机会。
把长文档"切成小块"再存储。
RAG 要搜资料,但文档可能很长,AI 的上下文窗口装不下。所以要把文档切成一段段小的 Chunk,每段单独存好。搜索时只找到最相关的几段,塞进 Prompt。
管理 AI 短期记忆里放什么、丢什么。
对话越来越长,但 AI 的上下文窗口有限。怎么决定哪些信息保留、哪些丢弃?怎么让 AI 不忘了重要信息?这就是上下文管理要解决的问题——在有限的窗口里放最有价值的信息。
有了 RAG,AI 的回答就从"自己编"变成了"有据可查"。这就大大减少了幻觉,让 AI 从"有趣的玩具"变成了"可靠的工具"。
🤖 第九章:让 AI "动手干活"
到此为止,AI 只是在"说话"。但现实中,我们要的不只是聊天——我们要 AI 能查数据库、调 API、操作工具。这就需要从"对话"进化到"干活"。
让 AI 能"调用外部工具"。
你定义好一些函数(比如"查天气"、"发邮件"、"搜数据库"),告诉 AI 这些函数怎么用。AI 回答时如果发现需要调用某个函数,就会输出一个结构化的调用请求,你的程序执行这个函数,把结果返回给 AI,AI 再根据结果继续回答。
AI 就像一个聪明的经理,但它没有"手"。它能做决策,但不能自己打电话、发邮件。Function Call 就是给 AI 配了一双手——它说"帮我查一下北京天气",你的程序去查,查完告诉它,它再告诉你"北京今天 28 度,适合出门"。
Function Call 的"通用标准接口"。
以前每个 AI 平台的 Function Call 格式都不一样,换个平台就得重写。MCP 是一个开放标准,让 AI 和各种外部工具以统一的方式对接。就像 USB 之于电脑——一个标准接口,什么设备都能插。
MCP 就像"USB-C 统一接口"。以前每家手机厂商一个充电口(各家 Function Call 格式不同),换手机就得换线。MCP 定义了一个统一标准,所有工具都按这个标准做接口,AI 能直接插上就用。
给 AI 预装的"技能包"。
Skill 是 AI 助手平台上的一个概念:把某个能力打包成一个"技能",AI 按需加载。比如"PDF 处理技能"、"网页搜索技能"、"图表生成技能"。AI 根据你的需求自动选择加载哪个 Skill 来帮你。
能自主规划、自主决策、自主行动的 AI。
普通 AI 对话是你问它答。Agent 不一样——你给它一个目标(比如"帮我订明天去上海的机票"),它会自己拆解任务、调用工具、一步步完成。Agent 是 AI 从"聊天机器人"变成"数字员工"的关键进化。
开发 AI 应用的"工具箱"。
LangChain 是一个流行的框架,帮你把 LLM、RAG、Function Call、记忆管理等组件像"链条"一样串起来,快速搭建 AI 应用。不用从零写代码,用 LangChain 提供的组件拼装就行。
构建复杂 Agent 的"画图工具"。
LangChain 的进阶版。当 Agent 需要复杂的流程——比如多步决策、条件分支、循环、多 Agent 协作——LangGraph 让你用"图"的方式来设计 Agent 的工作流。节点是动作,边是流程,可视化地构建复杂 Agent。
串起来理解:Function Call 让 AI 能调工具,MCP 让工具接口标准化,Skill 让 AI 有预装技能包,LangChain 把这些组件串成应用,LangGraph 构建复杂多步 Agent,Agent 是最终实现"自主干活"的形态。一层层往上叠,AI 从"只会说话"变成了"会干活"。
💻 第十章:用 AI 来写代码
最后,我们把目光拉回到"用 AI 来写代码"这件事上。这是目前 AI 应用最火的领域之一,也是三种不同的"姿势"。
"想到啥就说啥"的编程方式。
你不需要懂代码,只需要用自然语言描述你要什么,AI 帮你写代码。你感觉对了就行,不需要精确描述。适合做原型、做小工具、快速验证想法。但代码质量和可维护性取决于 AI 的水平和你描述的精确度。
Vibe Coding 就像"点外卖"。你说"我想吃个辣的、有肉的、来点米饭",AI 就给你做出一道菜。你不关心怎么做,好吃就行。快、方便,但你不会知道这道菜到底怎么做的。
"先写详细规格说明,再让 AI 按规格写代码"。
Spec-Coding 比较正式:你先写一份详细的需求规格文档(Spec),把要什么功能、什么输入输出、什么边界条件都写清楚,然后让 AI 严格按照规格来实现。比 Vibe Coding 更可控,适合做真正的项目开发。
Spec-Coding 就像"给装修队施工图纸"。不是口头说"帮我装修个客厅"(Vibe Coding),而是给出详细图纸——哪里放沙发、哪里装灯、用什么材料。装修队(AI)按图纸施工,出来的东西和预期一致。
给 AI 搭一套"脚手架",让它在约束下安全干活。
Harness Engineering 指的是:为 AI 编程设计一整套约束、验证、测试的工程框架。AI 写的代码不能直接用,得有自动测试、类型检查、代码审查等"安全网"。Harness 就是这套安全网——确保 AI 写的代码质量过关、不出大问题。
🎵 Vibe Coding
🎯 自然语言描述需求
✅ 快速原型、门槛低
❌ 不可控、难维护
适合:原型验证、小工具
📋 Spec-Coding
🎯 先写详细规格文档
✅ 可控、可追溯
❌ 前期投入大
适合:正式项目开发
完整工作流:用 Spec-Coding 写好规格文档 → AI 生成代码 → 用 Harness Engineering 的测试框架自动验证 → 通过的代码才可用。而如果只是做个快速原型验证,用 Vibe Coding 就够了。三者不是互斥的,而是不同场景下的不同工具。
🎉 恭喜!你已经从 Token 一路走到了 Agent 和 AI 编程,串联了 AI 的核心知识体系!