个人知识服务

本地运行的私有知识库问答:混合检索、流式问答,回答都带可回溯的来源。

状态
仅介绍· 可运行原型,个人试点中
更新
2026.09.24
技术
RAG · FastAPI · SQLite FTS5 · Chroma
  1. 资料快照与解析
  2. 关键词索引 + 语义索引
  3. 混合召回
  4. 证据窗口
  5. 带引用的流式回答

为什么做

我的笔记分散在几个库里,问一个问题常常要翻好几处;这些资料又是私人的,不想交给在线服务。所以做了一个在本机运行的知识服务:资料留在本机,回答必须带着能回到原文的引用。

方案

  • 两路召回:SQLite FTS5 负责精确术语,本地 384 维向量模型加 Chroma 负责同义表达,两路结果用 RRF 融合。
  • 证据窗口:按 token 预算保留完整的证据片段,回答里的引用编号能定位回原文位置。
  • 来源变更即失效:原件被修改、删除或无法读取时,旧版本和相关引用立即失效,历史回答会标出失效,不会悄悄回退到旧版本。
  • 本地优先:服务只绑定本机地址,模型外发和联网采集默认关闭;另有个人笔记、备份导出与恢复、只读 MCP,以及 Windows EXE 打包。

怎么验证的

  • 在旧 wiki 基线上冻结了 40 道题:30 道有答案(精确术语、同义表达和跨文档),5 道无答案,5 道越权。10 道用于调参,30 道留作验收,只测一次。
  • 结果:保留集 20 个正例中,19 个在前 5 个片段里至少命中一篇预期文档,17 个找齐全部预期文档;越权结果为 0。
  • 这组数字的边界:它是词法检索基线,Hit@5 只表示前 5 个片段里有预期文档,不等于答案准确率;基于原始资料的新题集还没有冻结。
  • 权限边界、版本失效和备份恢复有回归测试覆盖。

现在做到哪

  • 已经可用:关键词检索、混合召回、流式多轮问答、来源引用与失效提示、个人笔记、备份导出与恢复。
  • 还没完成:语义链路的端到端验收、图片 OCR 自动入库、真实客户端的 MCP 联调、在干净电脑上的安装验收。
  • 代码暂不开源:许可证和模型分发条款还没有定。

回到项目目录