Skip to main content
本页为未来迭代方案。当前实现见 Pipelines,总览见 Evolution Roadmap

Phase 8: 多维检索

目标:从单一向量相似度升级为多维度智能检索 现状(Phase 3):LanceDB cosine similarity + mergeAndRank。 问题:只靠语义相似度会”上下文隧穿”——检索到表面相似但实际无关的记忆。

8.1 多图分解(MAGMA)

将记忆间的关系拆分为四个独立维度: Kira 实现:查询时根据意图选择维度:
async function multiDimensionalSearch(
  entityId: string,
  entityType: string,
  query: string,
  queryEmbedding: Float32Array
): Promise<Memory[]> {
  const intent = classifyIntent(query);

  switch (intent) {
    case 'semantic':      // "什么风格"
      return semanticSearch(entityId, entityType, queryEmbedding);
    case 'temporal':      // "上周" / "最近"
      return temporalSearch(entityId, entityType, query);
    case 'causal':        // "为什么" / "因为"
      return causalChainSearch(entityId, entityType, queryEmbedding);
    case 'entity':        // 提到具体人/项目
      return entityGraphSearch(entityId, entityType, query);
    default:
      return hybridSearch(entityId, entityType, queryEmbedding);
  }
}

8.2 扩散激活 + 侧抑制(SYNAPSE)

解决”上下文隧穿”——检索沿记忆网络扩散,同时压制无关记忆: 侧抑制:表面相似但语义不相关的记忆被主动压制。 关键收益:23% multi-hop 推理提升(vs full-context 方法)+ 95% token 减少。

8.3 演化信念层(Hindsight)

在现有记忆类型之上增加”信念”层——Agent 对用户的推断,区别于原始事实:
// Phase 8 扩展:增加 belief 类型
type MemoryType = 'preference' | 'workflow' | 'instruction' | 'episodic' | 'belief';

// 信念示例
{
  type: 'belief',
  content: '用户是专业摄影师,主要拍人像,追求高端复古感',
  evidence_count: 12,     // 支持这个推断的记忆数量
  confidence: 0.85,       // 随证据积累增加
  last_challenged_at: null // 上次被矛盾证据挑战的时间
}
关键收益:信念 ≠ 事实。信念可以随新证据演化,旧信念被修正而不是无视。

8.4 联合记忆检索(MEMENTO)

MEMENTO(ICLR 2026)是一个评估框架,通过单记忆和联合记忆两类任务系统性地揭示了关键问题:Agent 能回忆单条记忆,但组合多条记忆做决策时失败率极高。
失败案例:
  记忆 1: "用户偏好复古风格"
  记忆 2: "用户要求所有图片 1:1 比例"
  记忆 3: "用户不喜欢过度饱和"

  查询: "帮我处理这张照片"

  单记忆检索 → 只命中其中一条 → 结果不完整
  联合检索 → 三条同时注入 → Agent 正确组合应用
Kira 实现:检索后增加”记忆补全”步骤:
async function retrieveWithCompletion(
  entityId: string,
  query: string,
  queryEmbedding: Float32Array
): Promise<Memory[]> {
  // 1. 常规 top-K 检索
  const primary = await searchMemories(entityId, 'user', queryEmbedding, 5);

  // 2. 检查是否缺少相关维度
  const dimensions = ['preference', 'workflow', 'instruction'];
  const coveredDimensions = new Set(primary.map(m => m.type));
  const missing = dimensions.filter(d => !coveredDimensions.has(d));

  // 3. 补全缺失维度
  const supplements: Memory[] = [];
  for (const dim of missing) {
    const result = await searchMemories(entityId, 'user', queryEmbedding, 1, dim);
    if (result.length > 0) supplements.push(result[0]);
  }

  return [...primary, ...supplements];
}

Phase 9: 群体智能与安全

目标:升级群记忆从简单独立实体到精细权限 + 安全防护 现状(Phase 3):群和用户共享同一 entity 模型,inject 时并行拉取。 问题:无权限控制,无来源追踪,群记忆可被注入恶意内容。

9.1 二部图访问控制(Collaborative Memory)

将群记忆的访问控制建模为二部图: 数据模型扩展
CREATE TABLE memory.acl (
  memory_id    TEXT NOT NULL,
  entity_id    TEXT NOT NULL,
  entity_type  TEXT NOT NULL,
  permission   TEXT NOT NULL CHECK (permission IN ('read', 'write', 'admin')),
  granted_at   TIMESTAMPTZ DEFAULT NOW(),
  PRIMARY KEY (memory_id, entity_id, entity_type)
);
关键收益:群记忆不再是”全部可见”。61% 外部资源调用减少(共享记忆避免重复检索)。

9.2 来源追踪

每条记忆携带不可变的来源信息:
interface MemoryProvenance {
  created_by: string;
  source_thread_id?: string;
  source_messages?: string[];
  contributing_entities: string[];
  created_at: string;
}

9.3 共识验证(A-MemGuard

新记忆写入群记忆前,与已有记忆进行一致性校验:
async function validateGroupMemory(
  groupId: string,
  newMemory: Memory
): Promise<{ valid: boolean; conflicts: Memory[] }> {
  const existing = await searchMemories(groupId, 'group', newMemory.embedding, 5);
  const conflicts = existing.filter(m => isContradictory(m, newMemory));

  if (conflicts.length > 0) {
    return { valid: false, conflicts };
  }

  return { valid: true, conflicts: [] };
}
关键收益:防止单个用户通过恶意输入污染群记忆。

Phase 10: RL 记忆自治

目标:用强化学习替代所有手写的记忆管理规则 现状:提取、固化、遗忘全靠手写启发式。 愿景:Agent 自己学会”什么时候存、存什么、什么时候删”。

10.1 RL 训练的记忆策略(AgeMem)

将所有记忆操作暴露为 tool calls,用 RL 训练 Agent 学会最优策略:
const memoryTools = [
  'store_memory',
  'update_memory',
  'delete_memory',
  'summarize_context',
  'filter_context',
  'noop',
];

// 奖励信号:
// - 下游任务成功 → +1
// - 用户满意度 → +0.5(导出/点赞)
// - 记忆被检索命中 → +0.1
// - 存储成本 → -0.01 per memory
AgeMem 的关键发现
  1. 自适应不同用户——高频和低频用户需要不同策略
  2. 可迁移——在 30k tokens 上训练的策略,能泛化到 400k tokens

10.2 Manager/User 分离(Memory-R1)

将记忆管理拆分为两个独立的 RL Agent: 关键发现:仅需 152 个标注样本即可训练有效的记忆管理策略。3B 参数模型即可胜任。

10.3 前瞻信号(EverMemOS

EverMemOS 是一个完整的记忆操作系统,包含三个阶段:Episodic Trace Formation(含前瞻信号)、Semantic Consolidation(语义固化为主题场景)、Reconstructive Recollection(重构式检索)。Kira 主要借鉴其前瞻信号机制——在记忆写入时预测”这条记忆未来会被需要的概率”:
interface MemoryWithForesight extends Memory {
  foresight: {
    predicted_relevance: number;
    predicted_scenarios: string[];
    ttl_estimate: number;         // 预估有效期(天)
  };
}
关键收益:有前瞻信号的记忆系统可以提前为”即将需要”的记忆做预热。