EN 立即下载

知识库

旗鱼的知识库让你可以导入文档建立私有知识库,AI 能够检索其中的内容来回答问题。同时 AI 有多级记忆系统,能记住你教给它的信息。

导入文档

支持的格式

格式扩展名说明
Markdown.md最佳格式,保留结构信息
纯文本.txt适合日志、笔记等
PDF.pdf自动提取文本内容
Word.docx自动提取文本和表格

导入方式

  1. 点击左侧边栏的 知识库图标
  2. 点击「导入文档」
  3. 选择要导入的文件(可多选)
  4. 等待处理完成

处理过程包括:

  • 文档分段:将长文档切分成语义完整的小段落
  • 向量嵌入:为每个段落生成向量表示(使用本地嵌入模型)
  • 建立索引:构建向量索引 + BM25 关键词索引,支持语义搜索和关键词搜索双通道检索

全部本地处理

文档的处理完全在本地进行,使用内置的嵌入模型(Transformers.js),不会上传到任何外部服务。你的数据始终留在自己的电脑上。

导入建议

  • 选择有价值的文档:项目文档、运维手册、团队规范等高频查阅的内容
  • 保持文档更新:文档内容变化后,删除旧版重新导入
  • Markdown 效果最好:标题层级清晰的 Markdown 文档,分段质量最高
  • 避免过大文件:单个文件建议不超过 10MB,过大文件处理时间较长

使用知识库

导入文档后,AI 在执行任务时会自动检索知识库中的相关内容来辅助回答。你也可以主动让 AI 查询:

根据知识库中的内容,我们的部署流程是什么?
知识库里有没有关于数据库备份的文档?
查一下我们的 API 文档中关于用户认证的部分

检索原理

当 AI 需要查找信息时,会同时使用两种检索方式:

  • 语义搜索:理解问题的含义,找到语义相近的内容(即使用词不同也能找到)
  • 关键词搜索(BM25):精确匹配关键词,适合查找特定名称、配置项等

两种结果会融合排序,取最相关的内容注入到 AI 的上下文中。

三级记忆系统

旗鱼的 AI 有三级记忆,模拟人类记忆的工作方式:

L1 — 任务记忆(短期记忆)

最近几次任务的完整对话记录,直接保留在上下文中。就像刚做完的事,你还记得每句话。

  • 自动管理,不需要手动操作
  • 越近期的任务记录越完整,越早期的越精简
  • 5 级渐进式压缩:从完整对话到一句话摘要,在 token 预算内最大化信息保留

L2 — 知识文档(长期事实记忆)

你主动教给 AI 的信息,或 AI 自己总结的重要事实。每次对话时自动加载到上下文中。

比如你告诉 AI:

记住:我们的生产数据库地址是 10.0.1.50:3306,用户名是 app_user

以后在任何对话中,AI 都会自动知道这个信息。

组织方式

  • 按上下文维度组织——每台服务器有独立的「主机画像」,记录该服务器的系统信息、安装的软件、网络配置等
  • 无终端模式下按用户维度组织,记录你的个人偏好和工作习惯
  • 只保留高频复用的核心事实,每条信息都值得花 token 自动注入

什么适合存入 L2

适合不适合
服务器 IP、端口、密码一次性的排查过程
项目部署流程临时的测试数据
团队编码规范完整的日志内容
常用命令别名具体某次操作的细节

L3 — 对话记录(情景记忆)

完整的历史对话记录永久保存。AI 可以通过搜索工具主动检索。就像需要”想一想”才能回忆的完整经历。

你: 上次我们修复 nginx 502 错误是怎么做的?
AI: [搜索历史对话记录,找到相关记录并汇总]

L2 和 L3 的区别

  • L2 提供事实(「nginx 监听 8080 端口」),每次自动加载
  • L3 提供经验(「上次怎么排查的」),按需搜索加载
  • 有了 L3 兜底,L2 不需要记录所有细节,只保留核心事实即可

知识库管理

在知识库面板中可以:

  • 查看已导入的文档列表和状态
  • 搜索知识库中的内容,验证检索效果
  • 删除不需要的文档(释放存储空间)

CLI 操作

也可以通过命令行管理知识库:

npm run sft -- knowledge:list      # 查看已导入文档
npm run sft -- knowledge:search "关键词"  # 搜索知识库