现代 decoder 常见配方
Pre-RMSNorm + RoPE + SwiGLU + causal attention;具体 heads/KV、窗口和 MoE 是进一步的资源选择。
FRONTIER 03 / MODEL CASES
用几张代表性的卡,把 Encoder/Decoder、MHA/GQA、位置编码、Norm、SwiGLU、MoE、MLA、总参数与激活参数放在一起。 通过这些案例练习阅读模型配置,并分析各项选择的代价。
选一个模型,重点看它为什么采用这些结构,以及哪种成本被转移到了别处。
ENCODER-ONLY / MASKED LM
用 masked LM 学习双向上下文。它输出每个 token 的上下文状态,采用双向上下文接口。
双向 attention 让每个位置同时看左右文本,适合理解与 masked 目标;其可见上下文与 GPT 式因果生成不同。
用于句向量时,需要按任务选择和训练 pooling 或输出头。
把“参数变大”与“单 token 激活变大/不变”分开看。
| 模型 | 类型 | Attention / KV | 位置 / Norm | 容量 | 主要代价 |
|---|---|---|---|---|---|
| BERT-base | Encoder | 双向 MHA | Absolute / Post-LN | Dense 110M | 不能直接因果生成 |
| LLaMA 2 7B | Decoder | MHA 32 KV | RoPE / Pre-RMSNorm | Dense 约 6.7B | KV 较大 |
| Llama 3 8B | Decoder | GQA 8 KV | RoPE / Pre-RMSNorm | Dense 约 8B | 更大词表与权重 |
| Mistral 7B | Decoder | GQA 8 KV + window | RoPE / Pre-RMSNorm | Dense 约 7.2B | 局部窗口与全局能力权衡 |
| Mixtral 8×7B | MoE Decoder | GQA 8 KV | RoPE / Pre-RMSNorm | 总 46.7B / 激活 12.9B | 专家显存、all-to-all |
| DeepSeek-V2/V3 | MoE Decoder | MLA + 细粒度 MoE | RoPE 相关 / RMSNorm 类 | V2 约 236B/21B;V3 约 671B/37B | 复杂路由、潜在 KV 重建 |
| Mamba | SSM | 无标准 attention KV | 状态递推 | 取决于具体规模 | 长程检索与生态差异 |
这些组合在公开模型中较常见,具体选择仍取决于任务和资源。
Pre-RMSNorm + RoPE + SwiGLU + causal attention;具体 heads/KV、窗口和 MoE 是进一步的资源选择。
LLaMA 2 7B 用 MHA,70B 已用 GQA;Llama 3 8B 也采用 GQA。需按具体尺寸比较 KV heads,各尺寸的采用时间和配置分别记录。
Mixtral 和 DeepSeek 都利用稀疏专家扩容,但都保留完整专家内存与复杂路由成本。
RoPE、窗口、MLA、KV cache、context parallel 与训练数据必须协同;远端信息的使用能力需要专门测试。
MLA 学习压缩的潜在表示,并在 attention 计算中使用相应投影;缓存内容和执行方式需查看具体实现。
Mamba 用状态递推替代标准 attention;可以混合,也可以独立,但质量、硬件和工具生态都要另行验证。
DeepSeek-V4.1-Flash 的 2026-09-17 技术报告把长任务的输入处理、全局 KV 存储和跨设备搬运作为设计重点。下面按该版本展开结构;数字来自作者报告,未在本站实测。
| 项目 | 报告配置 / 定义 | 阅读时要区分 |
|---|---|---|
| 层与计算路径 | 40 个因果 Transformer 层:20 层 causal encoder + 20 层 decoder。 | decoder 全局 KV 从 encoder 输出构造,多数 prompt token 可绕过完整 decoder 计算;局部 SWA 状态仍需维护或重建。 |
| 参数 | 552B backbone,另有 196B Engram 参数;报告 prefill/decode 每 token 激活量为 8B/16B。 | backbone 与额外条件记忆分别统计;激活量与实际 FLOPs、访存量各自有口径。 |
| 全局注意力 | CSA2:压缩表示、稀疏索引、跨层 KV 与索引复用。 | 表示压缩、访问选择、跨层共享分别作用于不同维度。 |
| 全局 KV 精度 | 训练中使用 FP4 全局 KV;报告长上下文每 token 全局 KV 约 890 bytes。 | 这是全局分支的口径,不能直接当作整个请求的全部显存。 |
| 持久缓存 | SWA Bounded Replay 用有限局部重算近似恢复 SWA 状态。 | 少存局部 KV 要支付重算成本,且近似恢复需质量回归;HBM 与主存/SSD 分开记账。 |
创建全局 KV 和 indexer K,通过索引选取访问位置。
读取前面层的全局 KV,以本层 indexer Q 重新评分,得到新的 Top-K 位置。
复用全局 KV 和选择位置,本层仍有自己的查询与局部状态。
这三种模式在架构中静态安排;共享的是指定状态,不是把每一层的计算结果变成相同内容。
普通 MHA/GQA 中“层数 × 长度 × KV head 数”的账本假设各层独立保存完整历史。跨层共享、压缩全局状态与固定局部窗口需要按存储对象重新推导。
长任务常重复提交很长的输入,新增输出较短。该案例调整 prefill 与 decode 的路径;比较时还要固定命中缓存比例、输入输出长度、并发和质量目标。
Engram 使用稀疏访问的条件记忆模块。它属于模型结构中的参数容量;与 Agent 文件记忆的写入、检索和权限机制需分别理解。
报告还采用 Single-Pass mHC 的残差混合实现,以及在骨干预训练后单独训练的 DSpark 草稿模块。草稿验收依赖推理流程;残差混合改变层间信息组合,不能仅用 KV 压缩解释这些部件。
本节绑定 2026-09-17 架构报告。10 月 17 日发布说明另提到的 Self-Feedback RL 属于后训练更新,具体奖励和优化细节需按该版本的公开材料另行核对。
Engram 将局部 N-gram 映射到可训练的记忆表,再用当前 hidden state 对查到的内容做门控。确定的是地址计算;表中向量仍随训练更新,实际贡献也依赖上下文。它是模型参数容量的一部分,读取、梯度与优化器状态需要分别核对。
教学 token 序列为 [1,2,1,2],只用相邻 2-gram。两个地址函数为 h₀(a,b)=(3a+b) mod 5、h₁(a,b)=(a+2b) mod 7;表 E₀=[0.1,−0.2,0.3,−0.4,0.5],E₁=[0.2,0.4,−0.1,0.3,−0.5,0.6,0.7]。每张表查一个标量,再拼成二维记忆 m。首位置不足两个 token,约定不查表。
| 位置 | 2-gram | 两张表的地址 | 门控 α | 记忆残差 αm |
|---|---|---|---|---|
| 0 | — | 不读表 | 0.000000 | 0.000000 / 0.000000 |
| 1 | 1 / 2 | 0 / 5 | 0.535297 | 0.053530 / 0.321178 |
| 2 | 2 / 1 | 2 / 4 | 0.469984 | 0.140995 / −0.234992 |
| 3 | 1 / 2 | 0 / 5 | 0.566774 | 0.056677 / 0.340064 |
位置 1 和 3 查到同一组参数,前缀特征不同,门控与残差也不同。修改后缀为 [1,2,9,8] 时,前两个位置的计算保持不变;脚本核验这个因果边界。
固定上游梯度为 [[0,0],[0.2,−0.1],[−0.3,0.4],[0.5,0.2]],定义线性读出 L=Σₜuₜᵀyₜ。对记忆分量既有直接值路径,也有经 α 的门控路径;同一表行累积所有命中位置的贡献。
| 表行 | 命中位置 | 各位置梯度贡献 | 累计梯度 |
|---|---|---|---|
| E0[0] | 1 / 3 | 0.105652 + 0.289290 | 0.394942 |
| E0[2] | 2 | −0.146103 | −0.146103 |
| E1[4] | 2 | 0.167561 | 0.167561 |
| E1[5] | 1 / 3 | −0.055640 + 0.131064 | 0.075424 |
全部 12 个表参数都经过有限差分核对,包括未命中的零梯度行。无动量、无权重衰减的一次 η=0.1 SGD 后,固定读出由 0.298644 变为 0.277604;这不是知识或语言能力评测。换用有历史状态的优化器后,当前零梯度不再自动意味着零更新,见矩阵更新例。
| 2-gram | 两个地址 |
|---|---|
| 1 / 2 | 0 / 5 |
| 2 / 4 | 0 / 3 |
| 3 / 1 | 0 / 5 |
第二行只在一张表上碰撞,第三行两张表都碰撞。相同地址共享实际参数,其梯度在同一行汇合;上下文门控提供额外区分,但不能据此保证冲突无害。本例 hash 故意简单,不复现官方 multiplicative-XOR 实现。
Engram 原论文 v1(2026-01-12)第 2.2–2.5 节包含 tokenizer 压缩、多头 hash、RMSNorm 后的 K/Q 门控及短因果卷积,并区分训练时分片查表与推理预取。V4.1-Flash v1(2026-09-17)第 2.4.2、2.5 节说明省略短卷积,并使用动量加 Sinkhorn 均衡更新表参数;这些变体不合并成一个未标版本的配方。
本站仅重算小表、门控与梯度,没有训练 Engram 模型、运行 All-to-All、FP8 查表、主存/RDMA 预取或测量端到端收益。实际系统还要记录表/Tokenizer 版本、重复 ID 的归并与分片、优化器状态和传输成本。
在仓库根目录执行;固定输入、逐行梯度、更新中间值和完整调度事件均随代码保存。
python3 artifacts/lookup-updates-overlap-20261030T074358Z/check-mechanisms.py按这个顺序可以逐项核对新模型的结构、成本和评估条件。
Encoder、decoder、encoder-decoder?因果生成还是双向理解?
形状、层数、Q heads、KV heads、head dim、FFN width。
Pre/Post、LayerNorm/RMSNorm、GELU/SwiGLU。
RoPE 频率、相对 bias、窗口、context extension。
Dense 或 MoE、总参数、每 token 激活与路由。
KV 大小、context、prefill/decode、benchmark 与目标领域。
从模型卡到任务评估:模型卡提供结构和训练信息。结合推理预算、评估切片与失败样本,才能判断它在目标场景中的效果。
模型数字来自标注版本的作者报告,未在本站实测。新增 Engram 教具只有两张标量表、2-gram 和无投影/RMSNorm 的简化门控;核对 12 参数梯度、碰撞与前缀,不重跑模型、查表通信或主存预取。原始论文与 V4.1 去卷积/更新配方分开。