DSH 用户在处理文献时,通常面临引用追踪困难、无法定位具体页码或章节的问题。通用 RAG 往往只返回摘要而非原文证据。dsh-kb-rag 解决了这个问题,它将 PDF 文件和 Zotero 库索引到一个 SQLite 文件中,并返回带有位置元数据的段落。
插件信息¶
- 名称:dsh-kb-rag
- 类别:记忆
- 维护者:Breeze136
- 许可证:MIT
- GitHub:Breeze136/dsh-kb-rag
- 目录页:dsh-kb-rag 在 SkillHub
核心功能¶
- 本地优先的文献 RAG:所有索引、嵌入和重排序均在本地运行,无需上传数据,无 API 成本。
- 多源索引:支持将 PDF 文件和 Zotero 图书馆索引到单一的 SQLite 数据库中。
- 位置元数据:返回的检索段落包含章节、物理 PDF 页码和可点击的 DOI 链接。
- 本地模型:使用本地嵌入和重排序模型。
- MCP 支持:提供 MCP 服务器模式,可被 Claude Desktop、Cursor 等工具使用。
安装与启用¶
安装过程会处理 Python 依赖、引擎测试以及 Node/pnpm 的检查。
- 执行安装命令:
npx dsh-kb-rag-install
- 首次使用时,插件会下载约 95MB 的嵌入模型和约 1.1GB 的重排序器,因此初始化速度较慢,后续查询将进入内存缓存,速度会显著提升。
典型用法¶
安装完成后,可通过以下工具进行操作:
- kb_rag:检索证据。用于向知识库提问,获取带有引用的段落。
- kb_ingest:批量索引。用于处理文件索引,支持后台异步任务。
- kb_status:查询状态。用于轮询
kb_ingest的后台作业状态。 - kb_scope:定义范围。用于定义查询的严格模式和范围。
适用场景与注意事项¶
适用场景:
* 需要基于本地文献库进行 RAG 检索的研究人员。
* 已经有大量 PDF 文献或 Zotero 库,希望进行结构化索引的用户。
* 需要精确引用来源和页码的开发者。
注意事项:
* 权限问题:插件以当前 DSH 进程的权限运行,安装前应检查源码与许可证。
* 首用速度:首次使用需要下载模型文件,耗时较长。
* 文件格式限制:无文本层的扫描 PDF 会被跳过。
* 索引内容:图片本身不索引,仅索引图片的图注(caption)为文本。
* 语言限制:跨语言检索能力较弱。
结语¶
dsh-kb-rag 提供了一种本地化、结构化的文献管理方式。通过 SQLite 存储和本地模型计算,它能够在保护数据隐私的同时,提供带有精确位置信息的检索结果。更多细节可参考其 GitHub 仓库。