深度学习进阶(三十)从 Transformer 到 LLaMA:现代 LLM 架构总览
上一篇我们介绍了 GQA,通过分组共享 KV Head,在注意力质量和推理效率之间找到了实际的平衡点。
至此,从第 25 篇到第 29 篇,我们分别拆解了现代大模型的五个核心设计模块:
- RoPE:旋转位置编码,让 QK 点积天然感知相对位置。
- RMSNorm:去掉均值中心化的简化归一化。
- SwiGLU:门控 FFN,让前馈网络也能根据输入动态筛选信息。
- KV Cache:缓存历史 K、V,消除自回归推理的重复计算。
- GQA:分组共享 KV Head,缓解 KV Cache 的内存压力。
但每篇只聚焦一个模块,容易让人看不清全貌。
所以本篇以 LLaMA 系列为案例,总结现代大模型架构与相关概念。
1. 什么是开源模型?
相比 GPT、Claude 等模型,LLaMA 并不算特别出圈,但它却在社区中往往被认为现代大模型架构的代表,要明白为什么,首先我们需要了解一个基础问题:
什么是开源模型?
先简单概括来说:
GPT、Claude 系列长期提供且只提供 API 服务,我们只能调用模型,而无法获得模型本身,了解模型内部,这就是我们普遍意义上的闭源模型。
而 LLaMA、Qwen、DeepSeek 等模型则可以下载安装到本地运行,因此常常被统称为开源大模型。
不过,即使是开源,这其中的层次也是有所划分的,这里可以用一个很恰当的例子来统一说明:
- 蟹老板不公开蟹黄堡秘方,这是闭源模型:我们只能去店里买蟹堡,但不知道里面用了什么材料、怎么做。
- 蟹老板公开了制作蟹黄堡所需材料和流程,但是没有具体克数,这是开源了模型结构:我们知道要放面包、肉饼、生菜和秘制酱料,也知道制作步骤,但不知道每种材料具体放多少,因此很难做出完全一样的味道。
- 蟹老板进一步公开了每种材料的精确配比,比如肉饼 120g、生菜 15g、酱料 8g……这是开放了模型权重:只要我们获取了这些原料,就可以在自己家里复刻出几乎一模一样的蟹黄堡。
- 最终,蟹老板连原料采购渠道、食材筛选标准、酱料熬制方法、试验过程中失败了多少次、最终为什么选择这个配方都一起公开,那么这就接近于真正意义上的完全开源:任何人都可以从零开始,按照同样的流程重新做出这款汉堡,而不是只能照着最终配方复制。

回到 LLM 领域,我们可以把一个大模型拆成三个层次:
| 开放内容 | 具体包含 |
|---|---|
| 模型结构(Architecture) | 网络结构、层数、注意力机制、RoPE、GQA 等设计方案 |
| 模型权重(Weights) | 预训练完成后得到的数十亿甚至数千亿参数 |
| 训练资产(Training Assets) | 原始训练数据、数据清洗流程、训练代码、超参数、后训练数据等 |
而严格来说,目前主流的开源大模型,其实绝大多数属于第二层:开放权重模型。
LLaMA、Qwen、DeepSeek 等都是开放权重模型:公开模型结构和训练后的权重,但不公开完整训练数据与训练流程。
这是因为对于绝大多数开发者来说,能够下载模型权重并在本地运行、微调,就已经能够满足研究和应用需求,因此近年来开放权重逐渐成为业界主流路线。
而真正意义上的完全开源模型,需要同时公开训练数据、数据处理流程以及训练代码,不仅涉及复杂的数据版权问题,也意味着主动开放大量核心训练资产,因此目前更多由研究机构推动,其研究价值往往高于商业价值。
这部分模型中比较出名的是 AI2 的 OLMo 系列:其最大的特点在于不仅公开模型结构和权重,还公开训练数据、训练代码、训练日志以及中间检查点,因此通常被认为是目前最接近传统开源软件理念的 LLM 项目。
但由于 AI2 的算力资源相对主流 LLM 研发巨头较少,OLMo 的绝对性能通常不如主流模型。
再回到主流,在众多开放权重模型中,影响力最大的无疑是 Meta 于 2023 年发布的 LLaMA(Large Language Model Meta AI)系列。
事实上,在 LLaMA 之前,社区已经存在 GPT-NeoX、OPT 等开放模型项目。
但真正让开放权重大模型进入大众视野、催生本地部署、量化压缩、LoRA 微调等完整生态的,则是 LLaMA 的出现。
它既继承了 Transformer 的基本框架,又系统性地整合了当时最先进的一系列改进方案,因此后来发布的大量模型都在不同程度上沿用了与之相似的设计思路。
2. LLaMA :现代 LLM 范本
23 年, Meta 的论文 LLaMA: Open and Efficient Foundation Language Models 将前几篇提到的已有的部分改造整合到一起,同年的 Llama 2 和 24 年的 Llama 3 则延续并优化了这一架构,最终形成了现在的 Decoder-only LLM 架构。
将以上所有改造拼回一个 Block,一个 LLaMA 的 Decoder Layer 长这样:

