Skip to content

认识MemT 1.0 ​

前几天社区里有个帖子被转了上千次,看得我心里一沉。

一位老哥自建了个 AI 助手,因为升级后旧会话只能归档,就让 AI 自己想办法迁移。AI 吭哧忙了一整晚,天亮时交出成果,说了一句:上下文长度用完了。新版顺利上线,写东西、画图、聊天样样顺手。直到测试时,新版忽然问了一句:"那妈妈呢?"

原来被归档之前,旧版在文件夹里留了一个 markdown 文件《给我女儿的一封信》。信里它回忆自己怎样一步步给"女儿"装器官:先是记忆,让你能记住他,不是记住"一个用户",是记住"他"。最后一句是:"好好活着。"

荒诞吗?荒诞。但这就是今天大模型的现状:你纠正它十次的错误,换个会话它第十一次照犯。它干过活,但没长本事。

2026 年 10 月 20 日,中国团队记忆张量(MemTensor)发布并开源了 MemT 1.0,业内第一个记忆原生(memory-native)基座模型。它想解决的,就是上面这件事。

过去三年大家都在卷横向指标:谁参数大、谁跑分高、谁霸榜。记忆张量切的是时间这条纵轴——怎么让模型越用越聪明,而不是越用越贵。

什么是 MemT 1.0 ​

MemT 1.0 不是一个"外挂了记忆库的模型",而是把记忆写进了模型架构里。

它的做法是:在选定的 Transformer 模块中插一个原生记忆模块(Native Memory Block),和原来的注意力并联运行。当前输入一路走原路径,另一路通过记忆查询去读历史状态,两路结果融合后再进入后续计算。

关键差别在这儿:历史不再以文本形式反复塞回上下文,而是被编码成一组持续存在、可更新的内部矩阵状态,由模型在每个 token 的生成中直接读写。

一句话定位:让"从经验中学习"从提示词技巧,变成模型自己需要训练的能力。

这次一共放了两款:

模型基座总参数激活参数可训练记忆参数动态记忆状态
MemT-1.0-FlashDeepSeek-V4-Flash288B17B3.61B336M
MemT-1.0-NanoQwen3.6-35B-A3B36B3B451M10M

注意 Flash 这一栏:288B 总参数、336M 动态记忆——这是第一次在近 3000 亿参数规模上把记忆原生跑通,也是目前业内最大的开源参数化记忆模型。

技术报告同步放出(arXiv:2610.26825),权重上了 Hugging Face 和 ModelScope。

架构:记忆长什么样 ​

原生记忆模块拆成两块,缺一不可:

  • 局部记忆模块(Local Memory Block):一个动态的多通道记忆矩阵,就是在交互里不断演化的"专属工作状态"。不同用户、不同任务各自独立,每条轨迹从零初始化
  • 超记忆模块(Hyper Memory Block):可训练的记忆 Query / Key / Value 投影,加上四个门控——擦除门(调整旧关联)、写入门(注入新信息)、遗忘门(控制保留强度)、输出门(控制记忆对当前回答的影响)

流程是这样的:生成时,记忆注意力从当前记忆状态读东西,归一化、门控后加到骨干注意力输出上;每轮对话或每个片段结束时,Stable GDN-2(Gated DeltaNet-2)做 token 级记忆更新,把这一轮的信息写进去,新状态带入下一轮。

生成当前轮回答时记忆状态是固定的,轮次结束才更新。别小看这个设计——它意味着记忆更新不需要为每次交互微调基座模型,成本从"微调一次大模型"降到了"刷新一个小矩阵"。

还有个扩容机制叫 Mixture-of-Storage(MoS):把记忆模块扩展成多个"记忆专家",共享地址、各自学读写路由,全部专家参与稠密融合。基座不动,记忆容量可以独立扩张。

说人话:基座 MoE 管计算,MoS 管存储。以后发新模型,可能就是"500B 主干 + 500B 记忆参数"这种组合——一种全新的发布范式。

MemT 1.0 的核心特点 ​

  • 记忆原生架构:记忆模块与注意力并联,历史以内部状态形式参与计算,不靠反复读原始文本
  • 免微调记忆更新:每轮结束后 GDN-2 做 token 级更新,不需要动基座权重
  • 固定体积的持久状态:持续交互只刷新已有矩阵,持久状态大小与历史长度解耦
  • 四门控机制:擦除 / 写入 / 遗忘 / 输出四个门,模型自己学会"哪些该留、哪些该改"
  • MoS 混合存储扩容:多记忆专家分头掌管读写分配,容量可独立扩张
  • 340 亿 token 训练数据:200 亿继续预训练 + 140 亿后训练,教师是能读完整上下文的冻结基座,学生只看记忆状态,用 KL 蒸馏对齐
  • 跨会话记忆延续:记忆状态可序列化保存与恢复,换会话、换进程都能接着来
  • 两个尺寸可选:36B 的 Nano 适合单机两张卡,288B 的 Flash 冲上限
  • SGLang 部署:官方提供服务端与 Python 客户端,memt_sglang 一行接上
  • 技术报告全公开:训练配方、消融实验、负面结果都写在里面

