Transformer 大语言模型运作原理解析:从零拆解 AI 的「基础底座」

所有现代大语言模型(GPT、Claude、LLaMA、DeepSeek)都建立在同一个架构之上——Transformer。它到底是什么?怎么工作的?这篇文章从零开始,手拆给你看。
💡
写作假设(由 AI 推断)
  • 目标读者:听说过"大模型"但不太清楚内部原理的技术爱好者
  • 前置知识:基本的编程概念、矩阵是什么、神经网络是什么(不了解也问题不大)
  • 读完能:理解 Transformer 的核心组件(嵌入、注意力、FFN)及数据流向
  • 本文不会深究:训练细节、分布式优化、量化压缩、具体模型实现代码
💡
先说结论
Transformer 的核心思想可以用一句话概括:让模型在处理每个词时,能够「看向」句子的所有其他词,根据重要性加权融合信息。 它用自注意力机制替代了 RNN 的循环结构,使训练可以大规模并行,从而让大语言模型成为可能。

为什么你需要理解 Transformer

你可能每天都在用大模型——让 GPT 写邮件、让 Claude 分析代码、用 DeepSeek 查资料——但你有没有好奇过:
Toggle: 为什么说 Transformer 是「基础底座」?
在 Transformer 出现之前(2017年之前),主流的语言模型用 RNN(循环神经网络),每次处理一个词,效率很低。
Transformer 完全改写了规则:一次看完整句话,用「注意力」决定哪些词更重要。从此,模型可以并行训练、处理更长的文本、训练更大的参数量。
可以这么说:没有 Transformer,就没有今天的 GPT-4、Claude、LLaMA。
Transformer 有两个特别之处值得你理解:
  1. 它是几乎所有大模型的共同祖先——GPT 是 Decoder-only 的 Transformer,BERT 是 Encoder-only 的 Transformer,T5 是 Encoder+Decoder 的 Transformer
  1. 它的核心机制(注意力)优雅而简洁——数学上只是一个加权求和,但效果惊人

从零开始:LLM 的基础底座到底是什么?

要理解 Transformer,先搞清楚一个问题:语言模型要解决的根本问题是什么?
💡
语言模型的任务是:给定前面的一些词,预测下一个最可能出现的词。
就是这么简单。但计算机不认识"词",它只认识数字。所以我们需要把词变成数字——这就是整个 Transformer 管线的起点。

一个完整的 Transformer 架构图

从输入到输出,大致经历这些阶段:
notion image
notion image
Toggle: 什么是「向量」?
向量就是一组数字排成一排,比如 [0.3, -0.1, 0.8, ...]。
在深度学习中,我们用向量来表示一切——词、句子、图片。向量的每个位置代表某种"特征"(比如"是动物吗"、"是动词吗")。
向量的相似度用余弦相似度或点积衡量——方向相近的向量意思也相近。
下面我们逐一拆解每个阶段。

第一阶段:Token 化与嵌入(Tokenization & Embedding)

Token 化——把文字切成小块

模型收到的原始输入是一串文本:"我爱你中国"。但它不能直接处理文字,所以先切成小块:
每个小块就是一个 Token。不同的模型用不同的分词器:
分词方式
例子
使用的模型
按字切分
"我"、"爱"
中文模型常用
按子词切分(BPE)
"un"、"believe"、"able"
GPT、LLaMA
按词切分
"I"、"love"
英文小模型
Toggle: 什么是「BPE(字节对编码)」?
BPE(Byte Pair Encoding)是一种聪明的分词方法:从单字母开始,不断合并最常见的相邻字母对。
比如 "unbelievable" 可能会被分成 ["un", "believe", "able"]——既能覆盖常见词根,又能处理没见过的词(拆成已知子词)。
GPT 系列用 BPE,词汇表大小通常是 50,257 或 100,277。

Embedding——把 Token 变成向量

每个 Token 查一个巨大的查找表(嵌入矩阵),得到一个向量:
Toggle: 什么是「嵌入维度 d_model」?
d_model 是 Transformer 中所有向量的统一维度,可以理解成每个词的「信息量」。
  • 小型模型(如 BERT-base):d_model = 768
  • 中型模型(如 GPT-3):d_model = 12,288
  • 超大型模型(如 GPT-4):未公开,估计在 16,000 以上
d_model 越大,模型能储存的信息越多,但计算量和显存也越大。
notion image
关键点:这个嵌入矩阵不是人工设计的,而是在训练过程中自动学习出来的。 意思相近的词("开心"和"快乐")在向量空间里位置相近。

第二阶段:位置编码(Positional Encoding)

