跳到主要内容

知识库管理

AIME Chat 的知识库在本地保存文档、索引和检索结果。它既可以只使用 BM25 全文检索,也可以组合语义向量、BM25 和重排模型,为聊天与 Agent 工具提供依据。

功能概述​

  • 📄 从网页、直接输入的文本或一个/多个文件导入内容;Agent 工具还可按文件夹导入
  • 🔍 使用 BM25,或使用语义向量 + BM25 的混合检索
  • 🎯 可选重排模型,并在模型不可用时保留全文检索兜底
  • 📖 从命中的片段继续读取原始内容;长文支持模式搜索和分页
  • 💡 基于知识库进行智能问答
  • 📊 管理多个彼此独立的知识库

支持的内容格式​

格式常见扩展名说明
文本与代码.txt, .csv, .json 等可读取的纯文本会直接分块
Markdown.md, .mdx保留适合分块的标题和段落结构
PDF.pdf提取文本;扫描件可使用 OCR
Word.doc, .docx提取文档正文
Excel.xls, .xlsx按工作表读取非空单元格,并生成带原始行列坐标的有界预览
PowerPoint.ppt, .pptx提取幻灯片文本内容
图片.png, .jpg, .jpeg 等通过 OCR 提取文字;多模态向量模型还可用于图片相似度检索
Excel 与扫描件

大型 Excel 工作簿会限制工作表、行列和单元格输出,避免一次导入占用过多上下文。需要完整覆盖时,建议拆分关键工作表或转换为 CSV。PDF/图片 OCR 的效果取决于当前配置的 OCR 运行库和模型。

使用步骤​

1. 创建知识库​

  1. 进入 知识库 页面
  2. 点击 创建知识库
  3. 填写名称和描述
  4. 按需选择向量模型与重排模型
  5. 决定是否启用 强制返回全文,然后创建

向量模型是可选项:

  • 未选择向量模型时,只建立 BM25 全文索引
  • 选择向量模型时,同时建立语义向量和 BM25 索引,查询时融合两类结果
  • 重排模型会对候选片段再次排序,适合对召回精度要求较高的知识库

2. 导入内容​

  1. 打开已创建的知识库
  2. 选择添加文本、网页或一个/多个文件;需要按文件夹批量导入时,可让启用了知识库工具的 Agent 执行
  3. 提交导入任务
  4. 等待后台解析、分块和索引完成

导入任务会在后台队列中按知识库顺序执行。配置了向量模型时会额外计算向量,因此大批量导入所需时间更长。

3. 搜索或在聊天中使用​

  • 可以在知识库详情页直接搜索,查看检索类型、得分、来源和原始内容
  • 在 Agent/工具配置中启用知识库工具后,AI 可先搜索相关片段,再读取对应的原始条目
  • 图片检索需要兼容图片向量的多模态 embedding 模型;未配置 embedding 时不可用
  • 以实际存在的本地图片文件进行以图搜图时,会跳过文本重排模型,避免把图片路径和图片片段交给文本 reranker;文本查询仍按配置进行重排

检索流程​

用户问题
├─ BM25 全文检索 ───────────┐
└─ 语义向量检索(可选)─────┤
├─ 结果融合 ─ 可选重排 ─ 返回相关片段
└─ 向量不可用时使用 BM25 结果
  1. 解析与分块:把导入内容转换为文本并切成适合检索的片段
  2. 全文索引:所有文本片段都会进入本地 BM25 索引
  3. 向量索引(可选):配置 embedding 后,为文本或兼容的图片计算向量
  4. 融合与重排:文本查询融合语义和全文结果,并可使用 reranker 再排序
  5. 原文读取:命中片段包含来源条目 ID,Agent 可继续读取完整原文

长文读取​

默认情况下,读取知识库原文会返回带行号的有限区间,避免把超长文档一次放入上下文。Agent 可以:

  • 使用模式或正则表达式在完整原文中定位关键词
  • 使用 offset 和 limit 分页读取后续内容
  • 在知识库启用 强制返回全文 后,直接返回完整原文

强制返回全文适合短小且必须整体阅读的资料;对大型文档保持关闭通常更稳妥。

更换向量模型​

编辑知识库并更换 embedding 模型时,AIME Chat 会要求确认并重新计算全部向量。新索引完整生成后才会替换旧索引;如果任一步骤失败,原模型与原数据会保留。

处理期间请等待进度完成,不要关闭重算窗口,也不要同时修改知识库内容。

备份与迁移​

知识库可以导出为独立的 SQLite 文件,并在另一套 AIME Chat 数据中重新导入。

导出​

  1. 打开知识库详情页
  2. 点击右上角 导出
  3. 确认导出 ID;需要在目标环境中使用另一个 ID 时可在这里修改
  4. 选择 .sqlite 或 .db 保存位置

导出文件包含该知识库的元数据、条目和索引表。它不是整个 AIME Chat 应用数据库的备份。

导入​

  1. 回到知识库列表
  2. 点击列表顶部的 SQLite 导入按钮
  3. 选择 .sqlite 或 .db 文件
  4. 如果同 ID 知识库已存在,选择 追加 或 覆盖
  • 追加:只导入目标知识库中不存在的条目;两边的向量长度必须一致
  • 覆盖:删除同 ID 知识库的现有条目与索引,再完整导入文件内容
覆盖前先备份

覆盖会替换同 ID 的本地知识库。执行前先导出现有版本,并核对来源文件、知识库名称、ID 与 embedding 配置。

最佳实践​

文档准备​

  • 使用清晰的标题、段落和稳定术语
  • 删除重复、过时或互相矛盾的内容
  • 对大型表格只导入真正需要检索的工作表和范围
  • 对扫描件先确认 OCR 结果可读,再用于高精度问答

知识库组织​

  • 按主题、权限或更新周期拆分知识库
  • 为专业领域选择合适的 embedding;精确关键词较多的资料可保留 BM25-only
  • 需要更高排序质量时再启用 reranker,避免不必要的模型调用
  • 定期更新来源,并删除已经失效的条目

提问技巧​

  • 使用文档中真实出现的专有名词、编号或时间范围
  • 要求 AI 给出来源名称或先展示命中片段
  • 结果不理想时,分别尝试更明确的关键词和语义化问法

本地存储​

  • LibSQL 保存知识库、条目、文本片段、全文索引和可选向量
  • 文档内容与索引默认保留在本机应用数据目录
  • 新增和删除条目会同步更新全文与向量索引

常见问题​

文档解析失败​

  1. 确认文件未损坏且不是受密码保护的文档
  2. 对 PDF、Word 或图片检查 OCR 运行库与默认 OCR 模型
  3. 对超大 Excel 拆分工作表,或转换为 CSV 后重新导入
  4. 在 关于 页面打开日志,查看具体解析错误

检索不到内容​

  1. 确认导入任务已完成,条目处于可用状态
  2. 未配置向量模型时,使用文档中实际存在的关键词触发 BM25
  3. 配置向量模型后仍失败时,系统会回退到 BM25;检查当前模型服务是否可用
  4. 确认问题与已导入文档属于同一知识库

更换向量模型后处理时间较长​

重算会遍历现有文本和兼容图片,并在完成后原子切换索引。内容越多,耗时越长;等待进度结束后再继续导入或编辑条目。