在现有 LLM 架构中,“记忆”通常是以线性上下文或简单数据库形式存在,缺乏结构化、语义链接和跨模型兼容性。

我们要做的,是将“记忆”升级为一个具备智能检索能力、语义感知能力和多模型兼容能力的图谱系统


一、目标定位

构建一个开放、结构化、可演化的 AI 长期记忆存储单元(Memory Graph Unit)

  • 支持动态更新、优先级排序、冲突消解
  • 兼具语义理解与逻辑组织
  • 跨平台/跨模型通用格式

二、整体架构设计

记忆图谱的核心是一个语义增强型图数据库(Semantic Enhanced Graph Database),由以下几类节点与边组成:

类型描述
Node(节点)表示一个记忆单元,可以是事实、偏好、行为模式等
Edge(边)表示节点之间的语义关系、时间关联、权重联系等
Meta(元数据)每个节点/边附加的描述信息,用于调度、认证、优先级等

整个图谱支持以下特性:

  • 可扩展的层级结构
  • 多维度标签体系(Temporal, Semantic, Trust, Privacy)
  • 支持向量化索引与关键字检索并存

三、核心数据结构定义(JSON Schema)

{
  "memory_id": "m_1234567890",
  "timestamp": "2025-04-05T14:30:00Z",
  "type": "preference", // 或 "fact", "event", "query", "behavior"
  "subject": "user_1234",
  "predicate": "preferred_tone",
  "object": {
    "value": "casual and friendly",
    "confidence": 0.92,
    "privacy_level": 2,
    "tags": ["language", "tone"]
  },
  "source": {
    "llm": "Qwen-Plus",
    "session_id": "s_987654321",
    "chain_of_thought": true
  },
  "metadata": {
    "trust_score": 0.88,
    "weight": 3.5,
    "last_updated": "2025-04-05T15:00:00Z",
    "relevance_decay": "exponential",
    "linked_nodes": [
      {"id": "m_987654321", "relation": "context"},
      {"id": "m_112233445", "relation": "follow-up"}
    ]
  }
}

四、图谱中的节点类型详解

4.1 Node Types(节点类型)

类型含义示例
Fact客观知识性记忆“太阳从东边升起”
Preference用户偏好“喜欢简洁表达”
Behavior用户行为模式“经常询问天气”
Query历史查询记录“如何做意大利面?”
Context会话背景信息“用户刚注册了健康追踪 App”
Event关键事件点“用户完成了第一个任务”

五、语义边(Semantic Edge)定义

每两个节点之间可以通过多种语义关系相连:

边类型描述示例
related_to简单语义关联用户偏好 ↔ 常用词汇
caused_by因果关系用户提问 ↔ 回答生成
follows时序依赖A 查询 → B 查询
context_of上下文嵌套当前对话 ↔ 过往兴趣
conflict_with冲突识别“用户说要快” vs “系统建议慢”
derived_from推理链路结论节点 ← 推导过程节点

六、记忆图谱的扩展能力

1. 时间衰减机制

每个节点带有 time_decay_function 字段,自动调整记忆的重要性(如:随时间推移降低权重)

  • 函数示例:weight = initial_weight * e^(-λ * t)
  • 参考艾宾浩斯遗忘曲线

2. 信任等级机制

  • 来自用户直接输入的记忆 → 高信任
  • 推理生成的记忆 → 中低信任
  • 自动提取的记忆 → 最低信任

3. 权限控制机制

  • 记忆可见性:公开 / 私人 / 只读 / 编辑
  • 使用限制:仅限于特定场景使用
  • 加密访问:基于零知识证明的隐私保护

七、检索与推理优化

  • 混合检索引擎

    • 关键词匹配(全文索引)
    • 语义向量搜索(基于 Embedding)
    • 图遍历路径分析(Path-based Reasoning)
  • 智能调度器对接

    def fetch_memory(user_id, query):
        # 根据查询关键词 + 用户 ID + 时间窗口 获取相关记忆
        candidates = graph.query(
            node_type=["preference", "context"],
            user_id=user_id,
            relevance_threshold=0.7
        )
        return prioritize_and_summarize(candidates)

八、演进式内存生命周期管理

生命周期阶段功能
采集提取 KMUs(关键记忆单元)
建模映射为图谱节点与边
存储存入统一图数据库
激活根据当前会话需求注入推理流程
更新自动重评权重 / 修正错误
淘汰根据时间或重要性策略删除不必要记忆

九、亮点总结

传统方式MGU方式
线性文本记忆图结构语义记忆
单一来源处理多源融合、冲突检测
不透明黑盒可追溯、可视化图谱
无优先级区分权重 + 信任 + 时间衰减机制
无法共享跨模型标准化输出格式

十、最终形态:AI 的“记忆大脑”

通过这样的记忆图谱,LLM 不再只是“一次性的思考机器”,而是拥有了可成长、可迁移、可协作的记忆系统,真正迈向“个性化智能助手”的未来。

标签:AI, infra

你的评论