Transformer 有一个"缺陷":它一次看所有词,不知道哪个在前哪个在后。
Toggle: 为什么 Transformer 需要位置编码?
RNN 天然知道顺序——因为它逐个处理词。但 Transformer 并行处理所有词,对模型来说,"我爱你"和"你爱我"的输入向量是完全一样的(词一样,顺序乱)。
所以需要额外告诉模型每个词的位置。
位置编码就是给每个 Token 的向量加上一个位置信号
notion image
位置编码有两种常见方式:
方式
原理
优点
缺点
正弦/余弦编码
用固定频率的正弦波编码位置
不需要学习,可外推到更长序列
固定不变,可能不够灵活
可学习位置编码
让模型自己训练出位置向量
更灵活
不能处理比训练时更长的序列
RoPE(旋转位置编码)
用旋转矩阵编码相对位置
LLaMA、GPT-NeoX 等现代模型标配
实现稍复杂
💡
现代大模型(LLaMA、Mistral、Gemma)几乎都用 RoPE(旋转位置编码),因为它能更好地处理相对位置关系,而且支持一定程度的外推到更长序列。

第三阶段:自注意力机制(Self-Attention)——核心中的核心

这是 Transformer 的心脏。理解了它,就理解了 80% 的 Transformer。

直觉理解

假设你看到这样一句话:
"它没追上那辆车,因为太慢了。"
"它"指的是什么?前面的"车"还是"没追上"的主体?
人脑会自然地去上下文里找答案——这就是注意力要做的事。
💡
自注意力:让每个 Token 去「关注」句子中所有其他 Token,根据相关性加权融合信息。

数学上的三步走

自注意力通过三个矩阵来实现:Query(查询)、Key(键)、Value(值)
Toggle: 什么是 Q、K、V?用搜索类比来理解
想象你在图书馆找书:
  • Query(Q) = 你在搜索框里输入的关键词("机器学习入门")
  • Key(K) = 每本书的标题和标签("Python 编程"、"深度学习"等)
  • Value(V) = 书本身的内容
系统先算 Query 和每本书 Key 的匹配度(点积),然后用匹配度作为权重,对 Value 做加权平均——匹配度越高的书贡献越大。
在 Transformer 中,每个 Token 同时扮演 Q、K、V 三个角色,所以叫「自」注意力——自己在句子中找自己该关注谁。
具体计算分三步:
第一步:计算注意力分数
对句子中第 个词,用它的 Query 向量与所有词的 Key 向量做点积:
点积越大,表示词 和词 越相关。
第二步:Softmax 归一化
对分数做 Softmax,变成 0 到 1 之间的概率分布:
这样所有 加起来等于 1。
第三步:加权求和
用注意力权重对 Value 向量做加权平均:
📝
完整的公式还会除以 $sqrt{d_k}$(Key 向量的维度),防止点积过大导致 Softmax 梯度消失:
notion image

一个具体例子

假设句子是"我喜欢猫",经过嵌入后得到 4 个向量。"我"在做自注意力时:
Token
与"我"的注意力权重
含义
0.40
自己当然最相关
喜欢
0.35
"我"和"喜欢"紧密关联
0.25
"我"和"猫"也有关系
"我"的最终表示 = 0.40 × V(我) + 0.35 × V(喜欢) + 0.25 × V(猫)
结果:"我"的向量现在包含了句子上下文中其他词的语义信息。这就是自注意力的魔法。

第四阶段:多头注意力(Multi-Head Attention)

一个注意力头只能捕捉一种"关系模式"。但现实中词之间的关系有很多种:
  • 语法关系(主谓宾)
  • 语义关系(同义词/反义词)
  • 位置关系(距离多远)
  • 指代关系("它"指的是什么)
所以 Transformer 用了多个注意力头并行计算
Toggle: 什么是「多头注意力」?
想象你同时从多个角度分析一句话:
  • 头 1:关注语法结构(主语是谁?)
  • 头 2:关注指代关系("它"指什么?)
  • 头 3:关注修饰关系("红色的"修饰什么?)
每个头用自己的 Q、K、V 矩阵做一次自注意力,最后把所有头的结果拼接起来。
头数
典型值
例子
小模型
8 ~ 12 头
BERT-base (12 头)
大模型
32 ~ 96 头
GPT-3 (96 头)
超大规模
128 头
PaLM
多头注意力的公式:
其中每个头独立计算:
notion image

第五阶段:前馈网络(FFN)与残差连接

注意力层之后,每个 Token 独立经过一个前馈神经网络(Feed-Forward Network,FFN)。
Toggle: FFN 做了什么?
注意力层负责从上下文收集信息("看向别处"),FFN 负责对收集到的信息做深层加工("思考")。
数学上就是两层线性变换 + 一个激活函数:
中间层的维度通常是 4 倍 d_model(比如 d_model=768 时,中间层=3072)。
每个 Transformer 层 = 自注意力 + 残差连接 + LayerNorm + FFN + 残差连接 + LayerNorm
Toggle: 什么是「残差连接」和「LayerNorm」?
残差连接:把层的输入直接加到输出上($output = Layer(x) + x$),解决深层网络梯度消失问题。
LayerNorm:对每个 Token 的向量做归一化(均值=0,方差=1),让训练更稳定。
两者都是让深层网络能稳定训练的工程技巧。

