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 有两个特别之处值得你理解:
- 它是几乎所有大模型的共同祖先——GPT 是 Decoder-only 的 Transformer,BERT 是 Encoder-only 的 Transformer,T5 是 Encoder+Decoder 的 Transformer
- 它的核心机制(注意力)优雅而简洁——数学上只是一个加权求和,但效果惊人
从零开始:LLM 的基础底座到底是什么?
要理解 Transformer,先搞清楚一个问题:语言模型要解决的根本问题是什么?
语言模型的任务是:给定前面的一些词,预测下一个最可能出现的词。
就是这么简单。但计算机不认识"词",它只认识数字。所以我们需要把词变成数字——这就是整个 Transformer 管线的起点。
一个完整的 Transformer 架构图
从输入到输出,大致经历这些阶段:


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 越大,模型能储存的信息越多,但计算量和显存也越大。

关键点:这个嵌入矩阵不是人工设计的,而是在训练过程中自动学习出来的。 意思相近的词("开心"和"快乐")在向量空间里位置相近。
第二阶段:位置编码(Positional Encoding)
Transformer 有一个"缺陷":它一次看所有词,不知道哪个在前哪个在后。
Toggle: 为什么 Transformer 需要位置编码?
RNN 天然知道顺序——因为它逐个处理词。但 Transformer 并行处理所有词,对模型来说,"我爱你"和"你爱我"的输入向量是完全一样的(词一样,顺序乱)。
所以需要额外告诉模型每个词的位置。
位置编码就是给每个 Token 的向量加上一个位置信号:

位置编码有两种常见方式:
方式 | 原理 | 优点 | 缺点 |
正弦/余弦编码 | 用固定频率的正弦波编码位置 | 不需要学习,可外推到更长序列 | 固定不变,可能不够灵活 |
可学习位置编码 | 让模型自己训练出位置向量 | 更灵活 | 不能处理比训练时更长的序列 |
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 梯度消失:

一个具体例子
假设句子是"我喜欢猫",经过嵌入后得到 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 |
多头注意力的公式:
其中每个头独立计算:

第五阶段:前馈网络(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 |

Toggle: 什么是「掩码自注意力(Causal Attention)」?
Decoder-only 模型在生成文本时,只能看到当前位置之前的词,不能看到后面的词(否则就是作弊)。
实现方式:在注意力分数矩阵中,把「当前位置之后」的位置设成 $-∞$,经过 Softmax 后这些位置的权重就是 0。
这就是为什么 ChatGPT 是逐词生成的——每次只能借助已经写出来的词预测下一个。
训练流程:从原始数据到智能
一个大语言模型的诞生分三个阶段:
阶段 | 做什么 | 数据量 | 目的 |
预训练 | 在大量互联网文本上预测下一个词 | TB 级别(数万亿 Token) | 学习语言知识、语法、常识 |
监督微调(SFT) | 用人工标注的问答对训练 | 万 ~ 百万级 | 学会对话、遵循指令 |
RLHF | 用人类偏好打分优化输出 | 十万级偏好数据 | 对齐人类价值观、更"好用" |
Toggle: 什么是「RLHF(基于人类反馈的强化学习)」?
RLHF(Reinforcement Learning from Human Feedback)是三阶段训练的最后一步。
简单说:让模型生成多个回答 → 人类给好差评 → 训练一个「奖励模型」模拟人类偏好 → 用强化学习优化原始模型。
这就是为什么 ChatGPT 比纯预训练的 GPT-3"更听话"——它经过了 RLHF 对齐。

常见误区
- Transformer ≠ 大模型:Transformer 是架构,大模型是"参数量很大的模型"。两者不是同义词。
- GPT 不是 Transformer 的全部:GPT 只有 Transformer 的解码器部分(Decoder-only),原始 Transformer 还有编码器。
- 模型不是"会思考":大模型本质是一个巨大的概率预测器——它不是在"想",而是在"算概率"。
- 上下文窗口 ≠ 模型能力:能处理 100K Token 不意味着真的能"记住"100K Token 的信息,实际有效长度短得多。
总结
组件 | 一句话 | 类比 |
Token 化 | 把句子切成小块 | 切菜 |
Embedding | 把文字变成向量 | 给每个词编号+编码 |
位置编码 | 告诉模型词序 | 给每个词贴座位号 |
自注意力(核心) | 让词之间互相"看" | 开会时听别人发言 |
多头注意力 | 从多个角度分析关系 | 多个专家同时分析 |
FFN | 加工信息 | 深度思考 |
残差连接 | 防止深层退化 | 抄近路 |
Decoder-only | 只能看前面的词 | 逐词写文章 |
读完你应该能做到
理解 Transformer 为什么是大语言模型的基础底座
能用自己的话解释自注意力的 Q/K/V 机制
知道自注意力的三步计算流程(打分 → Softmax → 加权求和)
理解为什么 Transformer 比 RNN 更适合做大模型
知道 LLM 训练的三阶段(预训练 → SFT → RLHF)
🔖延伸阅读与参考资料

Attention Is All You Need
The dominant sequence transduction models are based on complex recurrent or convolutional neural networks in an encoder-decoder configuration. The best performing models also connect the encoder...
万字长文讲透LLM核心:Transformer架构原理解析-腾讯云开发者社区-腾讯云
深入解析Transformer架构原理与LLM智能来源,揭秘大模型如何通过分词、词嵌入和注意力机制实现文本理解与翻译。文章详细剖析自注意力层、前馈网络及MoE混合架构等前沿设计,帮助开发者掌握LLM核心机制。从基础架构到开源模型演进,全面解读大语言模型的技术实现与优化策略。

大型语言模型简介 | Machine Learning | Google for Developers
本课程单元简要介绍了语言模型和大型语言模型 (LLM),涵盖词元、N 元语法、Transformer、自注意力机制、蒸馏、微调和提示工程等概念。
- 作者:海鸥旅人
- 链接:玻璃小屋.cn/article/transformer-llm-foundation
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章





)_1girl_soloanime_character_highly_detailed_bright_color_checkpoint_style_brush_stroke_drawin.png?table=block&id=51a4fb01-061c-42b8-993f-0b55716e8406&t=51a4fb01-061c-42b8-993f-0b55716e8406&width=1080&cache=v2)


