跨 Session 上下文共享与连续性

概述

用户通过不同渠道(Telegram、Web、微信等)或多个 session 与同一个 Agent 交互时,需要跨 session 延续对话上下文、跨 channel 保持一致记忆和状态。这是 Agent 走向生产环境的刚需。

架构设计:三层模型

原始上下文(对话流) → 预处理层 → 增量倒排索引(热) + 历史压缩上下文(冷)
职责实现
预处理层结构分块、实体提取、关键词抽取、语义压缩实时处理
热路径增量倒排索引,毫秒级响应关键字→[channel#块ID] 映射
冷路径历史压缩上下文,原始消息冷备定时压缩+索引优化

场景

  1. 跨 channel 实体引用 — channelA 聊张三,channelB 李四提”张三”时按需拉取上下文
  2. 群聊多话题交织 — 同 channel 多输入流交织,按话题和人物权重路由
  3. 懒加载策略 — 只在引用时触发检索,不提前合并所有上下文

核心挑战

  • 上下文窗口有限(信道容量限制,参见 Shannon 信息论)
  • 信息过时/遗忘策略(率失真理论:压缩率 vs 信息保留率权衡)
  • 多 channel 并发写入一致性
  • 记忆优先级和分层

现有方案调研

方案覆盖缺口
Graphiti/Zep时序知识图谱、混合检索无倒排索引、无 channel 路由、无懒加载
Mem0向量优先、三层结构不支持倒排索引
Letta (MemGPT)冷热路径思想一致无 channel 概念
本设计全部

结论:现有方案各自覆盖了部分维度,但没有项目同时做到倒排索引+冷热路径+实体路由+懒加载+压缩冷备审计。

Codex CLI Prompt Caching 策略(参考)

OpenAI Codex CLI 的 stateless 缓存策略可作为对比参考:

  • 精确前缀保证 — 不修改前面的消息,只追加,确保 cache 命中
  • 成本模型 — cache 命中时推理成本 ≈ 新增部分的计算,线性缩放
  • Cache miss 原因 — 换工具、换模型、换配置、MCP 工具顺序不一致
  • 合规 — stateless 设计自然满足 ZDR(零数据留存)要求

扩展方向

  • 记忆可移植性 — 切换平台=丧失记忆,需记忆格式标准化
  • 隐私-个性化张力 — 跨设备记住用户信息触及隐私边界
  • 与 codegraph 集成 — codegraph 的增量索引机制可作为实现参考

相关页面:agent-memory-system agent-harness-engineering agent-protocols