完整数据流串联

用一个具体例子,看看"你好吗"这个输入经过 Transformer 的全过程:
步骤
发生了什么
数据形状
输入文本
"你好吗"
字符串
Token 化
["你", "好", "吗"]
3 个 Token
Embedding
每个 Token → 768 维向量
3 × 768
• 位置编码
嵌入向量 + 位置向量
3 × 768
第 1 层注意力
每个 Token 关注所有其他 Token
3 × 768
第 1 层 FFN
独立处理每个 Token
3 × 768
第 2 ~ N 层
重复注意力 + FFN
3 × 768
输出层
最后一个 Token → 词汇表概率
词汇表大小
采样
选概率最高的词或随机采样
"我很好"
💡
关键点:所有层的输入输出维度始终保持一致(3 × d_model),这保证了信息可以无损地多层传递。Transformer 的强大来自于层数深——GPT-3 有 96 层,DeepSeek-V3 有 61 层。
现代大模型普遍使用 Decoder-only 架构
架构
包含的模块
代表模型
Encoder-Decoder
编码器 + 解码器 + 交叉注意力
原始 Transformer、T5
Encoder-only
只有编码器
BERT(擅长理解)
Decoder-only
只有解码器(带掩码自注意力)
GPT、LLaMA、Claude、DeepSeek
notion image
Toggle: 什么是「掩码自注意力(Causal Attention)」?
Decoder-only 模型在生成文本时,只能看到当前位置之前的词,不能看到后面的词(否则就是作弊)。
实现方式:在注意力分数矩阵中,把「当前位置之后」的位置设成 $-∞$,经过 Softmax 后这些位置的权重就是 0。
这就是为什么 ChatGPT 是逐词生成的——每次只能借助已经写出来的词预测下一个。

训练流程:从原始数据到智能

一个大语言模型的诞生分三个阶段:
阶段
做什么
数据量
目的
预训练
在大量互联网文本上预测下一个词
TB 级别(数万亿 Token)
学习语言知识、语法、常识
监督微调(SFT)
用人工标注的问答对训练
万 ~ 百万级
学会对话、遵循指令
RLHF
用人类偏好打分优化输出
十万级偏好数据
对齐人类价值观、更"好用"
Toggle: 什么是「RLHF(基于人类反馈的强化学习)」?
RLHF(Reinforcement Learning from Human Feedback)是三阶段训练的最后一步。
简单说:让模型生成多个回答 → 人类给好差评 → 训练一个「奖励模型」模拟人类偏好 → 用强化学习优化原始模型。
这就是为什么 ChatGPT 比纯预训练的 GPT-3"更听话"——它经过了 RLHF 对齐。
notion image

常见误区

⚠️
  1. Transformer ≠ 大模型:Transformer 是架构,大模型是"参数量很大的模型"。两者不是同义词。
  1. GPT 不是 Transformer 的全部:GPT 只有 Transformer 的解码器部分(Decoder-only),原始 Transformer 还有编码器。
  1. 模型不是"会思考":大模型本质是一个巨大的概率预测器——它不是在"想",而是在"算概率"。
  1. 上下文窗口 ≠ 模型能力:能处理 100K Token 不意味着真的能"记住"100K Token 的信息,实际有效长度短得多。

总结

组件
一句话
类比
Token 化
把句子切成小块
切菜
Embedding
把文字变成向量
给每个词编号+编码
位置编码
告诉模型词序
给每个词贴座位号
自注意力(核心)
让词之间互相"看"
开会时听别人发言
多头注意力
从多个角度分析关系
多个专家同时分析
FFN
加工信息
深度思考
残差连接
防止深层退化
抄近路
Decoder-only
只能看前面的词
逐词写文章

读完你应该能做到

理解 Transformer 为什么是大语言模型的基础底座
能用自己的话解释自注意力的 Q/K/V 机制
知道自注意力的三步计算流程(打分 → Softmax → 加权求和)
理解为什么 Transformer 比 RNN 更适合做大模型
知道 LLM 训练的三阶段(预训练 → SFT → RLHF)

🔖延伸阅读与参考资料

arXiv.orgarXiv.orgAttention Is All You Need
万字长文讲透LLM核心:Transformer架构原理解析-腾讯云开发者社区-腾讯云
Google for DevelopersGoogle for Developers大型语言模型简介  |  Machine Learning  |  Google for Developers
 
兰伯特光照模型(Lambertian Reflectance)完全解析AI Agent 记忆系统架构:2026年全景解读
Loading...