Skip to content

Agent 记忆系统公理化设计与推导

在你给定的文章基础上,我把 Agent 记忆抽象为一个公理化系统,先给出最小充分的公理组,再基于公理推导可验证的性质与工程结论,形成一套既可证明又可落地实现的规范。

1. 对象与表示公理(What exists)

  1. 记忆对象分层公理
    记忆集合 MM 被划分为互不相交的四类:工作记忆 WW、情景记忆 EE、语义记忆 SS、程序记忆 PP

    • M=WESPM = W \cup E \cup S \cup P
    • WW 有容量上界,随上下文滑动;EE 记录时序事件;SS 为可复用事实与关系;PP 为可执行技能/策略。
  2. 语义可嵌入公理
    存在嵌入函数 φ:MRdφ: M → R^d 使得相似记忆在向量空间中接近,且对话历史增强可通过线性组合实现:

    • φ(qenh)=αφ(q)+βiwiφ(hi)φ(q_{enh}) = α·φ(q) + β·∑_{i} w_i·φ(h_i),其中 wi=1∑ w_i = 1wiw_i 随时间衰减。
  3. 知识可图化公理
    存在图表示函数 γ:SG=(V,E,L)γ: S → G=(V,E,L),使语义记忆可被三元组表示 vs,r,vo⟨v_s, r, v_o⟩,节点可匹配,关系可时间标注与失效标记,而非强删除。

  4. 元数据封装公理
    每条记忆 mMm ∈ M 至少包含时间戳、来源、访问计数、可选标签与安全级别;这些元数据参与检索与遗忘决策。

  5. 统一接口公理
    对外暴露统一的 remember/recall/forget/update 接口,屏蔽后端(向量库、图数据库、关系库)差异。

2. 操作与演化公理(How memory changes)

  1. 最小操作集公理
    更新原语集合 O=ADD,UPDATE,DELETE,NOOPO = {ADD, UPDATE, DELETE, NOOP} 足以表达记忆演化;其中 DELETE 对语义图默认为“标记失效(invalidate)”,非物理删除。

  2. 冲突与一致性公理
    对任一候选事实 ωω

    • 若不存在语义等价元素则 ADD(ω)
    • 若存在补充/细化则 UPDATE(ω)
    • 若存在矛盾则对旧事实 invalidateADD(ω)
    • 否则 NOOP
      此流程确保知识库在时间维度上的一致性与可回溯性。
  3. 增量可用公理
    任意新记忆入库后,系统在亚秒级时间内可被检索(增量索引/批处理异步化),无需重建全量索引。

  4. 选择性遗忘公理
    存在有向无环依赖图 DAG 表示记忆溯源与派生,执行 forget(m) 至少可级联清理与 m 直接依赖的派生物;策略可配置为标记或物理删除。

  5. 稳定衰减公理
    记忆强度随时间指数衰减:S(t)=S0eλtS(t)=S_0·e^{−λt},访问会提升强度 Smin(S+Δ,1)S ← min(S+Δ, 1);当 S(t)<τS(t)<τ 时进入冷层或被清理。

3. 检索与度量公理(How relevance is computed)

  1. 混合检索公理
    最终相关性打分是多源信号的可加组合:

    • score(q,m)=wvsimvec(q,m)+wksimkw(q,m)+wrrecency(m)+wttype(m)score(q,m)=w_v·sim_{vec}(q,m)+w_k·sim_{kw}(q,m)+w_r·recency(m)+w_t·type(m) 其中 w0w_* ≥ 0 且可校准,type(m)type(m) 用于区分 E/S/PE/S/P 的先验偏好。
  2. 重排序最优公理
    允许使用计算更昂贵的 Cross-Encoder 对候选集合进行二次排序;在固定候选集上,二阶段检索的 MAP/ nDCG 不劣于一阶段 ANN 近似检索。

  3. 上下文增强公理
    对话历史的向量增强必然提升省略指代查询的召回率(如“明天呢?”),等价于查询重写后的等效表示。

  4. 分层存储公理
    存在热/温/冷三层,重要性函数

    • I(m)=αrecency(m)+βfrequency(m)+γrelevance(m)I(m)=α·recency(m)+β·frequency(m)+γ·relevance(m) 决定驻留层级;热层容量受限、替换遵循最小 I(m)I(m) 淘汰。
  5. 预算约束公理
    任一响应的 token 预算固定,工作记忆、检索记忆、系统提示与输出共享预算;记忆系统的目标是在预算内最大化有效证据密度。

4. 安全与合规公理(What must hold for safety)

  1. 最小暴露公理
    检索与拼接只暴露任务必要的最小记忆子集,遵循“最小可用上下文”原则。

  2. 访问控制公理
    每条记忆具备主体/资源/操作三元权限描述,跨主体检索默认拒绝,除非明确授权或脱敏。

  3. 被遗忘权公理
    对可识别个体信息,forget 必须在有界时间内完成(标记/物理删除及副本清理)。

