正在刊行长文 · Essay
2026-06-09所有内容
随机比特 · Random Bits

AI 的"记忆"藏着三个问题——而 OpenAI 选了最省事的那种解法

2026-06-09AI Engineering / Systemsrbits.uk
AI 的"记忆"藏着三个问题——而 OpenAI 选了最省事的那种解法

AI 的"记忆"藏着三个问题——而 OpenAI 选了最省事的那种解法

ChatGPT 上周开始自己学你了。不用你说"记住这个",聊着聊着,它就知道了你的代码风格、项目背景、对什么方案有偏好。

但你如果把"AI 记忆"拆开看,会发现这两个字藏了三件完全不同的工程活儿。OpenAI 的解法是把它们揉成一个黑箱——省事,但代价也在这。


存哪,怎么改,记住谁

第一件,存储。记忆记录在哪?能不能检索到?准不准?

第二件,动作。AI 光读不够,还得写——改文件、更新文档、改配置。写错了就是一行行改坏的代码。

第三件,身份。AI 越懂你越好用。但懂的越多,一次 prompt 注入能偷走的也越多。

过去一周,三件事撞在了一起。OpenAI 上线 Dreaming(自动学习偏好),同时 GitHub 上的 Mempalace 和 Goose 双双冲进 Trending。这不是"开源 vs 闭源"老剧本,是两种架构哲学的对撞——黑箱还是积木。


存储:逐字记,带保质期

ChatGPT 的记忆存在 OpenAI 服务器上。你看不见,导不出,挪不走。

Mempalace 把记忆拆成四层:Wings(人/项目)→ Rooms(话题)→ Halls(事实/事件/发现/偏好/建议)→ Drawers(原始文本块)。关键设计:逐字存储,不做摘要。ChatGPT 记住的是"这人好像喜欢 Python",Mempalace 记的是原话。

LongMemEval 上的检索召回率是 96.6%——零 API、零 LLM、零云端,纯语义搜索跑出来的。

更值得一提的知识图谱。实体-关系用 SQLite 存,带时间有效性窗口——一条事实可以标"2025年6月至2026年3月有效",过期后标记但不删除,历史查询依然能找到。AI 如果不带时间维度,会把所有事实当永久真理——现实的知识有保质期。

存储后端可插拔:默认 ChromaDB,也能换 Qdrant、pgvector、SQLite。它刻意支持了两种基座完全不同的后端(REST vs SQL),目的不是炫技,是确保接口不被某个厂商的特性暗中固化。

ChatGPT 这边:记忆在哪、怎么查、能不能搬——全是黑的。

02-ai-memory-ecosystem


动作:不唯一就失败

Simon Willison 上周发的 datasette-agent-edit 只给了 AI 三个操作:

  1. view —— 带行号查看
  2. str_replace —— 精确替换。硬规矩:old_str 不唯一,直接报错。
  3. insert —— 指定行号插入

str_replace 那条"不唯一就失败"是道安全闸。AI 不能说"把那个 x 改成 y",它必须带上周围代码,直到匹配唯一。这从架构上封死了 AI 批量改坏重复代码的可能。AI 写代码最常见的 bug 不是逻辑错,是在不该改的地方下了手——这条规则把那条路彻底堵了。

Willison 把这套东西做成了存储无关的。SQLite、文件系统、S3、GitHub API 都能用,只换一个 EditStore 实现。设计精巧处:同步文本变换夹在两次异步 I/O 间,绝不跨 await。SQLite 后端不会在写入线程上等网络,S3 后端 CAS 重试不重复发请求。

同一天冲上 Trending 的 Goose 管的也是"动作",但在编排层而非编辑层。70 多个 MCP 扩展,十几个模型提供商,核心是 ACP(标准化 JSON-RPC 协议)——Goose 只是编排层,扩展透传给任意兼容的 AI。它已被搬进 Linux Foundation 的 Agentic AI Foundation,基金会治理,Apache 2.0 协议,重大变更社区审一周。

Mempalace 管"记忆放哪",Goose 管"手脚怎么动"。各管一层,能拼起来。


身份:越懂你,越危险

Dreaming 是个静默观察者。你聊工作,它学会项目结构。你问健康,它记下身体状况。你提同事名,它归档关系。全部自动,你没按过"记住"按钮——它自己决定的。

同一周上线了 Lockdown Mode。功能只有一项:物理切断 ChatGPT 外发网络请求,防 prompt 注入把记忆偷出去。OpenAI CISO 原话:不适合所有人,高风险用户值得拿功能换安全。

翻译:你的 ChatGPT 默认开着门,记忆能被偷。想安全?自废武功。

Simon Willison 管这叫 Lethal Trifecta——AI 同时掌握你的私密数据、能读不可信内容、还能外发请求时,攻击者注入 prompt 就能把私密数据捞走。Dreaming 让"私密数据"更丰富——越懂你,攻击面越大。Lockdown Mode 砍了"外发请求",但得你手动开。默认配置下三件齐备。

Claude 是另一种活法。记忆是两把显式工具:conversation_searchrecent_chats,模型自己决定调不调。每段对话从空白起步,不会预先塞用户画像。每次访问你都能看见。

这不是谁好谁坏。是要一个看不见的、自动跑的、你管不着的记忆系统,还是要一个透明的、每次调用你都知道的。


黑箱还是积木

OpenAI 三层揉成一个产品:Dreaming 管存储,ChatGPT 管动作,账号管身份。省心,但拆不开、换不了、看不透。

开源拆成积木:Mempalace 管存储,Goose 管编排和动作,安全模型自己选。每层独立替换——存储后端、模型提供商、连治理结构都交给基金会。

评估一个 AI 工具,除了模型能力和价格,加三个问题:

  1. 记忆存哪——能导出、自己管吗?
  2. 动作怎么执行——确定性操作还是模型自由发挥?
  3. 身份谁管——数据越多,攻击面是不是同步放大?

你是在用积木搭自己的东西,还是在把自己装进别人的黑箱。

随机比特公众号二维码
公众号 · 随机比特
从 AI 工具热闹里拆工程真相

写边界、控制面、上下文、成本与安全。