Documentation Index
Fetch the complete documentation index at: https://tech.illasoft.com/llms.txt
Use this file to discover all available pages before exploring further.
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;
}
新记忆写入群记忆前,与已有记忆进行一致性校验:
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 的关键发现:
- 自适应不同用户——高频和低频用户需要不同策略
- 可迁移——在 30k tokens 上训练的策略,能泛化到 400k tokens
10.2 Manager/User 分离(Memory-R1)
将记忆管理拆分为两个独立的 RL Agent:
关键发现:仅需 152 个标注样本即可训练有效的记忆管理策略。3B 参数模型即可胜任。
EverMemOS 是一个完整的记忆操作系统,包含三个阶段:Episodic Trace Formation(含前瞻信号)、Semantic Consolidation(语义固化为主题场景)、Reconstructive Recollection(重构式检索)。Kira 主要借鉴其前瞻信号机制——在记忆写入时预测”这条记忆未来会被需要的概率”:
interface MemoryWithForesight extends Memory {
foresight: {
predicted_relevance: number;
predicted_scenarios: string[];
ttl_estimate: number; // 预估有效期(天)
};
}
关键收益:有前瞻信号的记忆系统可以提前为”即将需要”的记忆做预热。