知识库

知识库用于让 Tinybot 使用你提供的固定资料回答问题。它适合“资料很多、以后还会反复问”的场景,例如产品手册、项目文档、制度流程、会议纪要、FAQ。

知识库和普通聊天有什么区别

普通聊天只依赖当前对话和模型已有知识。知识库会把你的文档切分、索引,在你提问时检索相关片段,再交给 AI 回答。

场景 是否建议用知识库
问一次临时问题 不需要
总结一个刚发来的短文本 不需要,直接粘贴即可
经常询问同一批文档 建议
公司内部制度、产品手册 建议
项目长期技术文档 建议

启用知识库

在配置中开启:

{
  "knowledge": {
    "enabled": true,
    "autoRetrieve": true,
    "maxChunks": 5,
    "retrievalMode": "hybrid"
  }
}

也可以在网页界面的设置面板中开启。

添加资料

推荐先通过网页界面添加:

  1. 启动 uv run tinybot gateway
  2. 打开 http://127.0.0.1:18790
  3. 进入右侧知识库面板
  4. 添加文本、Markdown 或上传支持的文件
  5. 等待索引完成

当前网页会话还支持临时上传 txtmdpdf 文件,用于当前会话中的资料问答。

怎么提问

提问时说明你希望 Tinybot 优先参考知识库:

请根据知识库里的产品文档,说明新用户开通账号的流程。
请只参考我上传的 PDF,总结其中的风险点。

如果你发现回答没有引用到资料,可以直接要求:

请重新检索知识库,并说明答案来自哪些文档内容。

检索设置怎么选

配置 新手建议 说明
autoRetrieve 开启 每次提问自动查知识库
maxChunks 5 返回的资料片段数量
retrievalMode hybrid 同时使用语义和关键词检索
rerankEnabled 先关闭 需要额外服务,搜索不准时再开

如果文档里有很多准确术语、编号、接口名,关键词很重要。如果用户问法和文档措辞差异大,语义检索更重要。hybrid 是两者结合,适合大多数情况。

资料整理建议

为了让检索更准确:

  • 一个文档只放一个主题
  • 标题写清楚,例如“退款流程”“部署步骤”“API 鉴权”
  • 不要把大量无关内容塞进同一个文档
  • 更新文档后重新索引
  • 对长期有效资料使用知识库,对临时资料使用会话上传

知识库不是万能的

知识库能提高“参考你给的资料”的能力,但不能保证每次都完全正确。重要结论仍建议让 Tinybot列出依据,或要求它引用原文片段。

推荐问法:

请根据知识库回答,并列出你参考到的关键片段。

常见问题

AI 没用到我的文档

检查:

  1. knowledge.enabled 是否为 true
  2. autoRetrieve 是否开启
  3. 文档是否已经索引完成
  4. 问题是否和文档内容相关
  5. 是否需要重建索引

搜索结果不准确

可以尝试:

  1. 把问题问得更具体
  2. 提高 maxChunks
  3. 使用 hybrid 检索
  4. 拆分过长文档
  5. 开启重排序能力

什么时候不用知识库

如果只是让 Tinybot 读取当前项目的几个文件,直接告诉它文件路径更简单:

请读取 docs/quickstart.md 并指出问题。

下一步