5. 由上述公理推导的关键结论(Propositions & Theorems)

  1. 有界工作记忆定理
    在固定 token 预算与滑动窗口约束下,工作记忆 W 的容量上界保证推理可行性;配合会话摘要,能以次线性成本维持长期话题连贯。
    结论映射:解释了文中“上下文窗口 + 摘要 + 最近 m 条”的高效性。

  2. 一致性与可回溯定理
    在“标记失效而非强删”的更新策略下,沿时间轴可恢复任意历史版本的语义关系,支持时间推理与审计。
    结论映射:对应 Mem0-g 的冲突检测与时间推理优势。

  3. 增量可用与低延迟定理
    若新增记忆进入可检索状态的建索引时间为 O(logn)O(\log n)(如 HNSW),且重排仅作用于 Top-K 候选,则整体 p95 延迟显著低于“全上下文拼接”。
    结论映射:支撑“p95 延迟下降 91%”与“7K tokens 预算”的经验结果。

  4. 混合检索优越性命题
    在存在词面稀疏或领域术语的语料上,BM25 与向量相似度加权的混合打分较单一方法在 Recall@k 上严格不劣、在低噪声场景下显著优于单一向量检索。
    结论映射:解释文中混合检索与重排序模块的必要性。

  5. 上下文增强召回提升命题
    将历史对话加入查询表示(向量增强或重写)是对真实语义查询的更近似估计,因此在多轮省略/指代中提高命中率与准确率。
    结论映射:对应查询重写与历史加权的实践范式。

  6. 热缓存收敛命题
    若重要性函数满足时间衰减与访问增强的平衡,热层的命中率将随交互稳定至任务分布的高频子集,带来稳态低延迟。
    结论映射:对应分层存储的长期效益。

  7. 图记忆必要性命题(时间/因果推理)
    当查询需要多跳关系或时间一致性(如“当前住址”“何时从 A 迁至 B”),语义图的标注边与失效标记是充分且必要的结构假设;仅自然语言密集向量在此类问题上次优。
    结论映射:解释 Mem0-g 在时间推理与开放域的优势。

  8. 选择性遗忘正确性命题
    若记忆依赖被建模为 DAG,对任意目标记忆的级联遗忘能在有界步数内清理其派生物而不影响无关分支,保障隐私与决策纠偏。
    结论映射:对应文中选择性遗忘与依赖清理的实现。

  9. 预算最优证据密度命题
    在固定 token 预算下,以“提取显著事实/三元组 + 精排”的管线,相比“原始长上下文拼接”,能以更高“证据密度/Token”达到等效或更优判断质量。
    结论映射:解释 Mem0 相比全上下文法在质量/成本上的综合优势。

6. 一个极简形式化小结(可用于实现对齐)

  1. 记忆对象

    • M=WESPM = W ⊔ E ⊔ S ⊔ Pφ:MRdφ: M → R^dγ:SG=(V,E,L)γ: S → G=(V,E,L)
  2. 操作规则

    • extract(P)Ωextract(P) → Ω(从提示上下文提取候选事实集);
    • resolve(ω,KB)ADDUPDATEINVALIDATENOOPresolve(ω, KB) → {ADD|UPDATE|INVALIDATE|NOOP}
    • apply(KB,op)KBapply(KB, op) → KB',且保持一致性与可回溯。
  3. 检索函数

    • score(q,m)=iwisi(q,m)score(q,m)=∑_i w_i·s_i(q,m)sis_i 含向量/关键词/新近度/类型等;
    • 二阶段:Top-K_ann → CrossEncoder_rerank → Top-N
  4. 衰减与层级

    • S(t)=S0eλtS(t)=S_0·e^{−λt}S<τS<τ → 冷层或回收;
    • I(m)=αrecency+βfrequency+γrelevanceI(m)=α·recency+β·frequency+γ·relevance → 层级决策。
  5. 安全与合规

    • 最小暴露、访问控制、被遗忘权、级联清理。

7. 实践映射与检查清单

  1. 与文中实现的对应关系

    • ADD/UPDATE/DELETE/NOOP → 更新原语公理
    • 会话摘要 + 最近 m 条 → 工作记忆与上下文增强公理
    • FAISS/HNSW + BM25 + Cross-Encoder → 混合检索与重排序公理
    • Mem0-g 节点匹配/关系失效 → 图一致性与回溯公理
    • 重要性打分与分层 → 分层存储公理
    • 依赖 DAGforget → 选择性遗忘公理
  2. 工程侧可验证断言(可作为单元/集成测试)

    • 同一事实重复写入 → 幂等(NOOPUPDATE 合并)
    • 冲突事实写入 → 旧关系被标记失效且新事实可检索
    • 热层命中率随会话轮数增加而上升(收敛)
    • 上下文增强对省略问的 Recall@k 提升
    • Token 预算固定场景下,混合检索 + 精排优于单阶段拼接

8. 简短答复(面向你的原问题)

  • 至少应具备的公理(最小集合):

    1. 分层对象公理(W/E/S/P)、2) 语义可嵌入公理、3) 知识可图化公理、4) 统一操作原语公理(ADD/UPDATE/INVALIDATE/NOOP)、5) 增量可用与预算约束公理、6) 混合检索与重排序公理、7) 衰减与分层存储公理、8) 选择性遗忘与依赖清理公理、9) 最小暴露与访问控制公理。
  • 由此可推导的结论:

    1. 在固定预算下可实现低延迟、可回溯的一致知识库;
    2. 二阶段检索在质量上不劣于单阶段近似检索;
    3. 图记忆对时间/多跳推理是必要结构;
    4. 上下文增强提升省略/指代问题的召回;
    5. 分层存储随时间收敛至稳定低延迟;
    6. 相比“全上下文拼接”,显著降低 p95 延迟与 Token 成本,同时保持或提升回答质量(与文中 Mem0 结果一致)。

如果你愿意,我可以把这套公理化描述落成一份可测试的最小实现(包含若干断言测试),用于你仓库里的 tools 或 docs 示例代码。