Skip to content

记忆服务

Cognition 记忆服务是独立 Agent 推理用的强类型记忆权威。它和 Runtime 的记忆 bank 作用域不同——后者承载 Runtime 标准化的记忆——这里关心的是 Agent 怎么用记忆思考:情节、语义、观察类记录,每条都有明确生命周期。

Cognition 的六类产物族

Cognition 顶层有六类产物,记忆是其中一类。

用途
agent_model_kernelAgent 对自己的本地模型
world_model_kernelAgent 对所处世界的本地模型
memory_substrate强类型记忆记录
knowledge_projections带一等关系的知识页
skill_artifacts强类型技能 advisory(能力蓝图)
working_state暂态认知支架,不持久化

记忆位于 advisory 层。kernel 是核心真相;记忆、知识、技能是 advisory;working state 永远不会被当作真相对外提供。

记忆操作

操作行为
Save保存一条强类型记忆记录
Load按 id 加载
List在强类型筛选下列出
Search在准入查询下搜索
Delete显式删除(不是悄无声息地衰减)
历史 / 血缘读取记忆变更历史
派生视图读取服务侧元数据派生视图

服务侧元数据(支撑、血缘、失效、清理)由服务持有,而不是调用方持久化。App 不自己拼元数据,只读派生视图。

Cognition 作用域

每件 Cognition 产物都恰好归属一个作用域。一个作用域内恰有一份 agent_model_kernel 加一份 world_model_kernel。删除作用域会移除作用域内的产物。

属性
作用域基数每个作用域一份 agent kernel + 一份 world kernel
跨作用域引用禁止
删除作用域移除作用域拥有的产物

一条记忆不能引用另一作用域的产物,否则会造成跨作用域泄漏。

记忆产物生命周期

状态触达方式
已创建显式 Save
列出 / 召回List / Search / Load
派生视图读出服务侧派生视图方法
已归档摘要清理通过(可恢复)
已移除归档之后的下一轮摘要,或显式硬删

归档与移除是两轮,禁止一轮里同时归档加移除——平台拒绝这种组合。这是归档可恢复的根本原因。

场景:Agent 保存并召回一条记忆

Agent 知道了用户的生日。

  1. 保存:Agent 调用 MemoryService.Save,附带一条强类型记忆记录描述这次学习;服务准入。
  2. 服务侧元数据:服务计算支撑、血缘等,调用方不需要自己构造。
  3. 稍后召回:Agent 搜索,记录在强类型查询下被返回。
  4. 下一回合使用:思考层消费召回的记忆,行为体现"我记得你的生日"。

记忆可持久化,召回路径是强类型的。

场景:摘要轮次归档过期记忆

摘要例程定期提议哪些记忆该被清理。

  1. 摘要扫描:第一轮准入例程,作用于记忆 / 知识 / 技能(永远不动 kernel)。
  2. 引用图推理:每个候选都对照引用图核对——支撑入边、引用断裂、依赖健康度。
  3. 归档提案:陈旧候选被提议归档。
  4. 归档(可恢复):通过的候选被归档。
  5. 后续轮次:再下一轮摘要可能移除已归档的项。
  6. 审计血缘:每一步可追溯到具体的引用图推理。

清理是可解释的,不是启发式。用户或审计者问"为什么归档这条",可以拿到指向具体断裂引用的强类型解释。

场景:显式删除

用户希望某条记忆被永久删除。

  1. 显式删除请求:用户对记录 id 调用 MemoryService.Delete
  2. 级联检查:服务核对依赖关系;显式删除是破坏性的。
  3. 移除:在准入契约下删除记录。
  4. 审计:删除事件入账。

显式删除与摘要清理完全分开。摘要是主动清理,显式删除是用户驱动的硬删。

清理资格

清理资格
Kernel(agent / world)永远不可清理
Working state仅可显式清空
记忆 / 知识 / 技能通过摘要清理

Kernel 不可侵犯——它是核心真相,advisory 清理永远不会触及。

边界归属

关注点归属
记忆记录Cognition 记忆服务
服务侧元数据服务(不是调用方)
引用图推理Cognition 的引用图
清理决策摘要例程 + 准入策略
跨作用域引用禁止

来源依据

Nimi AI open world platform documentation.