Files
NextAgent/docs/memory-subnet.md
root 398d35c50b chore: init project docs - NextAgent cognitive decoupled architecture
- README.md with architecture diagram and project overview
- docs/architecture-overview.md: core design, scheduling, RefPack protocol
- docs/routing-compression-subnet.md: multi-modal encoding, compression training
- docs/memory-subnet.md: MANN, GNN, retrieve-pull mechanism training
- docs/logic-trace-subnet.md: RLHF+PRM, MCTS, self-correction training
- docs/llm-subnet.md: SFT, RLHF fine-tuning, multi-language alignment
2026-06-01 08:55:27 +08:00

8.1 KiB
Raw Blame History

记忆子网(海马体与皮层)

概述

记忆子网类比人脑的海马体与大脑皮层,负责长期记忆的存储、索引和检索。与传统向量数据库不同,记忆子网是一个可训练的学习系统,能够自主构建知识关联、更新记忆权重,并支持情景记忆的时序追溯。

核心职责

  • 长期记忆存储:将压缩引用包持久化存储于冷区,构建可检索的记忆库
  • 情景记忆索引:记录交互的时间戳、上下文和情感标签,支持时序回溯
  • 知识图谱构建:从记忆片段中自动提取实体与关系,构建动态知识图谱
  • 关联检索:根据当前任务上下文,检索最相关的历史记忆片段

架构设计

graph TB
    Input["输入引用包"] --> Router["记忆路由器"]
    
    Router -->|"存储"| Store["记忆存储管线"]
    Router -->|"检索"| Retrieve["记忆检索管线"]
    
    Store --> Encoder["记忆编码器<br/>MANN"]
    Encoder --> Graph["知识图谱更新<br/>GNN"]
    Graph --> Cold["冷区持久化"]
    
    Retrieve --> Query["查询编码器"]
    Query --> Index["倒排索引搜索"]
    Index --> Rerank["重排序器"]
    Rerank --> Output["记忆引用包输出"]
    
    subgraph Storage ["存储架构"]
        Cold
        Cache["热区缓存<br/>LRU"]
        IndexStore["索引存储<br/>HNSW"]
    end
    
    Cache --> IndexStore
    IndexStore --> Cold
    
    subgraph Learning ["学习模块"]
        MANN["Memory-Augmented<br/>Neural Networks"]
        GNN["Graph Neural<br/>Networks"]
        Consolidation["记忆巩固<br/>(sleep phase)"]
    end
    
    Encoder -.-> MANN
    Graph -.-> GNN
    Cold -.-> Consolidation

训练目标

目标 1:长期记忆存储与检索

训练记忆子网能够高效存储大量历史交互记录,并在需要时准确检索。

  • 存储容量:支持 ≥ 10⁸ 条记忆片段
  • 写入延迟:≤ 10ms/条
  • 检索延迟:p99 ≤ 50ms
  • 检索准确率:Top-1 ≥ 90%,Top-5 ≥ 98%

目标 2:情景记忆索引

对每条记忆附加时间戳、上下文标签、情感值,支持按时间和场景检索。

  • 时间范围查询:任意时间窗口的回忆准确率 ≥ 85%
  • 情景聚类:同场景记忆的聚类纯度 ≥ 0.8
  • 遗忘曲线模拟:模拟人脑 Ebbinghaus 遗忘曲线,重塑低频记忆

目标 3:知识图谱构建

从记忆片段中自动抽取实体和关系,构建可查询的知识图谱。

  • 实体抽取 F1 ≥ 85%(基于预训练 NER 模型)
  • 关系抽取准确率 ≥ 75%
  • 图谱密度:≥ 5 条边/节点
  • 推理路径长度:支持最多 5 跳的关系推理

训练计划

阶段 1:Memory-Augmented Neural Networks(MANN)预训练

目标:训练记忆增强神经网络,使其具备快速读写外部记忆的能力。

  • 模型架构:基于 Differentiable Neural Computer(DNC)改进

    • 控制器:LSTM,隐藏层维度 512
    • 外部记忆矩阵:N × M = 256 × 128
    • 读写头:4 个并行读写头
    • 记忆注意力:基于内容寻址 + 位置寻址的混合机制
    • 时间链路记录:记录记忆写入的时序顺序
  • 训练数据:

    • 合成记忆任务:Copy、Repeat Copy、Associative Recall(Graves et al., 2016)
    • 真实对话数据:MultiWOZ、DSTC 系列对话数据集
    • 时序序列:WikiText-103(分段记忆)
  • 损失函数:

    • 主损失:交叉熵损失(任务预测)
    • 记忆使用惩罚:鼓励稀疏记忆访问
    • 记忆冲突惩罚:避免写入冲突
  • 优化器:Adam(β1=0.9, β2=0.999)

  • 学习率:1e-4,含 warmup 5000 steps

  • 梯度裁剪:max_norm = 10

  • 训练轮数:300 epochs

