RAG 流水线 (Retrieval-Augmented Generation)

90 字

RAG 流水线 (Retrieval-Augmented Generation)

来源: wiki/sources/local-faiss-sqlite-bge-guide, wiki/sources/rag-optimization-guide, wiki/sources/knowledge-base-from-markdown, wiki/sources/wechat-articles-to-knowledge-base
相关概念: wiki/concepts/local-first, wiki/concepts/workspace-memory, wiki/concepts/openclaw

OpenClaw 中的 RAG 流水线是将本地原始素材(Markdown/PDF/网页)通过"向量化 → 索引 → 检索 → 生成"四步转化为可问答的知识库的核心架构模式。

要点

核心流程

原始素材 → 切块(RecursiveCharacterSplitter) → bge-large-zh向量化 → FAISS索引 + SQLite元数据 → 用户查询向量化 → FAISS检索 → SQLite元数据过滤 → LLM摘要/回答

关键组件

  • bge-large-zh:中文句向量模型,768维,CPU推理10-30ms/句
  • FAISS:高效向量检索引擎,支持Flat/IVF/HNSW等索引类型
  • SQLite:元数据存储,支持SQL过滤、排序、FTS5全文检索扩展

进阶优化技术

  • 混合检索(Hybrid Search):向量语义检索 + BM25关键字检索 + RRF融合排序
  • 重排序(Reranking):Cross-Encoder对候选结果二次排序
  • 查询改写(Query Rewriting):LLM将查询扩展为多个变体后分别检索再融合
  • 分层检索:先文档级向量检索,再块级细粒度检索
  • 元数据过滤:按时间范围、标签等维度过滤后搜索子集

推荐工具链

功能 工具
嵌入模型 bge-large-zh-v1.5
重排序 bge-reranker-large
关键字检索 SQLite FTS5
查询改写 Qwen2.5-7B / ChatGLM3-6B
前端 Streamlit / Obsidian

与 OpenClaw 的关系

RAG 流水线是 OpenClaw 实现"可搜索、可聚合、可持续更新的知识库"的基础架构。OpenClaw 的 Workspace Memory 系统本身也使用了向量化检索(RAG),用户可以通过配置和技能扩展,将任意本地文档转化为可语义搜索的知识库,仅需在最终摘要阶段调用 LLM,核心检索完全不消耗 Token。