小龙虾 Openclaw 持久记忆和知识库概述

前言

Openclaw 官方已有适配插件的4款记忆引擎均支持混合Hybrid 索引、搜索(持久记忆和知识库均基于记忆引擎)

  1. Builtin —— 基于sqlite,需要配置 sqlite—vec和嵌入模型才能支持向量索引、搜索;内置default
  2. QMD (Quantum Memory Database) —— 先行本地搜索,超省Token;替代者
  3. Honcho —— 懂你的 AI 专属大脑;并行
  4. LanceDB —— 企业级的海量向量仓库,多模态支持,跨设备同步;替代者

概述

  • Openclaw 对于持久记忆和知识库的支持有一套完整的逻辑框架和运行机制,即:全文索引(FTS5)、关键词搜索(BM25)+ 向量(语义)索引、搜索的混合Hybrid 索引、搜索
  • 持久记忆和知识库专有接口 memory_search,memory_get,并实时监控固定文件夹,自动触发创建索引 openclaw memory index
  • 在默认安装,没有任何相关配置的情况下,系统使用内置记忆引擎 (Builtin Memory Engine),即sqlite数据库,理论上支持混合索引、搜索,实际上只支持前者
  • 是否支持后者可由 openclaw memory status --deep 判断(也可由 openclaw memory index --force 手动出发一次索引操作看出)
  • 在默认安装,没有任何相关配置的情况下,内置记忆引擎 (Builtin Memory Engine),必须依靠 sqlite—vec插件配置 和 嵌入模型配置才能完全支持
    混合索引、搜索,因为内置记忆引擎的BUN运行环境不允许自带的Sqllite加载扩展插件,所以sqlite—vec 很难配置加载
  • 为了在实时对话中让ai能够触发回忆,必须配置 memorySearch.experimental.sessionMemory,其它相关配置多数agents.defaults.memorySearch 下

openclaw memory index (--force) 的索引源(记忆位置)

  • 默认位置: ~/.openclaw/workspace/MEMORY.md
  • 默认位置: ~/.openclaw/workspace/memory/YYYY-MM-DD-*.md
  • 配置位置:
    openclaw config set agents.defaults.memorySearch '{}'
    openclaw config set agents.defaults.memorySearch.extraPaths[0] "path1"
    openclaw config set agents.defaults.memorySearch.extraPaths[1] "path2"
    openclaw config set agents.defaults.memorySearch.extraPaths[2] "path3"
    openclaw config set agents.defaults.experimental.sessionMemory true(试行阶段)

    {
    "agents": {
    "defaults": {
    "memorySearch": {
    "extraPaths": [
    "path1",
    "path2",
    "path3"
    ]
    },
    "experimental": {
    "sessionMemory": true
    }
    }
    }
    }
    openclaw config validate(检查配置格式,openclaw config get ... 或 openclaw memory status)
    openclaw gateway restart
  • MEMORY.md 中外链的文件如果不在上述目录中也不会被索引,

源文件格式:

  • 默认记忆引擎只支持 md 格式,其它格式会被忽略,即便放在上述指定文件夹
    其它格式放在哪里都一样,都必须在 MEMORY.md 中添加外链,且只能关键词全文检索,不支持sqlite数据库关键词索引

备注

短期记忆: .openclaw/agents/sessions/.jsonl (对话流水账) ➡️ SQLite 的“原材料”之一
长期记忆: .openclaw/workspace/memory/
.md (整理后的日记) ➡️ SQLite 的“原材料”之一(最近2天被加载为系统提示词)
持久记忆:.openclaw/workspace/MEMORY.md (整理后的持久信息笔记) ➡️ SQLite 的“原材料”之一(被加载为系统提示词)
记忆索引: .openclaw/memory/*.sqlite ⬅️ 这就是核心的 SQLite 数据库

{
"agents": {
"defaults": {
"memorySearch": {
"extraPaths": ["/path/to/your/knowledge-base"]
},
"experimental": {
"sessionMemory": true
}
}
}
}

posted @ 2026-04-26 07:58  engineer大叔  阅读(117)  评论(0)    收藏  举报