Linkora · 灵桥

长期记忆

数据模型

核心数据表

表名 说明
messages 收发消息记录
conversations 会话缓存
conversation_summaries 对话摘要压缩归档(CAS 代际写回)
memories 长期记忆(按 sender_id 隔离)
dedup_messages 消息去重缓存
tool_execution_logs 工具调用日志
kb_documents / kb_chunks 知识库文档与分块
keyword_rules 关键词规则
config 配置中心持久化
blocked_conversations 不遍历黑名单
style_profiles 风格人格画像(id=1 单例)
feedback 反馈记录(message_id / rating / correction / note)
decisions 决策追踪记录(意图/动作/路由模式/路由工具/回复预览)

记忆表结构

每条记忆绑定具体用户(sender_id 隔离),跨会话保留:

memories (
  id, sender_id, sender_name, chat_id,
  content, source, created_at, last_accessed_at,
  access_count, vector BLOB
)

决策追踪表结构

decisions (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  sender_id TEXT NOT NULL,
  sender_name TEXT DEFAULT '',
  conversation_id TEXT DEFAULT '',
  conversation_name TEXT DEFAULT '',
  content_preview TEXT DEFAULT '',
  intent TEXT DEFAULT '',
  action TEXT NOT NULL,
  routing_mode TEXT DEFAULT '',
  routed_tools TEXT DEFAULT '',
  reply_preview TEXT DEFAULT '',
  created_at TEXT NOT NULL DEFAULT (datetime('now', 'localtime'))
)

写入策略

召回策略

公共记忆自动注入(v0.4.x 新增)

公共记忆(scope=public)在每轮对话时会自动注入 system prompt,与 RAG 知识库注入对称:

配置项:

memory:
  recall:
    threshold: 0.55
    top_k: 3

Agent 自动注入

Agent 会自动在 recall_memory 和 save_memory 工具调用中注入 sender_id、sender_name、chat_id,确保记忆绑定到正确用户,无需 LLM 显式传参。

相关配置

memory:
  cleanup:
    enabled: true
    max_age_days: 30
    min_similarity_threshold: 0.9
  retrieval:
    min_similarity: 0.6