Skip to content

回忆流程

当前: 主动检索按范围拆分。没有跨类型统一的 memory_recall 工具,也没有面向 LLM 的跨类型 RRF 合并。 程序侧: MemoryService.recall({ scope: "semantic"|"temporal" }) 为统一门面(委托 SearchBackend);与 LLM 工具名分离。目标 SSOT:memory.md

范围工具说明
semanticmemory_semantic_searchFTS + 结构化过滤;每轮 user 前也被动注入
limbic / narrativecontent_block_searchcomponent=limbic|narrative情绪砖 / 自传砖;可选用 content_block_get / diary_search
conversationconversation_search / conversation_scroll对话片段;搜索可按会话过滤;scroll 取完整上下文
write(semantic)memory_remember / semantic CRUD非检索

澄清指代 / 回忆事实,对话系统提示段 memory-recall 指示模型优先仅语义记忆,顺序为:

  1. 常驻记忆(系统提示)
  2. 本轮被动注入(passive_memory_context
  3. 仍不足时主动 memory_semantic_search

情绪 / 自传用 content_block_searchcomponent=limbic|narrative);对话搜索仍可用于明确的非语义需求;它们不是默认澄清/回忆路径。

栖息地运维调试用 memory.passiveRecallDebug(被动管线追踪)。产品 LLM 路径用上表分范围工具。

与检索工具分开:置顶语义记忆加上引用最多的条目始终注入系统提示(<memory id>)。LLM 在回复末尾用 [[anima:id]] 引用;引用计数在 syncTurn 热路径 bump(memory-ref-sync 夜间步已删)。

自我层(五块)经记忆搜索工具检索——它始终在系统提示中。

注入原因
自我层始终在系统提示小、固定,每次对话都需要「我是谁」
记忆层分范围工具 / 被动语义大、动态,需要时再搜

memory_recall(四源 RRF)已移除。会话/对话搜索仅留在 conversation_search。跨资源「统一回忆 v2」(Issue #47)仍未规划。

旧对话工具 memory_limbic_* / memory_autobiographical_*(读+写)已移除;情绪/自传砖统一走 content_block_* / diary_*

在认知心理学中,Recall(回忆)是主动从记忆中提取已存信息。FreeAnima 文档保留该动词;运行时工具按范围命名,使模型在无跨类型排序冲突下路由意图。