一个只会猜下一个词的程序,凭什么像在思考?腾讯技术工程《三万字长文:大语言模型从零入门》导读
写在前面:这是一篇自己写的导读,不是全文转载。文字和结构都是我们重新组织的,没有用原文的图片。原文是公众号「腾讯技术工程」2026 年 10 月 13 日发的《三万字长文:大语言模型从零入门》,作者 flyflywang,链接放在文末。第一到六部分是对原文的转述,文中的关键数字我们对照了原文引用的论文;「我们的解读」一节是本站自己的看法,请注意区分。
一、这篇文章值得读在哪
市面上的大模型科普,多数要么只讲比喻,要么一上来就是公式。这篇文章找了一条中间的路:只用到加减乘除和对数,从头到尾用两个例子串起来:一个是「从 1 到 8 里猜数字」,一个是填空「他口渴了,于是喝了一杯____」。每个数字读者都能拿笔算一遍。
全文近三万字,作者估计要读一个半小时。如果时间不够,原文自己给了捷径:先读第一章的前两节,再直接跳到最后一章「从模型到 ChatGPT」。
整篇文章其实是一串环环相扣的问题,下面按这条线走一遍。
二、语言模型到底在做什么
一句话:给定前文,输出「下一个 token 的概率表」。 token 是模型处理文字的最小单位,可能是一个字,也可能是一个常见词(比如「今天」)。生成一段话,就是从概率表里挑一个 token 接上,再让模型预测下一个,循环往复。
这听起来像高级输入法,为什么和「智能」有关?文章给了两个角度:
- 图灵测试的角度:图灵 1950 年提出,如果裁判只看文字分不出谁是机器,就可以认为机器有了智能。一个能把「人接下来会写什么」预测得完全准的模型,写出来的东西自然分辨不出。
- 要猜准就得懂:填「法国的首都是__」需要知识,「三个人里最矮的是__」需要推理,「发现牛奶过期了,于是把它__」需要常识。预测这个简单目标,逼着模型把文字背后的东西学进去。
作者也提醒:「分辨不出」只是行为标准,模型是否真的「理解」至今有争论。
三、怎么给「猜得准不准」打分:熵和交叉熵
这是全文最有特色的一章,用猜数字游戏把信息论讲明白了:
- 信息量:从 8 个等可能的数字里确定一个,每次问「是/否」并对半排除,需要 3 次,也就是 3 bit。结果越出乎意料(概率越小),信息量越大。
- 熵:所有结果信息量的加权平均,衡量平均有多难猜。如果规则改成「1 出现的概率是 90%」,熵就从 3 bit 降到约 0.75 bit(我们复算无误)。熵也是无损压缩的极限。
- 交叉熵:模型按自己估计的概率去编码,平均实际要花多少 bit。它永远不低于熵,多出来的部分就是模型猜错概率付出的代价。训练语言模型,就是在海量文本上把交叉熵往下压,这正是常说的「损失函数」。
由此引出「压缩即智能」:把文字压得越接近它的熵,说明掌握的规律越深。作者特意说明,这是一个有启发的视角,不是被证明的定理。
四、用什么来预测:神经网络怎么搭、怎么学
- 神经元 = 加权求和 + 一个「过了阈值才开」的弯折(ReLU)。没有弯折,叠多少层都等于一层。
- 通用逼近定理:神经元足够多,网络就能逼近任意连续函数。但它没说要多少神经元、怎么找参数、能不能推广到没见过的数据。后面几节分别回答这三个问题。
- 为什么要深:同样多的神经元,深网络能表示复杂得多的函数(文中用「反复折纸」的例子,每加一层折线段数翻倍)。
- 怎么学:梯度下降(沿着损失下降最快的方向挪参数)加反向传播(从输出往回逐层分摊「责任」,一次就算出所有参数的梯度)。
- 为什么深网络难训:梯度要一层层连乘,容易消失或爆炸。归一化把每层数值拉回正常范围;残差连接让每层只做「批注」而不是「重抄」,给梯度留了一条乘以 1 的直通路。何恺明等人靠它训出了 152 层的网络。
- 背答案还是学方法:死记硬背叫过拟合;找到可复用的规律,压缩和泛化就同时发生了。大模型预训练的数据多到大部分文本只看一两遍,硬背走不通,只能学规律。
五、Transformer:怎么把一整段前文读进去
- 嵌入:每个 token 变成一个几千维的向量,意思相近的词向量也相近。这是靠训练「推」出来的,不是人定的。
- 注意力:每个位置用「查询」去和前文每个位置的「键」比相似度,按权重收集它们的「值」。所以「一杯」这个位置能从几个词之前的「口渴」那里拿到信息。多头注意力让模型同时关注多种关系(谁做的、什么搭配、指代谁)。
- 因果掩码:每个位置只能看前面,不能偷看答案,所以一段 1000 个 token 的文本一次就提供约 1000 道练习题。
- 位置信息:注意力本身不分先后,要另外加上位置。现在常用旋转位置编码(RoPE),让注意力只取决于相对距离。
- 前馈网络:每个位置各自「消化」收集到的信息,约占参数的三分之二,有研究认为它的作用像「键-值记忆」。
文章还做了一笔漂亮的账:每层约 12d² 个参数,代入 GPT-3 的 d = 12288、96 层,再加嵌入表,合计约 1746 亿,和公布的 1750 亿几乎一致。我们复算了一遍,结果相同。
六、从概率表到 ChatGPT,以及它做不好什么
- 怎么挑词:贪心、随机、Top-k、Top-p,再加一个「温度」旋钮。温度低就保守稳定,适合写代码、答事实;温度高就多样,适合头脑风暴。同一个问题每次回答不同,就是因为采样。
- 基座模型只会续写:你问「法国的首都是哪里」,它可能接着出一串习题。知识已经有了,缺的是「当助手」的行为方式。
- 后训练三步:监督微调(看示范学回答,数据重质不重量)、RLHF / DPO(从人类「哪个更好」的比较里学偏好)、推理强化学习(数学和代码题能自动判对错,只告诉它对不对,它自己学会了多想一会儿)。
- 联网和工具:模型只负责写出「要搜什么」这行字,外部程序去执行,再把结果作为文字拼回来。Agent 就是让这个循环自动跑很多轮。看图则是把图片切块变成 token。
- 规模定律:交叉熵随参数、数据、算力按幂律平稳下降,所以能用小实验预测大模型。但降不到零,剩下的是语言本身的随机性。
- 幻觉:训练目标是「像人写的」,不是「真」;零散事实没有规律可学;很多评测「不倒扣分」,鼓励模型去猜;写出的字收不回来。此外还有知识截止、长上下文中间的信息容易被忽略、数不清字母、迎合用户、「A 是 B」学了却答不出「B 是 A」等局限。
七、关键数字核对
下面这些数字我们对照了原文引用的论文或做了复算,都对得上:
| 原文说法 | 核对结果 | 来源 |
|---|---|---|
| GPT-3:96 层、向量宽度 12288、约 1750 亿参数、训练计算量 3.14×10²³ | 一致;按 6×N×D 估算约 3.15×10²³ | Brown et al. 2020 |
| Llama 3 8B:32 层、词表约 12.8 万、训练约 15 万亿 token | 一致 | Llama 3 报告 |
| 规模扩大 10 倍,交叉熵约变为原来的 84%(参数)/80%(数据)/89%(算力) | 一致,对应论文的幂律指数 0.076 / 0.095 / 0.050 | Kaplan et al. 2020 |
| Chinchilla:700 亿参数、1.4 万亿 token,胜过 2800 亿参数的 Gopher;不可约损失约 1.69 nat | 一致;1.69 nat ≈ 2.44 bit | Hoffmann et al. 2022 |
| 13 亿参数的 InstructGPT 比 1750 亿的 GPT-3 更受标注员喜欢 | 一致 | Ouyang et al. 2022 |
| LIMA 只用 1000 条示范微调 650 亿参数模型 | 一致 | Zhou et al. 2023 |
| DeepSeek-R1-Zero 在 AIME 2024 上从 15.6% 提升到 71.0% | 一致 | DeepSeek-R1 报告 |
| ResNet:56 层普通网络训练误差高于 20 层;152 层拿下 ImageNet 2015 冠军 | 一致 | He et al. 2015 |
原文引用了 44 篇参考资料,每个关键论断都标了出处,这一点做得很扎实。
八、我们的解读
以下是本站自己的看法,不是原文内容。
1. 这是我们见过最适合「零基础但愿意动笔」读者的中文入门。 它最大的价值是让一个概念贯穿全文:交叉熵既是训练目标,又解释了压缩、泛化、规模定律为什么降不到零,甚至解释了幻觉。读完你会发现,大模型的能力和毛病来自同一个地方:预测下一个 token。
2. 对日常用 AI 的人,最有用的是最后一章。 「为什么会一本正经地编」「为什么同一个问题每次答案不同」「为什么数不清 strawberry 里有几个 r」,都能在这里找到原理层面的解释。原文给的应对办法也很实在:给它资料、允许它说不知道、让它注明出处、关键信息自己核实、精确计算交给代码。
3. 这篇文章讲的是「原理」,不是「前沿」。 它没有展开混合专家(MoE)、长上下文工程、推理模型的测试时计算、多模态生成等近两年的主线话题,评测和成本也基本没谈。把它当地基读,比当行业综述读更合适。
4. 读法建议:如果只有二十分钟,读原文导读、「语言模型的本质」前两节、最后一章和「总结」。如果想真正弄懂,按作者说的拿笔把猜数字和「水、茶、书」那几张表算一遍。
原文链接:《三万字长文:大语言模型从零入门》,公众号「腾讯技术工程」,作者 flyflywang,2026 年 10 月 13 日。