Claude-Mem 团队在 X 上发布了一张从底向上的 Agent 记忆架构图,解释了他们在 Cognition Layer(认知层)上的设计思路。

四层架构总览

Claude-Mem 的记忆架构分为四层,每层都有不同的遗忘特征和功能定位:

层级位置遗忘时钟功能
Model LayerLLM 权重 / KV Cache单次前向传播接收正确时间点的正确 token
Context Layer上下文窗口Session 之间当前会话的原始材料(文件、diff、检索片段、工具输出、系统提示)
Cognition Layer认知缓存跨 Session 持久化记忆被理解的内容,不只是被看到的内容
Agent Layer自主循环规划、工具使用、多步执行、自我修正

Model Layer:最底层,最短暂

LLM 本身——权重、注意力机制,以及在单次前向传播内存活的 KV Cache。一次前向传播结束,KV Cache 就消失。这一层的存在是为上面所有层提供正确的 token 输入。

Context Layer:Session 内的原始材料

这一层加载当前 turn 需要的所有材料:文件、diff、检索到的片段、工具输出和系统提示。这是模型在给定 Session 中看到的原材料——短暂的,Session 结束窗口关闭就消失。

Cognition Layer:核心创新

这一层是 Claude-Mem 架构的核心,用来解决前两层的问题:Model Layer 在前向传播之间遗忘,Context Layer 在 Session 之间遗忘。没有 Cognition Layer,Agent Layer 每次重新启动都被迫重新推导它已经得出过的结论。

Cognition Layer 缓存的是认知分析结果,而非原始记录。Transcript 以嘈杂、主观、冗长的形式到达——是一个 Session 的完整详细记录。它们离开时变成精炼的观察:持久的、可查询的、带时间戳的事实和概念。

两个核心原语运行这一层:

1. Progressive Search(渐进搜索)

分层读取路径:Index → Timeline → Transcript。优先最便宜的查询;只在 miss 时才深入下一层。实际效果是约 87% token 节省——这本质上就是缓存命中率。

2. Attention Management(注意力管理)

写入和驱逐策略。决定什么被提升到热存储,什么被降级,什么完全淘汰。

为什么 Cognition Layer 重要

每个上层都在不同的遗忘时钟上运行。Model Layer 在前向传播之间遗忘。Context Layer 在 Session 之间遗忘。没有 Cognition Layer,Agent Layer 被迫在每次重新开始时重新推导相同的结论。

认知缓存关闭了这个循环。 Cognition Layer 记住的是被理解的内容,不只是被看到的内容。

一句话总结:

Transcripts are source code. Observations are the compiled binary. You never recompile what you've already shipped.

对话记录是源码。观察是编译后的二进制。你不会重新编译已经发布过的代码。