project
Engram - DeepSeek联合北大推出的条件记忆模块
Engram 是DeepSeek团队联合北京大学推出的条件记忆模块,能提升大语言模型(LLM)的性能。Engram通过引入现代化的 -gram 嵌入表,将静态知识存储在独立的内存...
Engram是什么
Engram 是DeepSeek团队联合北京大学推出的条件记忆模块,能提升大语言模型(LLM)的性能。Engram通过引入现代化的 -gram 嵌入表,将静态知识存储在独立的内存中,用稀疏检索和上下文感知门控技术实现高效的知识查找。Engram 与混合专家模型(MoE)互补,能显著提升模型在知识密集型任务、长上下文处理和推理能力上的表现,不增加计算量,还能突破 GPU 显存限制,支持大规模参数扩展。
Engram的主要功能
-
知识检索:通过静态嵌入表快速查找固定知识,减少对计算资源的依赖。
-
长上下文处理:释放注意力机制的容量,使其专注于全局上下文,提升长文本推理能力。
-
计算与存储解耦:支持从主机内存异步预取数据,突破 GPU 显存限制,实现大规模参数扩展。
-
性能提升:在不增加计算量的情况下,显著提升模型在知识密集型任务、通用推理、代码和数学任务上的表现。
Engram的技术原理
-
分词器压缩:通过预计算的满射函数将原始 Token ID 映射为规范化 ID,减少词表冗余,提高 -gram 的覆盖效率。
-
多头哈希检索:用哈希方法和多头机制将局部上下文映射到嵌入表中,解决直接参数化 -gram 组合的难题。
-
上下文感知门控:用当前隐藏状态作为动态 Query,检索到的嵌入作为 Key 和 Value,通过门控机制抑制噪声,确保语义一致性。
-
稀疏性分配:在给定的参数预算下,重新分配 MoE 专家参数给 Engram 内存,发现计算与记忆之间的 U 型权衡曲线,找到最优分配比例。
-
系统实现:用 Engram 的确定性检索特性,实现计算与存储的解耦,通过预取和重叠机制掩盖数据传输延迟,突破 GPU 显存限制。
Engram的项目地址
- 技术论文:https://github.com/deepseek-ai/Engram/blob/main/Engram_paper.pdf
Engram的应用场景
-
知识问答:Engram 可快速检索知识库中的事实信息,提升问答系统的响应速度和准确性。
-
文本生成:通过高效的知识检索,Engram 能在文本生成中快速匹配固定短语和模式,提高生成效率。
-
长文本处理:Engram 能优化长上下文建模,增强模型对长文本的推理能力,适用于法律、学术等长文本分析。
-
代码辅助:Engram 能快速检索代码中的常见模式和结构,提升代码生成、补全和理解的效率。
-
数学推理:Engram 能快速检索数学公式和定理,辅助解决数学问题,提升推理效率。