需将企业文档转化为结构化向量知识库:一、统一格式并校验文本可读性;二、配置中文嵌入模型与分块参数;三、本地执行ingest命令完成向量化入库;四、在技能配置中绑定collection_name;五、通过真实问答测试召回效果。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望为ClawBot注入专属业务知识,但发现默认模型无法准确回答内部流程、产品参数或制度条款等问题,则可能是由于未将企业文档有效转化为结构化向量知识库。以下是构建自定义知识库的步骤:
一、准备原始知识文档
ClawBot依赖高质量文本输入生成语义向量,需确保文档格式统一、内容可读、无加密或扫描图像。支持的格式包括PDF、Markdown、TXT、DOCX及Excel表格(仅含纯文本内容)。非结构化内容(如截图、手写笔记)必须先经OCR识别并人工校对。
1、将所有待入库文件集中存放于单一本地目录,例如/root/kb/。
2、删除重复文件、临时备份及版本编号后缀(如“_v2_final_revised”),保留唯一主干文件名。
3、对PDF文档执行文字提取验证:使用pdftotext -layout file.pdf - | head -n 20检查前20行是否为可读文本,若输出为空或乱码,则需重新导出为“文本可复制”模式。
二、配置嵌入模型与分块策略
知识切片质量直接影响检索精度,ClawBot默认采用递归字符分块器,但需根据文档类型手动调整chunk_size与overlap参数。嵌入模型决定向量表征能力,推荐在资源允许时选用bge-m3或m3e-large等中文优化模型。
1、编辑config.yaml文件,在embedding节点下指定模型名称:model: bge-m3。
2、在ingestion节点中设置分块参数:chunk_size: 512,chunk_overlap: 64。
3、若知识文档含大量表格,启用table_aware: true以保留行列结构语义。
三、执行向量化与入库操作
ClawBot通过clawdbot ingest命令启动文档解析流水线,依次完成文本提取、清洗、分块、嵌入计算及向量写入。该过程不依赖外部API,全部在本地完成,确保敏感数据不出域。
1、进入ClawBot安装根目录,执行:clawdbot ingest --kb-path /root/kb --collection-name corp-policy-v2026。
2、观察终端输出中的[INFO] Embedding progress: 7/12 files提示,确认各文件正被逐个处理。
3、当出现[SUCCESS] Ingestion completed. 1428 chunks indexed.时,表示向量已持久化至本地ChromaDB实例。
四、绑定知识库至对话技能
完成向量化后,需在技能配置中显式声明知识库引用路径,使LLM在响应用户提问时自动触发RAG检索。未绑定的知识库不会参与推理过程,即使已成功入库。
1、打开skills/qna-skill.json,定位retriever字段。
2、将collection_name值修改为上一步创建的名称:"collection_name": "corp-policy-v2026"。
3、重启网关服务使配置生效:systemctl restart clawdbot-gateway。
五、验证知识召回效果
真实问答测试是唯一验证知识库可用性的方法。测试应覆盖关键词匹配、同义替换、长尾问题及跨文档关联查询,避免仅用训练文档原句做简单回显。
1、在企业微信中向ClawBot发送:“员工出差住宿标准是多少?”。
2、查看返回内容是否引用《2026版差旅管理制度》第3.2条原文,并标注来源页码或段落ID。
3、若响应为通用答案或提示“未找到相关信息”,则执行clawdbot debug-retrieval --query "出差 住宿 标准"检查原始向量检索结果。











