为什么需要 RAG?大模型的”知识盲区”
大语言模型虽然强大,但有一个根本性限制——它只能基于训练数据回答问题。你的企业文档、内部Wiki、客户资料、技术规范,这些私有数据模型从未见过。直接问模型,它要么编造答案,要么坦白不知道。
RAG(Retrieval-Augmented Generation,检索增强生成)就是解决这个问题的核心技术路线。它的思路很直观:先把你的私有数据变成可检索的知识库,当用户提问时,先从知识库中找到相关内容,再把找到的内容作为上下文喂给大模型,让模型基于真实数据生成回答。
OpenClaw 提供了完整的 RAG 构建工具链,从文档解析、向量化、存储到检索,全部可以在一个平台上完成。本文将手把手带你搭建一个属于自己的 RAG 知识库。
RAG 的核心架构:三步走
一个典型的 RAG 系统由三个核心环节组成:
- 文档处理与分块:将原始文档解析为纯文本,然后按语义单元切分成适当大小的文本块。
- 向量化与索引:使用 Embedding 模型将每个文本块转换为高维向量,存入向量数据库。
- 检索与生成:用户提问时,将问题转为向量检索相关文本块,结合问题和检索结果让大模型生成回答。
第一步:文档处理与智能分块
文档分块是 RAG 效果的基础。分块太大,检索精度下降;分块太小,上下文丢失。OpenClaw 推荐以下分块策略:
按语义层级分块
# OpenClaw 配置示例:文档分块
chunking:
strategy: semantic
max_chunk_size: 512
overlap: 50
separators:
- heading
- paragraph
- sentence
关键参数说明:
- max_chunk_size:建议 256-512 token。太小会丢失上下文,太大会引入噪音。
- overlap:相邻块的重叠部分,通常设为 max_chunk_size 的 10%。
- separators:分块优先级。按标题切分能最好地保持语义完整性。
多格式文档解析
OpenClaw 内置多种文档解析器,支持 PDF、Word、Markdown、HTML 等常见格式,PDF 还支持 OCR 扫描件,表格可提取为结构化数据。
第二步:向量化与向量数据库选型
Embedding 模型的选择直接影响检索质量。如果你的知识库以中文为主,强烈推荐本地部署 bge-large-zh-v1.5,中文检索效果显著优于 OpenAI 的模型,而且零成本。
向量数据库选择
# OpenClaw 向量数据库配置
vector_store:
engine: chroma # 轻量,适合入门
persist_directory: ./data/chroma
# engine: qdrant # 生产级,推荐
# engine: milvus # 大规模,企业级
选型建议:个人/小团队用 Chroma,中型团队用 Qdrant,企业级用 Milvus。
第三步:检索策略与生成优化
混合检索:关键词 + 语义
纯向量检索在专业术语场景下效果不佳。OpenClaw 支持混合检索,结合 BM25 关键词匹配和向量语义搜索:
retrieval:
strategy: hybrid
semantic_weight: 0.7
keyword_weight: 0.3
top_k: 5
rerank: true
rerank_model: bge-reranker-v2-m3
重排序(Reranking)是提升 RAG 效果的关键步骤。先用粗检索快速召回候选集,再用精细模型重新排序,可以显著提升相关性。
Prompt 模板优化
rag_prompt: |
你是一个专业的知识库助手。请严格根据以下参考资料回答用户问题。
如果参考资料中没有相关信息,请明确说"根据现有资料无法回答"。
参考资料:
{context}
用户问题:{question}
好的 Prompt 模板应该明确要求基于参考资料回答、禁止编造、要求标注来源,这三点能有效减少幻觉。
实战:搭建技术文档知识库
# 1. 准备文档目录
documents/
├── getting-started.md
├── config-guide.md
├── api-reference.md
└── troubleshooting.md
# 2. 构建知识库
openclaw rag build \
--source ./documents \
--embedding bge-large-zh-v1.5 \
--store chroma \
--chunk-size 512
# 3. 测试检索
openclaw rag query "如何配置模型路由?"
效果评估与持续优化
RAG 系统上线后需要持续评估:检索准确率用标注数据集评估 top-k 召回率,回答质量对比人工标注计算 ROUGE/BLEU 分数,幻觉率检查回答中是否包含知识库外的信息。
常见优化手段:调整分块大小、增加 overlap、更换 Embedding 模型、启用 Reranking、优化 Prompt 模板。每次只改一个变量,用评估数据说话。
总结
RAG 是让大模型真正服务于私有数据场景的关键技术。OpenClaw 从文档解析、向量化、检索到生成提供了完整工具链。记住三个要点:分块策略决定基础质量,混合检索加重排序提升精度,持续评估驱动优化。掌握这些,你就能构建出生产级可用的 RAG 知识库。