DNC 控制器更新规则

# 读取
r_t = Σ_i w_t^r(i) · M_t(i)        # 按读取权重加权记忆

# 写入
M_t(i) = M_{t-1}(i) ⊙ (1 - w_t^w(i) · e_t) + w_t^w(i) · a_t  # 擦除后写入

# 记忆保持
w_t^r, w_t^w = attend(q_t, M_{t-1})  # 基于查询的注意力

阶段 2:图神经网络(GNN)知识关联训练

目标:构建和更新知识图谱,发现记忆间的隐式关联。

  • 模型架构:Relational Graph Convolutional Networks(R-GCN)

    • 层数:3 层 GCN
    • 隐藏维度:256
    • 关系类型数:50 种预设关系 + 动态关系发现
    • 聚合函数:均值聚合(mean aggregator)
    • 自注意力:GAT(Graph Attention Network)层提升关联权重
  • 训练任务:

    1. 链接预测:预测实体间是否存在某种关系
    2. 实体分类:预测实体的类别
    3. 关系分类:预测两个实体间的关系类型
    4. 子图匹配:识别与当前上下文最匹配的子图
  • 训练数据:

    • 通用知识图谱:Wikidata 子集、ConceptNet
    • 自构建图谱:从对话数据中自动抽取的关系三元组
    • 时序图谱:Temporal Knowledge Graph(事件时序关联)
  • 损失函数:

    • 链接预测:二元交叉熵 + 负采样(1:10 正负比)
    • 实体/关系分类:交叉熵
    • 正则项:L2 权重衰减(5e-4)
  • 优化器:AdamW

  • 学习率:5e-5,线性衰减

  • 训练轮数:100 epochs

阶段 3:引用-拉取训练策略

目标:训练子网学习何时生成引用包、何时拉取完整数据,在带宽与信息量间找到平衡。

训练框架

环境:模拟多轮对话任务
智能体:NextAgent(含记忆子网)
奖励信号:
  +1: 正确使用了历史记忆
  +0.5: 引用包命中,无需完整拉取
  -0.5: 不必要的完整拉取(浪费带宽)
  -1: 遗漏了关键记忆
  -2: 检索到错误记忆导致错误输出

训练步骤

  1. 行为克隆(Behavior Cloning)预热

    • 使用专家轨迹数据(人工标注的"正确引用/拉取"决策)
    • 监督学习 10 epochs,初始化策略网络
  2. 强化学习训练

    • 算法:PPO(Proximal Policy Optimization)
    • Actor 网络:2 层 MLP(512 → 256 → 2 动作)
    • Critic 网络:2 层 MLP(512 → 256 → 1 值)
    • 动作空间:[引用(REFERENCE), 拉取(FETCH)]
    • 折扣因子 γ:0.95
    • GAE λ:0.95
    • clip 系数 ε:0.2
    • 训练轮数:1000 episodes
  3. 记忆巩固阶段(Memory Consolidation)

    • 模拟"睡眠"过程:定期重放低频记忆,防止遗忘
    • 使用 Experience Replay 从冷区采样
    • 记忆重加权:根据访问频率动态调整记忆强度

阶段 4:端到端联合训练

目标:将 MANN、GNN 和引用-拉取策略联合微调。

  • 联合损失:L = L_MANN + λ₁·L_GNN + λ₂·L_RL
    • λ₁ = 0.3, λ₂ = 0.5
  • 冻结策略网络的初期 10 epochs,后全部放开
  • 交替训练:每 5 个 batch 的记忆检索 → 1 个 batch 的图谱更新
  • 总训练轮数:50 epochs

评估指标

记忆检索

指标 定义 目标值
Top-1 准确率 首条检索结果相关 ≥ 90%
Top-5 召回率 前五条中包含相关记忆 ≥ 98%
平均倒数排名(MRR) 相关记忆的排名倒数均值 ≥ 0.92
归一化折损累计增益(NDCG@10) 排序质量 ≥ 0.85

关联发现

指标 定义 目标值
链接预测 Hits@10 图谱补全准确率 ≥ 75%
关联发现 F1 新关联预测的精确率与召回率调和均值 ≥ 0.7
时序一致性 时序关系推理准确率 ≥ 80%
聚类纯度 同主题记忆聚类纯度 ≥ 0.85

系统性能

指标 定义 目标值
写入延迟 单条记忆写入时间 ≤ 10ms
检索延迟 p50 中位数检索响应时间 ≤ 20ms
检索延迟 p99 99 分位检索响应时间 ≤ 50ms
存储密度 每条记忆平均存储开销 ≤ 1KB
有效压缩率 原始数据大小 / 引用包大小 ≥ 10×

遗忘曲线

指标 定义 目标值
短期遗忘率 24h 后同场景记忆召回率 ≥ 90%
长期遗忘率 30 天后同场景记忆召回率 ≥ 70%
干扰抵抗 相似记忆插入后的检索准确率变化 ≤ 5% 下降