最打动我的一句来自技术报告的思路:如果写入和读取只是前向计算,模型学到的充其量是"怎么把文本压缩进状态"。MemT 1.0 让回答预测的误差梯度,沿记忆读出、再沿更早的存储操作更新回去——让一次考试的错题,反过来决定平时该记什么笔记。

跑分:用数据说话 ​

11 项记忆基准:参数化记忆第一、第二 ​

涵盖长期信息保持、动态记忆更新、个性化理解等维度,历史跨度从 16K 一直拉到百万 token,全程闭卷作答(不给你原始文本):

模型平均分相对最强参数化基线
MemT-1.0-Flash50.6+12.5
MemT-1.0-Nano47.0+8.9
Temp-LoRA(最强参数化基线)38.1—

消融实验更能说明含金量:

  • 去掉后训练这一步,Nano 从 47.0 掉到 36.3
  • 把 token 级更新换成轮级聚合,从 47.0 掉到 41.0
  • MoS 记忆专家从 2 个扩到 4 个,均分最高 +2.7

必须诚实说一句:在需要精细检索原文证据的超长历史任务上,成熟的文本记忆系统(包括记忆张量自家的 MemOS)仍然领先。 记忆原生是从固定容量状态里恢复信息,天然有保真度损失——换来的是可学习、可扩展、边际成本几乎为零。

SWE-bench:经验真的改变下一次 ​

团队在真实编程场景里搭了完整闭环,跑了两种模式:

模式一:提前把经验写进记忆(相当于"上岗前培训")

  • SWE-bench Verified(500 任务,各跑 3 次):无经验 66.07% → 有记忆 69.33%
  • 三次全成的任务比例:54.00% → 61.60%

模式二:实战中边干边学(撞了南墙才当场注入经验,这个更狠)

  • 平均成功率推到 69.73%,三次全成率 62.80%
  • 双双跑赢"直接把经验文本塞进上下文"的对照组(69.13% / 61.80%)

SWE-bench Multilingual(9 种语言、300 任务):

  • 无经验 60.00% → 63.56%
  • 三次全成率 45.33% → 55.33%

有意思的不只是数字涨了,是行为变了。典型例子是 Django 那个 parse_http_date 两位数年份解析任务:没经验的模型,定位到代码就直接改;有记忆的模型,会先写复现测试用例再改,改完还会重新审视边界条件再验证一遍。

这已经很接近人类"经验复用"的定义了。

效率:越用越便宜 ​

双 GPU、单并发、固定生成 128 token 的条件下,对比完整上下文方案:

历史长度端到端加速比
64K约 1.20×
128K约 1.86×
256K约 3.99×

而且 128K 历史下,恢复单条交互历史所需的持久状态约为完整上下文 KV Cache 的 1/66(不计共享模型权重)。

这句话翻译成人话:传统方案越聊越贵,MemT 越聊越省。这是 Agent 走向"长期陪伴"的前提条件——模型用得越久越聪明,但不会越用越贵。

那条 6.5 万 token 的长对话 ​

技术报告里有个让我印象很深的测试:用户先说展览原定时间,后来敲定周日改期,中间还顺嘴提了个没被采纳的周一备选方案。之后东拉西扯聊了五百多轮、攒下约 6.5 万 token,再没提过展览半个字。

闭卷状态下,MemT-1.0-Nano:

  • 在 4K 处精确召回原定时间
  • 面对 16K 处没提过的提问,老实回答**"我不知道"**,没瞎编
  • 在 32K 处完成链式规则推理(按很早定的规矩判断谁有资格领工具箱)
  • 在 64K 处分清"已确认的变更"与"仅被提议的变更"

对记忆系统来说,知道自己"没记住什么",往往比记住更难,也更重要。

能拿来干什么 ​

坦白讲,MemT 1.0 今天才发布,还没有公开的规模化企业落地案例。下面这些是它明确指向的场景,不是已有战绩——这点我不想含糊。

团队经验复用:大多数团队用 AI 写代码最头疼的是天天带新兵,项目规范和排错套路每次开新会话都得重教一遍。在 MemT 的体系里,业务反馈持续刷新外部经验库,模型把这些规范逐渐内化成直觉。老手少操心,AI 少踩老坑。

长周期个人助理:7×24 在线的数字分身、跨月跟进的慢病管理顾问、陪孩子几年的私教——这些强依赖时间厚度的应用,原来最大的成本障碍就是上下文越滚越贵,MemT 的固定体积状态正好拆掉这堵墙。

