必收藏!一文搞懂Transformer架构:从注意力机制到LLM推理全流程(手把手教学)
本文详解Transformer架构这一大模型核心骨架,深入剖析注意力机制(QKV三要素)原理及编码器-解码器结构,并以"中国的首都是什么"为例,从分词、嵌入到预测答案的完整流程,全面解析LLM推理机制,帮助读者理解大模型工作原理。
背景
本篇来讲解大模型最核心模块:Transformer架构。Transformer 架构是大模型的 “通用骨架” 和 “动力系统”,它用注意力机制作为核心驱动力,让模型能够并行计算全局语义关联,解决长距离依赖问题;通过编码器 - 解码器结构(有些大模型架构是仅解码器结构)实现对输入的深度理解与输出的精准生成;配合嵌入层、位置编码、前馈网络、残差连接与 LayerNorm 等模块,既保证了训练的稳定性与效率,又大幅提升了模型的表达能力与可扩展性。这种架构使得大模型能够在海量数据上高效训练,并在语言理解、生成、翻译、问答等多种任务上取得优异性能,成为现代大语言模型(如 GPT、DeepSeek、Qwen)的标准基础。
Transformer 架构的 “核心主体” 是编码器 - 解码器,“核心动力” 是注意力机制,二者共同决定了 Transformer 的本质;而基础辅助模块是让这个核心主体能工作的必需配件。
接下来笔者先介绍注意力机制、然后再介绍编码器-解码器部分,最后以“中国的首都是什么”为例,全面解析LLM是如何预测出答案是“北京”的原理过程。
注意力机制原理
Transformer 架构的核心是 “编码器 - 解码器模块组”,而 “注意力机制” 是编码器和解码器实现功能的 “核心组件”。在讲解编码器-解码之前,先讲一下注意力机制(以自注意力机制为例),这里笔者先抛出两个问题,等看完这部分讲解,再来做解答问题。
- 就自注意力而言,QKV 乘以嵌入向量。为什么说Q 提取 “查询意图”,K 提取 “信息标签”,V 提取 “详细内容,他们之间的分工是谁怎么决定?
- 就自注意力而已,总结下注意力机制如何让嵌入向量产生上下文信息的?
以下从数学原理角度,详细介绍下注意力机制:
当前主流的注意力机制是 “缩放点积注意力”,其数学流程清晰、计算高效,是 Transformer 及大模型的标配。整个过程围绕**Q(查询)、K(键)、V(值)** 三个核心向量展开,分为 4 步:
1. 定义 Q、K、V:注意力的 “三要素”
注意力机制的所有计算都基于 Q、K、V,三者的来源和含义随任务场景变化,但核心角色固定:
- Q(Query,查询向量):“当前需要什么信息”—— 代表模型的 “关注目标”,比如生成 “北京” 时,Q 是 “当前生成步骤的语义向量”,意图是 “找‘中国首都’对应的答案 Token”。
- K(Key,键向量):“有什么信息可以提供”—— 代表 “可供查询的信息标签”,比如处理 “中国的首都是什么” 时,K 是问题中每个 Token(“中国”“首都” 等)的向量,标签化信息内容。
- V(Value,值向量):“提供的信息具体是什么”—— 代表 “K 对应的实际语义内容”,K 是 “标签”,V 是 “标签背后的细节”,比如 “中国” 的 K 是 “国家标签”,V 是 “中国 = 亚洲东部国家、有首都北京” 的具体语义。
关键来源规则:
- 自注意力(如编码器中):Q、K、V 来自 “同一序列”(如问题序列的嵌入向量),目标是 “关注序列内部的关联”;
- 跨注意力(如解码器→编码器):Q 来自 “解码器当前状态”,K、V 来自 “编码器输出”,目标是 “关联输入与输出语义”。
2. 计算注意力分数:量化 Q 与 K 的相关性
注意力分数(Score)是 Q 与 K “语义相似度” 的数学表达 —— 分数越高,说明 K 对应的信息越符合 Q 的需求。主流计算方式是 “点积”(高效且能直接反映向量相似度),并加入 “缩放因子” 避免维度过高导致的梯度问题:
-
点积(Q*K):两个向量的点积越大,说明它们的方向越接近,语义相似度越高
-
缩放因子(根号下dk):当dk较大时(如模型维度 = 1024),点积结果会过大,导致 Softmax 后梯度消失;除以“根号下dk”可将分数拉回合理范围,稳定训练。
3. 计算注意力权重:归一化分数
注意力分数需要通过 Softmax 函数归一化,转化为 “权重(Weight)”—— 权重总和为 1,代表 “每个 K 对应的 V 在当前 Q 下的贡献占比”
- Softmax 的作用:将分数映射到 [0,1] 区间,让 “高分数 K” 对应 “高权重”,“低分数 K” 对应 “低权重”;
- 特殊处理(掩码,Mask):在解码器的自注意力中,会对 “未来 Token 的分数” 加负无穷大,让 Softmax 后这些位置的权重趋近于 0,避免 “偷看未来信息”(确保生成的因果性)。
4. 计算注意力输出:加权融合 V 的信息
最后,用注意力权重对 V 进行 “加权求和”—— 将 “高权重 V 的关键信息” 重点融合,“低权重 V 的次要信息” 弱化,生成聚焦关键语义的输出向量:
注意力机制的本质是 “用数学方法模拟人类的选择性关注,通过 Q/K/V 的相关性计算,动态聚焦关键信息,高效融合全局语义”。它不仅解决了传统模型的长距离依赖、精准性、效率问题,更成为 Transformer 架构的核心动力,让大模型能够在语言理解、生成、翻译、问答等任务上达到接近人类的水平,是现代 AI 技术从 “感知” 走向 “认知” 的关键突破之一。
除了自注意力,按 Q/K/V 来源分类,注意力机制的主流类型主要有自注意力机制、交叉注意力机制、多头注意力机制等几种,以下是具体介绍和对比:
看完以上内容,来解答开头留下的两问题:
Question:“就自注意力而言,QKV 乘以嵌入向量。为什么说Q 提取 “查询意图”,K 提取 “信息标签”,V 提取 “详细内容,他们之间的分工是谁怎么决定?”
- Q/K/V 为什么分工不同?
-
虽然同源(来自同一嵌入向量),Q、K、V是三个不同矩阵,且它们经过不同的可训练线性变换(Wq、Wk、Wv 矩阵权重参数)。
-
训练过程让这三个矩阵学会提取不同的语义角色:Q 提取 “查询意图”,K 提取 “信息标签”,V 提取 “详细内容”。
- 谁决定了它们的分工?
-
是训练数据 + 损失函数 + 反向传播共同决定的
-
模型在完成任务的过程中,自动学习到 Q/K/V 应该如何分工才能最小化损失
Question:“就自注意力而已,总结下注意力机制如何让嵌入向量产生上下文信息的?”
在自注意力中,每个 Token 的嵌入向量都会作为 **Query(查询)
去和所有 Token 的 Key(键)计算相关性,得到权重,再用这些权重对所有 Token 的Value(值)** 做加权求和,把全局信息聚合到自己的表示里,从而让原本孤立的嵌入向量 “带上了上下文信息”。
编码器-解码器原理
上述讲解了编码器-解码器的关键组件–注意力机制(无论编码器和解码器,两者都会用到注意力机制),在Transformer架构中有“编码器 + 解码器”架构,也目前主流的有仅解码器(decoder-only)架构(承担了编码和解码的功能),为了方便理解,这部分从编码器和解码器架构讲解。
Encoder-Decoder 架构:编码器和解码器都有嵌入层、位置编码、注意力、残差 + LayerNorm、FFN 这些模块,只是数据来源和注意力类型不同:
- 编码器:处理输入问题,生成语义特征矩阵,编码器的注意力是自注意力(Q/K/V来自输入问题)
- 解码器:基于编码器的语义特征生成答案,掩码自注意力(Q/K/V 来自答案前缀)和编码器 - 解码器注意力**(Q 来自答案前缀,K/V 来自编码器输出)**
1)编码器部分(Encoder):负责 “读懂问题”,把输入问题变成上下文语义向量。包含的流程:
- 输入分词与 Token ID 映射(针对输入问题)
- 嵌入层查表(问题的离散 Token → 连续语义向量)
- 加位置编码(注入问题词序信息)
- 线性投影生成 Q/K/V(仅用于编码器的自注意力)
- 计算注意力分数(Q/K/V 均来自问题自身 → 自注意力)
- Softmax 归一化(得到问题内部的注意力权重)
- 加权求和(生成问题中每个 Token 的上下文向量)
- 残差连接 + LayerNorm
- 前馈网络(FFN)→ 特征加工
- 重复多层堆叠(通常 6~12 层),输出 编码器特征矩阵(Encoder Output)
编码器输出的是:整个问题的上下文语义表示,用于解码器生成答案时参考。
2)解码器部分(Decoder)负责 “生成答案”,基于编码器输出的语义特征,一步步生成答案 Token。包含的流程:
- 输入分词与 Token ID 映射(针对 “已生成的答案前缀”,最开始只有
或 ) - 嵌入层查表(答案前缀的离散 Token → 连续语义向量)
- 加位置编码(注入答案生成的语序信息)
- 线性投影生成 Q/K/V(分两种注意力)
-
掩码自注意力:Q/K/V 来自答案前缀自身(保证不看未来 Token)
-
编码器 - 解码器注意力:Q 来自答案前缀,K/V 来自编码器输出(关联问题语义)
- 计算注意力分数(两种注意力分别计算)
- Softmax 归一化(得到答案内部的权重 + 答案对问题的关注权重)
- 加权求和(生成答案前缀每个 Token 的上下文向量,融合问题语义)
- 残差连接 + LayerNorm
- 前馈网络(FFN)→ 特征加工
- 重复多层堆叠(通常 6~12 层)
- 输出层 → 预测下一个 Token(线性层 + Softmax,输出词表概率分布,这里会检索全词表来计算概率的)
- 循环生成(把新生成的 Token 拼接到答案前缀,重复解码步骤,直到生成结束符。逐字生层,自回归,用户问题 + 已生成内容自回归计算概率一个字一个字的生成)
输出层和循环生成只在解码器中出现,因为编码器只负责 “理解”,不负责 “生成”
以下两者流程大致相同,下表做个表直观对比:
总之,Transformer的“编码器-解码器”架构,本质是“分工协作的语义处理流水线”:
- 编码器 “读”:把输入序列(如 “中国的首都是什么”)转化为语义特征,告诉解码器 “用户问的是‘中国首都’”;
- 解码器 “写”:基于编码器的语义特征,从 “起始符” 开始,逐 Token 生成输出(如 “北”→“京”→“。”),同时通过掩码自注意力保证顺序,通过编码器 - 解码器注意力保证不偏离问题;
二者共同实现了 “从输入理解到输出生成” 的端到端处理,这也是 Transformer 能在翻译、问答、摘要等任务中表现优异的核心原因。以上出现了softmax归一化、加权求和、残差连接 + LayerNorm、前馈网络(FFN)、输出层 → 预测下一个 Token、循环生成 → 完整回答等环节,下面以问答AI“中国的首都是什么”为例,展示推理全流程中会涉及这些内容有讲解说明。
以问答AI为例,解析Transformer推理全流程
“中国的首都是什么” 这一真实问答场景为例,结合数学公式推理和具体数值示例,从头到尾拆解生成式 AI 的全流程。
为简化计算,我们做以下设定(实际模型维度更高,但数学逻辑一致):
- 分词后 Token 序列:
["[CLS]", "中国", "的", "首都", "是", "什么", "[SEP]"]
(共 7 个 Token) - 嵌入维度
embedding_dim = d_model = 4
(实际模型如 BERT 为 768 维,这里用 4 维方便计算) - 注意力头数
num_heads = 1
(单头注意力,避免多头拆分的复杂计算) - 位置编码采用 “可训练位置嵌入”,假设已预训练完成,直接使用预计算的位置向量
全流程拆解(含数学推理):
步骤 1:输入分词与 Token ID 映射
首先将用户问题 “中国的首都是什么” 通过分词器转为离散 Token ID:
Token | [CLS] | 中国 | 的 | 首都 | 是 | 什么 | [SEP] |
---|---|---|---|---|---|---|---|
Token ID | 101 | 7030 | 4638 | 7388 | 3221 | 6423 | 102 |
此时的 ID 是离散整数,无语义,需通过嵌入层转为连续向量。
步骤 2:嵌入层查表(离散→连续语义向量)
嵌入层本质是一个 [词表大小, 模型维度数]
的可训练矩阵 E,每个 Token ID 对应矩阵的一行(即嵌入向量)。
数学表达式:对Token ID序列为
IDs = [101,7030,4638,7388,3221,6423,102]
嵌入向量为(7*4,上述约定的):
嵌入向量X示例数值(假设预训练后的嵌入向量,数值为随机但符合语义逻辑):
步骤 3:加位置编码(注入语序信息)
Transformer 无天然语序感知能力,需添加位置编码P向量(7*4)
位置编码向量(假设预训练后的位置向量)
加位置编码后的输入向量 X(以 “中国” 和 “首都” 为例):
“中国”(位置1):[−0.5+0.05,0.2+0.06,0.7+0.07,−0.1+0.08]=[−0.45,0.26,0.77,−0.02]
“首都”(位置3):[0.3+0.13,−0.4+0.14,0.6+0.15,0.2+0.16]=[0.43,−0.26,0.75,0.36]
步骤 4:线性投影生成 Q/K/V(核心!注意力的 “三要素”)
步骤 5:计算注意力分数(Q 与 K 的 “匹配度”)
注意力分数衡量 “当前 Token 的 Q(查询意图)与其他 Token 的 K(信息标签)的相关性”,数学表达:
计算示例(以 “首都” 的 Q 与 “中国” 的 K 计算相关性):
步骤 6:Softmax 归一化(注意力权重)
如果把注意力机制比作 “给 Token‘投票’选重要信息”:原始相关性分数是 “每个 Token 的初始得票”(无尺度、差异小);Softmax 就是 “得票格式化” 过程:把得票转化为 “占比票”(总和 1),放大高票与低票的差距,同时确保投票结果能稳定用于后续决策(加权求和);没有 Softmax,注意力权重就是 “混乱的数字”,无法实现 “精准聚焦关键信息” 和 “稳定训练”—— 它是注意力机制从 “计算相关性” 到 “有效融合信息” 的必经之路,将注意力分数转为 “概率分布”,确保每行和为 1,数学表达:
attn_weights=softmax(scores)
计算示例(以 “首都” 的分数行为例):
最终注意力权重矩阵:
其核心特征:
- “首都” 对 “中国” 的权重最高(≈0.164),因为 “首都” 的查询意图(找 “国家行政中心”)与 “中国” 的信息标签(“国家”)最匹配;
- “首都” 对 “的”“什么” 等虚词的权重极低(≈0.1 以下),因为语义无关。
步骤 7:加权求和(生成上下文向量)
在自注意力机制中,“加权求和生成上下文向量” 是将 “分散的序列信息” 转化为 “每个 Token 专属的上下文语义” 的核心步骤—— 它的本质作用是:**让每个 Token 根据 “与其他 Token 的相关性权重”,有选择地 “吸收” 全序列的关键语义,最终把原本孤立的嵌入向量,升级成包含 “全局关联信息” 的上下文向量,用注意力权重对 V(语义内容)加权求和,得到 “融合上下文的 Token 向量”,**加权求和就是 “最终整合信息”,把筛选后的、按优先级排序的全序列信息,打包成 “每个 Token 专属的上下文向量”,让模型真正 “读懂” 序列的语义关联。
示例:假设注意力权重(首都这一行):
以上说明如下:
- 上下文向量是 “首都” 融合了全句语义后的新表示
- 因为 “首都” 对 “中国” 的权重最高,所以新向量中 “中国” 的语义占比最大
- 这个向量不再是孤立的 “首都”,而是 **“中国的首都”** 的语义表示
最终 “首都” 的向量融合了 “中国” 的语义(“国家”),明确 “首都” 是 “中国的首都”,而非其他国家的首都 —— 这就是注意力机制 “注入上下文语义” 的核心过程。
步骤 8:残差连接 + LayerNorm(稳定训练)
为避免梯度消失和信息丢失,添加残差连接(保留原始输入信息)并做 LayerNorm(归一化激活值):
1)残差连接:保留原始信息,即使注意力计算有误,原始嵌入信息也不会丢失,**缓解梯度消失,**训练时梯度可以直接通过残差路径回传,**加速收敛,**让模型更容易学习微小变化。
数学公式:Z=attn_output+X,其中****X是加了位置编码的原始嵌入向量。
示例:“首都” 的原始向量(加位置编码后):
2)LayerNorm归一化:可稳定训练,防止某些维度数值过大或过小,加速收敛,各维度数值范围一致,增强泛化能力,减少对输入绝对尺度对依赖。
其中:
以首都为例:
步骤 9:前馈网络(FFN)→ 特征加工
为了增加非线性表达能力,对每个位置独立进行特征变换和扩展模型容量,将归一化后的向量送入前馈网络,进一步提炼语义特征,数学表达:
其中:
示例:
步骤 10:输出层→预测下一个 Token
将 FFN 输出的特征向量映射到词表维度,通过 Softmax 得到 “下一个 Token 的概率分布”:
经过计算,对应 “北京” 这个 token 的 logit 最高,因此:next_token=北京。
其中:
步骤 11:循环生成→完整回答
生成式 AI 采用 “自回归生成”:将预测的 “北京” 加入输入序列,重复步骤 2-10,继续预测下一个 Token(如 “。”),直到生成结束符 [SEP]
,最终得到完整回答:“中国的首都是北京。”
总之,以上介绍了生成式AI问答从“中国的首都是什么”从Token ID离散到嵌入向量、注意力分值计算,生成下文文向量、归一化、前馈网络等等知道一个字一个字预测是答案“北京”完整流程。
写在最后
本篇详细介绍Transformer架构:注意力机制、编码器和解码器,以一个AI问答问题,解析LLM推理答案的全流程。再结合前两篇分词器模型、嵌入模型和Transformer架构应该基本对现有大模型LLM原理有个通透的理解了。这里是通用LLM基本标准原理,因不同大模型的原理优化和演进会有些差异,但也是基于这个思想的基础上,不影响整体的理解。
最后
为什么要学AI大模型
当下,⼈⼯智能市场迎来了爆发期,并逐渐进⼊以⼈⼯通⽤智能(AGI)为主导的新时代。企业纷纷官宣“ AI+ ”战略,为新兴技术⼈才创造丰富的就业机会,⼈才缺⼝将达 400 万!
DeepSeek问世以来,生成式AI和大模型技术爆发式增长,让很多岗位重新成了炙手可热的新星,岗位薪资远超很多后端岗位,在程序员中稳居前列。
与此同时AI与各行各业深度融合,飞速发展,成为炙手可热的新风口,企业非常需要了解AI、懂AI、会用AI的员工,纷纷开出高薪招聘AI大模型相关岗位。
最近很多程序员朋友都已经学习或者准备学习 AI 大模型,后台也经常会有小伙伴咨询学习路线和学习资料,我特别拜托北京清华大学学士和美国加州理工学院博士学位的鲁为民老师给大家这里给大家准备了一份涵盖了AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频 全系列的学习资料,这些学习资料不仅深入浅出,而且非常实用,让大家系统而高效地掌握AI大模型的各个知识点。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】

AI大模型系统学习路线
在面对AI大模型开发领域的复杂与深入,精准学习显得尤为重要。一份系统的技术路线图,不仅能够帮助开发者清晰地了解从入门到精通所需掌握的知识点,还能提供一条高效、有序的学习路径。
但知道是一回事,做又是另一回事,初学者最常遇到的问题主要是理论知识缺乏、资源和工具的限制、模型理解和调试的复杂性,在这基础上,找到高质量的学习资源,不浪费时间、不走弯路,又是重中之重。
AI大模型入门到实战的视频教程+项目包
看视频学习是一种高效、直观、灵活且富有吸引力的学习方式,可以更直观地展示过程,能有效提升学习兴趣和理解力,是现在获取知识的重要途径
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
海量AI大模型必读的经典书籍(PDF)
阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。
600+AI大模型报告(实时更新)
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
AI大模型面试真题+答案解析
我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】

更多推荐
所有评论(0)