🏠 home › concepts › engram-conditional-memory
tags
[AI, 大模型, 架构, DeepSeek, 记忆系统, 稀疏性]
created
2026-04-24
updated
2026-04-24
sources
[raw/notes/deepseek-v4-release-2026-04.md]

定义

DeepSeek 2026-01-13 开源的条件记忆模块,梁文锋共同署名(CEO 署名通常代表公司战略方向)。论文标题:Conditional Memory via Scalable Lookup: A New Axis of Sparsity for Large Language Models。代码与论文:https://github.com/deepseek-ai/Engram

核心论点是 "查—算分离":传统 Transformer 把"事实性记忆"(如"戴安娜王妃 = 英国前王妃")和"逻辑推理与计算"混在同一组 dense 参数里——等于用深度逻辑电路反复重建一个本该是哈希查找的操作,浪费 effective depth。Engram 把固定记忆模式存入哈希查找表,O(1) 复杂度调用,让 dense 参数专注于推理与计算。

V4 已集成 Engram,2026-04-24 与旗舰一起验证落地。

为什么是新一轴稀疏性

MoE 通过 conditional computation(按 token 路由专家)扩规模;Engram 通过 conditional memory(按 token 查 hash 表)扩规模。两者是正交的两个稀疏轴,可叠加使用。

Conditional Computation(MoE) Conditional Memory(Engram)
节省什么 计算(FLOPs) effective depth(层数)
触发 路由到子集专家 hash 查表
弱项 知识查找仍走全栈推理 推理仍走全栈计算
互补 与 Engram 叠加 与 MoE 叠加

Engram 论文给出新的 稀疏分配律:iso-参数 + iso-FLOPs 约束下,最优 75-80% 计算 + 20-25% 记忆。纯 MoE(100% 计算)次优——这是对"MoE 已是终极稀疏方案"的实证否定。

机制要点

多头哈希(Multi-Head Hashing)

输入 2-3 token 序列 → K 个独立 hash 头 → 索引大型 embedding 表 E → 拼接成 raw memory vector。

为什么需要多头:单 hash 必有碰撞,多头独立映射后拼接相当于把 K 个独立观察证据集成。

不为每种 token 组合单独留 embedding(组合不可能枚举),而是用 hash 把无限组合映射到有限 embedding 表。

Gating 过滤

hash 查表必有碰撞或一词多义("Apple = 水果还是公司")。Engram 用 gating 过滤:

含义:Engram 不是"硬替换" attention/FFN,而是 gated additive 模块——可与现有 dense block 共存。

确定性寻址 → 内存放置突破

关键工程含义:hash 函数是确定性的,给定 token → 必然查到固定 entry。这让大型 embedding 表可以 offload 到 host memory(CPU 内存 / 系统 RAM)而非 GPU HBM,runtime prefetch 开销可忽略。

这条直接绕过 GPU HBM 容量约束——而 HBM 是 2026 AI 系统最贵的物理瓶颈之一(参见 optics-as-scaling-constraint 中 bandwidth-driven 范式下的内存层级讨论)。Tom's Hardware 标题点出 "decoupling compute power and RAM pools to bypass GPU & HBM constraints" 不是夸张——这是模型架构层对硬件层约束的反向破解。

实验结果(27B Engram + MoE,iso-参数 + iso-FLOPs)

类别 纯 MoE Engram + MoE
推理类(BBH / ARC-Challenge / MMLU 等综合) 70% 74%
知识类 57% 61%

反直觉发现:记忆模块改善推理(+4pt)多过改善知识检索(+4pt 但基数低)。解释:dense 参数原本被"反复重建静态知识"占用了相当大的 effective depth,Engram 把这部分卸载后,推理腾出的容量比知识查找本身的提升更大

含义:现有大模型的"推理短板"部分是"被知识占用了推理 capacity"——架构问题,不是 scale 问题。

与 Sentino 记忆系统设计的对照

Engram 是模型架构内的固定知识哈希表——用于训练阶段固化的世界知识 / 实体名 / 固定搭配。

sentino-memexauto-memory模型外的用户级动态记忆——用于 user-specific 的会话历史、偏好、关系。

两者是不同层级、不同时间尺度的记忆方案:

Engram Sentino Memex / Auto Memory
何时写入 训练时(hash 表 + embedding 一起优化) 推理时 / 夜间合并
内容 固定世界知识(戴安娜 = 王妃) 用户事件、偏好、关系
容量 embedding 表参数级 TTL + Reinforce + 合并
服务对象 模型本身 用户

Engram 不替代用户级记忆,但改变了模型留给用户级记忆系统的接口——如果模型本身已经把固定知识高效查表,用户级记忆系统就不必再为"模型不记得 X"做兜底,可以更专注于真正的个体化 / 时序信息。

与平台层坍缩的方向对照

platform-layer-collapse 讲软件层往上收敛(模型吞软件 / SDK / Agent runtime)。Engram 揭示了模型架构内部往下分层的反向力量——不是把所有功能塞进一个 dense 网络,而是按计算性质(计算 / 记忆 / 路由)拆开。

两条方向相反但同源:AI workload 已成熟到可以被精细拆解 / 重塑——上端被吞,下端被拆,内部也被分层。

战略信号

待验证 / 局限

相关概念