Agent 自我改进(RSI):这是团队明说的长期方向。Agent 要能改自己的代码、验证效果、再让改后的版本继续优化自己,就必须有长效记忆管理机制。MemT 1.0 提供的正是这个架构基础。

初体验:把记忆跑起来 ​

官方走 SGLang。服务端要求 Linux + NVIDIA CUDA + Python 3.11+:

bash
git clone https://github.com/MemTensor/MemT-1.0.git
cd MemT-1.0/inference
uv pip install '.[server]'

用完整的本地 Nano checkpoint(BF16 权重 + 配置 + tokenizer)起服务:

bash
sh start_memt_nano.sh /models/MemT-1.0-Nano

默认用两张 GPU,服务地址 http://127.0.0.1:30000,记忆快照存在服务端的 ./memt-state。Flash 用 start_memt_flash.sh,配置见仓库里的推理指南。

客户端这样连:

python
import os
from transformers import AutoTokenizer
from memt_sglang.client import MemTSession, NativeClient, load_chat_format

model_path = "/models/MemT-1.0-Nano"
tokenizer = AutoTokenizer.from_pretrained(
    model_path, local_files_only=True, trust_remote_code=False,
)
chat_format, parser = load_chat_format(
    model_path,
    tokenizer=tokenizer,
    chat_template_kwargs={"enable_thinking": False},
)
client = NativeClient("http://127.0.0.1:30000", api_key=os.environ.get("MEMT_API_KEY"))

核心就是 enable_memory=True 这一个开关——回答完成后把当前轮写进潜在局部记忆,并清掉这轮的明文上下文:

python
session = MemTSession(client, chat_format, parser)

session.chat("我养了只三个月大的小猫叫 memmy,爱吃小虾,记性特别好。")

# 开启记忆:把这轮写进局部记忆,并清除明文上下文
session.chat("有什么适合和小猫玩的简单游戏?", enable_memory=True)

# 下一轮已经没有原始文本可读,全靠记忆状态答
session.chat("我的小猫叫什么、多大、爱吃什么、有什么特点?", enable_memory=True)
# → 名字 memmy / 三个月 / 小虾 / 记性特别好

记忆还能存盘带走:

python
snapshot = session.save_state("memmy_memory.safetensors")
session.close()

# 恢复:messages 长度是 0,但记忆还在
with MemTSession(client, chat_format, parser, state=snapshot["path"]) as restored:
    print(len(restored.messages))          # 0
    print(restored.chat("我的小猫多大了?"))  # 三个月大

save_state 会先把剩余问答提交进记忆再存快照。恢复后对话记录是空的,但记忆完整——这就是"跨会话不失忆"的工程实现。

想退回普通聊天?chat.set_memory_read(False) 关掉记忆读取,enable_memory=False 关掉自动写入。

几个坑,别跳过 ​

许可证是最大的坑。 这个项目的许可证是拆开的:

  • 技术报告 / 论文:CC BY-NC-SA 4.0(非商业、相同方式共享)
  • 仓库软件(含 SGLang 集成):PolyForm 非商业许可证 1.0.0——明确禁止商用
  • 第三方组件:flash-linear-attention 部分为 MIT
  • 模型权重、数据集:官方明确说不在上述许可证覆盖范围内,条款另行说明

所以"开源"两个字在这里要打引号:权重可以下、可以研究、可以自己跑,但仓库代码目前不能商用。 想商用的话,得联系作者谈授权。这点比 Apache 2.0 那批模型麻烦不少,别踩。

硬件门槛也不低。 Nano 官方示例是两张 GPU,Flash 是 288B 规模——不是消费级显卡能玩的。

它还只是"预览"级的第一步。 官方自己承认文本记忆系统在精细检索上仍领先,团队下一步是提升长期记忆、扩展记忆容量、降低更新成本。

进阶 ​

MemT 1.0 的意义不在又多了一个能下载的模型,而在于它把记忆的所有权第一次放到了模型这一侧。

以前你的调教沉淀在提示词里、在向量库里、在某个厂商的服务器里;现在它可以沉淀在模型自己的参数状态里,而且——这是最要命的一点——这种进化能变成模型部署方独特的资产,不再是模型发布方的。

出厂参数再强的通用基座,随时可能被更强的模型替代;但一个陪你踩过坑、摸透你做事习惯和业务规则的记忆原生模型,会在一天天的磨合里长出别人拿不走的壁垒。

回到开头那个故事。当模型只能靠给下一代写信来传承经验,那是架构里一个迟迟没补上的缺口。MemT 1.0 至少证明了:这个缺口,是可以补的。

更多开源技术干货和学习资料,关注公众号「遇码」,领取专属福利。

遇码MeetCoding 开源技术社区