知识库管理
知识库是让 AI 精准回答的关键。ServiceGo 使用 pgvector 向量数据库实现 RAG(检索增强生成),确保 AI 基于你的真实数据回答问题。
创建知识库
- 进入管理后台「知识库」页面
- 点击「新建知识库」,填写名称和描述
- 上传文档(支持多文件批量上传)
- 在 Agent 配置中关联知识库
支持的文档格式
| 格式 | 扩展名 | 说明 |
|---|---|---|
.pdf | 自动提取文本内容 | |
| Word | .docx | 保留结构化信息 |
| Markdown | .md | 推荐格式,结构清晰 |
| 纯文本 | .txt | 通用格式 |
文档处理流程
- 上传 — 文档进入 BullMQ 异步处理队列
- 解析 — 提取文本内容,保留标题层级
- 分块 — 智能分块,每块约 500-1000 token
- 向量化 — 调用 Embedding 模型生成向量
- 索引 — 存入 pgvector,建立余弦相似度索引
检索流程
当用户发送消息时,系统会:
- 将用户消息向量化
- 在关联知识库中进行余弦相似度搜索
- 取 Top-K 最相关的文档分块
- 将检索结果注入 Agent 的 System Prompt
- AI 基于检索内容生成精准回答
优化检索效果的建议
- 使用结构化文档 — Markdown 格式效果最佳,标题层级有助于分块
- 内容要具体 — 避免模糊描述,提供具体的数据和答案
- 定期更新 — 产品、价格变动后及时更新知识库
- 一个主题一篇文档 — 避免单个文档涵盖过多主题
- 包含常见问题 — 将 FAQ 整理成文档上传,直接命中用户问法
知识空白发现
当 AI 无法从知识库找到答案并转人工后,系统会自动记录「知识空白」。 管理员可在后台查看空白热点,补充相应文档,持续优化知识库覆盖率。