每一步的参数配置如下(以 LLaMA 3 8B 为例):
| 模块 | 配置 |
|---|---|
| 嵌入层 | \(d=4096\), tokenizer: tiktoken (128K vocab) |
| 位置编码 | RoPE, base frequency \(\theta=500000\) |
| 归一化 | Pre-RMSNorm |
| 注意力 | GQA, 32 Query Heads, 8 KV Heads |
| FFN | SwiGLU, \(d_{\text{ff}}=14336\) |
| 层数 | 32 |
| 上下文 | 8192 |
从 LLaMA 1 到 LLaMA 3,架构本身也在进化:
| 特性 | LLaMA 1 (2023) | LLaMA 2 (2023) | LLaMA 3 (2024) |
|---|---|---|---|
| 上下文长度 | 2048 | 4096 | 8192 |
| 注意力 | MHA | 70B: GQA; 7B/13B: MHA | 全系列 GQA |
| RoPE base | 10000 | 10000 | 500000 |
| 训练数据 | 公开数据 1.4T tokens | 公开 + 混合 2T tokens | 15T+ tokens |
| 分词器 | SentencePiece | SentencePiece | tiktoken |
| FFN | SwiGLU | SwiGLU | SwiGLU |
| Norm | Pre-RMSNorm | Pre-RMSNorm | Pre-RMSNorm |
可以看到,从 LLaMA 1 到 LLaMA 3,整体结构并没有发生颠覆性变化:真正持续演进的主要是上下文长度、注意力机制、位置编码参数、Tokenizer 以及训练数据规模。
3. 现代 LLM 的架构趋同
如果把近几年发布的主流开放权重大模型放在一起比较,会发现它们其实是趋同的:
| 模型 | Backbone | 位置编码 | Norm | FFN | Attention |
|---|---|---|---|---|---|
| Llama 3/4 | Decoder-only | RoPE | Pre-RMSNorm | SwiGLU | GQA |
| Qwen 3 | Decoder-only | RoPE | Pre-RMSNorm | SwiGLU | GQA |
| Mistral Small 3 | Decoder-only | RoPE | Pre-RMSNorm | SwiGLU | GQA |
| Gemma 3 | Decoder-only | RoPE | Pre+Post RMSNorm | GeGLU | GQA |
| DeepSeek V3/R1 | Decoder-only + MoE | RoPE(改进) | Pre-RMSNorm | SwiGLU | MLA |
| Kimi K2 | Decoder-only + MoE | RoPE(改进) | Pre-RMSNorm | SwiGLU | MLA |
可以看到,现代大模型几乎已经形成了一套事实上的“标准配置”:而真正存在明显分歧的,主要集中在注意力模块的工程优化上。
如今,各家模型在 Backbone 上已经高度趋同,真正拉开差距的因素反而变成了数据和算力支持等基础设施,比如更大规模、更高质量的预训练数据、更复杂的数据清洗与配比策略、更多、更高效的硬件支持、更完善的后训练流程等。
当然, 新技术仍然在不断涌现,但就 LLM 架构本身暂时就到此为止了,之后会以此为基础展开多模态的内容。

浙公网安备 33010602011771号