混合搜索记忆,召回更精准

LanceDB Hybrid Search Memory Plugin

收藏 11.8k
下载 2.7k
版本 1.2.1

LanceDB 混合搜索记忆插件,融合向量语义与 BM25 全文检索,支持 RRF 或线性重排序,显著提升记忆召回精准度。

基本信息

  • 技能名称?LanceDB Hybrid Search Memory Plugin
  • 中文名称?混合搜索记忆,召回更精准
  • 作者?joeykrug
  • 分类?专业技能
  • 版本?1.2.1
  • 标签?lancedb, hybrid-search, bm25, vector-search, long-term-memory, rrf, openclaw-plugin, embeddings, openai

使用方法

使用说明
核心功能
memory-lancedb-hybrid 是 OpenClaw 官方 LanceDB 记忆插件的增强版本,通过混合搜索技术解决纯向量搜索的语义漂移问题。该插件在保留原有 memory_store 、 memory_recall 、 memory_forget 三大工具的基础上,为 memory_recall 及自动召回机制增加了 BM25 全文检索 + 向量语义搜索 的混合能力。
显著优点

  1. 混合搜索架构 :同时利用向量搜索的语义理解能力和 BM25 的精确关键词匹配,召回率与精准度双提升
  2. 灵活重排序策略 :支持 RRF(Reciprocal Rank Fusion,推荐)和线性加权两种融合算法,适配不同场景
  3. 零侵入升级 :通过插件覆盖机制(id 同为 memory-lancedb )无缝替换原生插件,保留已有数据
  4. 自动降级保障 :FTS 索引创建失败时自动回退至纯向量搜索,不影响核心功能
  5. 完善的安全防护 :内置提示词注入检测、XSS 防护、UUID 格式验证等多重安全机制
    潜在局限
    依赖 OpenAI API 生成文本嵌入,需配置 OPENAI_API_KEY
    首次启用需自动构建 FTS 索引,大数据集可能耗时
    作为社区插件(基于官方 PR #7636),非 OpenClaw 核心团队直接维护
    混合搜索会增加一定的查询延迟(可配置关闭)
    适合人群
    需要高精准记忆召回的 AI 应用开发者
    已有 LanceDB 记忆数据、希望无损升级搜索能力的用户
    对关键词敏感场景(如代码片段、专业术语检索)有强需求的场景
    常规风险与缓解
    | 风险点 | 缓解措施 | |--------|----------| | 外部 API 依赖 | 支持自定义 baseUrl 兼容本地 embedding 服务 | | 环境变量读取 | 功能必需设计,无硬编码密钥,未设置时报明确错误 | | 本地文件访问 | 限定在 ~/.openclaw/memory/lancedb 目录,无遍历风险 | | 提示词注入 | 内置 looksLikePromptInjection 检测函数 | | 数据隐私 | 完整支持 memory_forget GDPR 合规删除 | 配置要点
    hybrid: {
    enabled: true, // 总开关
    reranker: "rrf", // 或 "linear"
    // vectorWeight: 0.7, // linear 模式下向量权重
    // textWeight: 0.3 // linear 模式下文本权重
    } 建议优先使用 RRF 算法,其无需调参且融合效果稳定;如需精细控制语义/关键词偏向,可切换至线性模式并调整权重。

标签

专业技能

💬 评论 (0)

发表评论

支持 Markdown

📭 还没有评论,快来抢沙发吧!