2024-2025 让大模型能力跑出陡峭曲线的前沿架构与范式,这一篇一次讲透:MoE 稀疏激活、Reasoning 模型(test-time compute)、上下文窗口与长上下文技术、多模态融合、SSM/Mamba 新路线,最后用一张主流模型谱系表收束整个 S1。 它承接第 3 篇的 Transformer 架构(MoE 是它的架构演进)与第 4 篇的自回归推理(Reasoning 是它的范式演进)。学完之后,任何新模型发布,你都能按"稠密/MoE、是否 Reasoning、上下文长度、是否多模态"四个维度拆解看懂,选型有依据。 每节按 原理 -> 关键机制 -> 后端/大数据映射 -> 趋势/误区 走,MoE 与谱系对比是面试高频。
1. 架构演进:MoE 混合专家(Mixture of Experts)
Transformer 标准是稠密 的:每个 token 过每一层的所有参数,模型越大越强但计算量也线性涨。MoE(混合专家) 改为稀疏激活:每层有多个"专家"(FFN 子网络),每个 token 只激活其中少数几个(Top-K 路由),其余专家不计算。
-
核心机制 :一个**路由器(router/gate)**给每个 token 算各专家的分数,选 Top-K(如 2/8、2/128)个专家处理该 token,结果加权融合。
-
收益 :参数量大但计算量小。比如总参数 100B、每次只激活 15B(DeepSeek-V3 实际是 671B 总参数、激活约 37B,见本专栏第 34 篇(Vol.1·M2)Q1 高频考点)。容量大(知识多),但单 token 计算量像 15B 模型。这就是 DeepSeek/Mixtral/Llama 4 能用可承受算力训出超大模型的关键。
-
代价:显存要装下全部专家参数(参数大=显存大),即使不激活;路由不稳定、负载不均(某些专家被打爆、某些闲置);训练调参更复杂。
-
负载均衡:加辅助损失或策略让 token 均匀分到各专家,防"专家塌缩"(少数专家包揽所有 token)。
-
代表:Mixtral 8x7B(8 专家各 7B、激活 2)、DeepSeek-V3(细粒度专家 + 共享专家)、Llama 4。
MoE 是 2024-2025 主流大模型的事实标准:顶配模型几乎都用 MoE 把参数推到几百 B 甚至 T 级,同时保持单 token 计算量可控。它和 Scaling Law(见本专栏第 4 篇)不矛盾:MoE 是"参数效率"的架构创新,让同等算力下能装下更多参数(知识)。
伪代码(MoE Top-K 路由:router 打分 -> 选 Top-K 专家 -> 加权融合,稀疏激活省算力):
python
def moe_layer(x, experts, router, top_k=2):
"""x: [seq, d];experts: N 个 FFN 子网络;router: 线性层 [d, N]。
每个 token 只算 Top-K 个专家,其余跳过(稀疏激活=单 token 计算量小)。"""
gates = router(x) # [seq, N] 每个 token 对 N 专家的分数
topk_val, topk_idx = gates.topk(top_k, dim=-1) # 选分数最高的 K 个专家
topk_val = softmax(topk_val) # 归一化这 K 个权重(和为 1)
out = zeros_like(x)
for i in range(top_k): # 实际用 grouped GEMM 批量算,不逐 token 循环
for t in range(seq):
out[t] += topk_val[t, i] * experts[topk_idx[t, i]](x[t]) # 加权累加选中专家的输出
return out
# 负载均衡损失(防专家塌缩):aux_loss = N * Σ(f_i * P_i)
# f_i = 专家 i 被选中的 token 频率,P_i = 平均路由概率,逼 token 均匀分布到各专家
映射:MoE 路由 = 分库分表路由层:router = 路由规则算 token 去哪个分片(专家),Top-K = 只查 K 个相关分片不扫全库,加权融合 = 多分片结果按权重汇总。负载均衡损失 = 防分片热点(强制均匀)。稀疏激活 = 分区裁剪只扫相关分区。
映射
MoE = 分库分表 + 路由:把数据按规则分到不同分片,查询只命中相关分片(不扫全库)。MoE 的专家 = 分片,路由器 = 分片路由规则,Top-K 激活 = 只查相关分片。参数总量大(全部分片)但单次计算小(只查命中的)。负载均衡 = 做分片时防热点。稀疏激活 = 列存/分区裁剪只扫相关列/分区。
2. Reasoning models:推理时计算(test-time compute)
第 4 篇讲的自回归推理(Prefill/Decode)是"一次前向出一个 token"。Reasoning model (推理模型,如 OpenAI o1/o3、DeepSeek-R1)改变了范式:在给出最终答案前,先花大量"思考 token"做长思维链推理,用推理时的算力换准确率(test-time compute / inference-time scaling)。
-
核心思想:传统模型"快思考"(直接出答案);reasoning model"慢思考":先在思维链里反复推演、自我验证、纠正,再输出答案。这和快慢思考框架里的"慢思考"对应(见本专栏第 17-18 篇),只是这里把慢思考做进了模型本身。
-
怎么训练 :靠强化学习 + 可验证奖励(RLVR)。数学/代码这类有标准答案的任务,模型推理后对答案,对了给奖励。模型自己摸索出"长思维链推理能拿更多分",涌现出反思、回溯、分步验证等能力。DeepSeek-R1 用的 GRPO(见本专栏第 8-9 篇)就是代表。
-
关键特征:
-
思维链 token 是"思考过程",可隐藏(用户只看答案)或可见。
-
推理 token 也消耗算力和延迟(答案更好但更慢更贵)。
-
在数学/代码/复杂推理上显著强于传统模型;简单任务反而过度思考、浪费。
-
-
与传统模型的取舍 :传统模型快、便宜、适合大多数日常任务;reasoning model 慢、贵、但难题准确率高。按任务难度路由(见本专栏第 21-23 篇模型路由):简单走传统模型,难题走 reasoning model。
-
工程影响:reasoning model 的长输出推高推理成本和 TTFT(首字更慢),对推理服务(见本专栏第 10-11 篇)吞吐和成本治理(见本专栏第 21-23 篇)提出新要求;思维链可能含敏感推理,需评估是否暴露。
这是 2024-2025 最大的范式变化之一:scaling 从"训练时堆算力"延伸到"推理时堆算力"。过去加大模型提能力,现在也可以"让模型多想一会儿"提能力。
映射
Reasoning model = 离线批处理重计算换精度:像对关键报表不跑实时快查询,而是离线用更多算力反复校算保证准确。test-time compute = "用计算换准确率"的工程权衡。按难度路由 = 分级计算(简单实时、复杂批算)。RLVR 训练 = 用"可验证的业务指标"当奖励信号做优化,和 A/B 实验以可量化指标驱动迭代一个思路。
3. Context Window(上下文窗口)与长上下文
3.1 上下文长度
模型一次能"看到"的 token 数上限 = 上下文窗口(如 8k/32k/128k/1M)。你的 prompt + 历史 + 检索内容 + 模型输出,加起来不能超。超了要么截断要么报错。
3.2 长上下文的三大挑战
-
注意力 O(n²) 复杂度:序列长 n,自注意力要算所有 token 两两相似度,计算/显存随 n² 增长。这是长上下文又慢又贵的根因(怎么优化见下文及本专栏第 10-11 篇)。
-
位置外推:训练时只见过 4k 位置,推理时给 32k,位置编码可能失效(RoPE 缓解但未根除)。
-
中段遗忘(Lost in the Middle):模型对上下文开头和结尾记得好,中间容易忽略。放关键信息别埋中间。
映射
-
上下文窗口 = 工作内存/缓冲区:大小有限,超了要丢弃旧数据。这和处理流数据窗口、JVM 堆大小一个道理:资源有限,要管理。
-
O(n²) = 全连接式计算的代价:像全表 join 比 where 过滤贵得多,注意力是"token 间全 join",所以长上下文贵。
误区
-
❌ "上下文越长效果越好" -> 中段遗忘 + 越长越贵越慢,并非越长越好,关键信息要放对位置。
-
❌ "把所有文档塞进长上下文就等于 RAG" -> 全塞进窗口又贵又易遗忘,RAG 的"先检索再喂"更精准更省(见本专栏第 15-16 篇)。
长上下文怎么实现:稀疏注意力与位置外推
上面讲了长上下文三大挑战(O(n²) 复杂度、位置外推、中段遗忘)。工程上怎么解决:
-
稀疏注意力(Sparse Attention):不算所有 token 两两相似度,只算"局部窗口 + 少量全局"。如 Sliding Window Attention(每个 token 只看前后 w 个 token,复杂度从 O(n²) 降到 O(n·w))、Local+Global(局部窗口 + 全局 token)。Longformer/BigBird 用此类。
-
RingAttention / 分块注意力:把超长序列分块,跨多 GPU 环形计算注意力,让"单机装不下的长序列"能分布式算。支持百万级 token。
-
位置外推(YaRN / NTK-aware RoPE):训练时只见过 4k/8k 位置,推理要 128k/1M,RoPE 直接外推会失真。YaRN/NTK-aware RoPE 通过缩放频率,让模型在更长位置上仍有效。这是 Kimi/LongCat/Qwen 做到 1M 上下文的关键之一。
-
仍受中段遗忘制约:技术解决了"装得下/算得动/位置对",但"中间记不住"是模型固有的注意力偏置,工程上仍要把关键信息放首尾、或用 RAG 精准喂(而非全塞窗口,见本专栏第 15-16 篇)。
趋势:长上下文从 8k 一路卷到 1M+(Kimi/LongCat/Qwen/Gemini)。但"能塞"≠"能用好",长上下文和 RAG 互补而非替代。
映射
-
稀疏注意力 = 索引/分区裁剪:不全表扫描,只扫相关分区。O(n²)->O(n·w) = 全表 join 变分区扫描。
-
RingAttention = 分布式分片计算:数据装不下单机,分片到多机环形算,你的分布式 shuffle 经验。
-
位置外推 = 范围扩展的归一化:训练分布外的外推要校准,像模型对训练分布外数据要重新归一化。
4. 多模态扩展:让 LLM 看图、听声
LLM 原本只懂文本。**多模态大模型(MLLM)**让它还能处理图像/音频/视频:看图说话、读文档截图、听语音。代表:GPT-4V/Gemini、开源 LLaVA/Qwen-VL。
-
核心问题:图像是像素(连续高维),文本是 token(离散)。怎么把图像"喂"给 LLM?
-
主流架构(LLaVA 式):
-
视觉编码器(如 CLIP ViT)把图像编码成一串"视觉 token"(图像 embedding 序列)。
-
投影层(MLP 或 Q-Former)把视觉 embedding 对齐到 LLM 的文本 embedding 空间。
-
拼进 LLM:视觉 token 和文本 token 一起进 LLM,自注意力让图文交互。
-
-
三种融合方式:早期融合(视觉 token 和文本 token 一起输入,LLaVA 式,主流)/ 交叉注意力(LLM 层内加交叉注意力模块,图文分别编码后交互,Flamingo 式)/ 晚期融合(各模态各自编码后融合,少见)。
-
训练:两阶段,先是视觉-文本对齐预训练(投影层),再多模态指令微调(教模型按指令看图回答)。
-
挑战:视觉 token 多(一张图几百上千 token,吃上下文)、图文对齐质量、幻觉(编造图中没有的细节)。
映射
多模态 = 多源数据融合:把结构化表 + 文本 + 日志多源数据统一编码后喂给下游模型。视觉编码器 = 文本 tokenizer 的图像版(把图像切成 token);投影层对齐 = 多源数据的 schema/表示对齐。图文一起进注意力 = 多表 join 后统一处理。多源数据融合经验直接对应。
5. 架构新路线:SSM / Mamba(状态空间模型)
Transformer 的自注意力是 O(n²),长序列贵。**状态空间模型(SSM)**走另一条路:用递归状态压缩历史,复杂度近线性。
-
核心思想 :Transformer 靠注意力"回看所有历史 token";SSM 把历史压成一个固定大小的隐状态(像 RNN 但可并行训练)。每来一个新 token,更新状态,不依赖回看全部历史。
-
Mamba 的突破:选择性 SSM(让模型学会"该记什么、忘什么")+ 硬件感知并行算法,让 SSM 既能并行训练(像 Transformer),又能线性推理(像 RNN,显存不随序列涨)。
-
优势:长序列推理快且省显存(状态固定大小,不像 KV Cache 线性涨);适合超长序列(基因组/时序/长文本)。
-
劣势:通用语言/推理能力仍不及 Transformer 生态(注意力对"任意位置关联"更擅长);生态/工具支持弱。
-
现状:Mamba/Mamba2 后出现混合架构(Transformer + Mamba 层混用,如 Jamba),取两者之长。尚未颠覆 Transformer,但是有潜力的新路线。
映射
SSM = 流式状态聚合(像 RNN/流处理):固定状态 + 增量更新,不回看全历史。Transformer 注意力 = 全表 join(回看所有);SSM = 流式聚合(维护状态)。Mamba 的选择性 = 你的流处理里"按重要性选择性保留/丢弃"。混合架构 = 你混用批+流的 Lambda 架构。
6. 主流大模型谱系对比
学了前面那些技术,看主流模型怎么用:
| 模型 | 厂商 | 架构特点 | 定位 |
|---|---|---|---|
| GPT 系列 | OpenAI | 稠密 Transformer,o 系列为 Reasoning model | 闭源标杆,通用+推理强 |
| Claude 系列 | Anthropic | 稠密,长上下文/工具/Agent 优化强 | 闭源,Agent/编程主场 |
| Gemini | 原生多模态(图/音/视频) | 闭源,多模态原生 | |
| Llama 系列 | Meta | 稠密,GQA,Llama3 开源标杆 | 开源基座 |
| DeepSeek 系列 | 深度求索 | MoE + MLA + GRPO(V3/R1) | 开源,架构创新+低成本,Reasoning(R1) |
| Qwen 系列 | 阿里 | 稠密/MoE 都有,中文优化 | 开源,中文/多模态强 |
| Kimi/LongCat | 月之暗面等 | 超长上下文(YaRN/RingAttention) | 长文本处理 |
| GLM 系列 | 智谱 | 原始 GLM 自回归 blank 填充创新、GLM-3/4 回归 Decoder-only、GLM-5.2 | 中文/多模态、国内最早对话模型(ChatGLM) |
-
看模型要看什么:稠密 vs MoE、注意力(MHA/GQA/MLA,见本专栏第 10-11 篇)、上下文长度、是否 Reasoning、是否多模态、开源/闭源。
-
趋势:MoE 成顶配标配(DeepSeek/Llama4)、Reasoning model 成新范式(o/R1)、长上下文卷到 1M+、开源追近闭源(DeepSeek/Llama3/Qwen)。
-
选型:私有部署/低成本 -> 开源(Llama/Qwen/DeepSeek);极致能力 -> 闭源 API(GPT/Claude);中文 -> Qwen/DeepSeek;长文本 -> Kimi;Agent/编程 -> Claude。
这些模型用的就是 S1 这三篇讲的技术(MoE、GQA/MLA、Reasoning、长上下文、多模态)。理解原理,就能看懂任何新模型。
映射
模型谱系 = 技术选型对比表:像选数据库/框架时看各产品特点(MySQL/PG/Redis 各有定位),大模型也一样按架构/能力/成本选型。
7. 衔接面试
学完 S1 这三篇,你已具备 LLM 基础原理的完整图景。现在去做题巩固:
-
面试篇 Vol.2《大模型基础深化》全卷 30 题(见本专栏第 43 篇):数学信息论/训练基础/模型结构与现象。S1 给了"为什么",Vol.2 练"怎么答"。
-
面试篇 Vol.1 M1(LLM 基础,见本专栏第 33 篇)/ M2(模型对比,见本专栏第 34 篇):用本卷的原理去答,深度远超背概念。
-
重点练:注意力公式与 √d_k、Scaling Law/Chinchilla、Decoder-only 为何胜出、KV Cache、幻觉成因、MoE 混合专家、Reasoning 模型(test-time compute)、长上下文技术、多模态、SSM/Mamba、主流模型谱系。这些是高频考点,S1 已给推导。
下篇预告:S1 讲了"模型是什么",第 6-7 篇(S2)讲"怎么把它训练出来":预训练流程、数据并行/张量并行/流水并行、ZeRO 三阶段显存优化(含推导)、混合精度。训练是"几十上百卡跑几周"的重工程,正是你大数据分布式经验的用武之地。
本篇小结
-
MoE 用稀疏激活实现"参数量大但计算量小":router 选 Top-K 专家,配负载均衡损失防专家塌缩;代价是全部专家都要驻显存。
-
Reasoning 模型把 scaling 从训练时延伸到推理时:RLVR 训出长思维链,难题更准但更慢更贵,工程上按任务难度路由。
-
长上下文三大挑战:O(n²) 注意力、位置外推、中段遗忘;对应解法是稀疏注意力/RingAttention、YaRN/NTK-aware RoPE,而中段遗忘只能靠信息摆位和 RAG 缓解。
-
多模态主流路线是 LLaVA 式早期融合:视觉编码器 -> 投影层对齐 -> 视觉 token 与文本 token 同进 LLM。
-
SSM/Mamba 用固定隐状态换线性复杂度,混合架构是当前落地方向,尚未颠覆 Transformer。
-
看模型六要素:稠密/MoE、注意力变体、上下文长度、是否 Reasoning、是否多模态、开闭源。
上一篇 :第4篇《S1·中:Token 与 Tokenization、预训练 Scaling Law、推理机制、采样与幻觉》 | 下一篇:第6篇《S2·上:预训练流程与数据工程(数据混合/质量/去重/稳定性)》