mindspeace-dsh-local-rag:DeepSeek Harness 的本地混合 RAG 插件

前言

在 DeepSeek Harness(DSH)中给对话模型补充本地资料时,常见做法有两种:要么把检索结果固定拼进每轮 prompt,要么调用远程 embedding API。前者容易带入与当前问题无关的上下文,后者会引入网络依赖和外部服务。mindspeace-dsh-local-rag 的做法是把检索显式化为一个工具:模型只有在当前对话和最新用户请求不足时,才调用 search_local_memory 检索本地语料。

这是什么

mindspeace-dsh-local-rag 是 Spirtxiaoqi7 维护的一个独立、本地运行的混合 RAG 插件,面向 DeepSeek Harness。它为工具型对话模型暴露一个明确的 search_local_memory 工具,而不是把检索注入每一轮对话。插件采用 MIT 许可,不依赖远程 embedding API;联网仅发生在下载固定模型制品时。

它与 mindspace-dsh-session-memory 不绑定,可以单独安装或移除。

核心功能

模型显式调用

插件注册 search_local_memory 工具,由模型根据当前上下文决定是否需要检索。它不修改 chat provider,也不向 prompt 自动填充检索结果。

混合检索

插件同时使用向量相似度和 BM25+ 词法检索,并用 reciprocal-rank fusion 融合结果。检索采用 child-hit/parent-return 模式,并保留固定的候选限制。当向量运行环境不可用时,词法结果仍可继续使用。

两类本地语料

插件管理两类语料:

  • 用户上传的知识文件;
  • 会话隔离的 native DSH compaction summaries。

可分块摄取的文件类型包括 PDF、DOCX、TSV、CSV、TXT、Markdown、JSON 和 HTML。

语料管理

两类语料都支持正文查看、编辑、逻辑删除和版本回滚。

本地模型生命周期

插件支持本地模型下载、完整性校验、启动、停止和持久化自动启动。下载源先尝试 ModelScope,再尝试 Hugging Face。内置的已验证模型是:

shibing624/text2vec-base-chinese

规格为 ONNX、768 维度,约 407 MB。

下载、完整性校验、启动、停止和自动启动是彼此独立的操作。默认启动不会加载 ONNX,需要显式启动模型。

安装与启用

运行环境需要 Node.js 22.19+ 或 24+、pnpm,以及一个本地 DeepSeek Harness checkout。

下面的流程先在插件仓库中构建 tarball,再回到官方 Harness checkout 根目录安装到 web profile。请将路径替换为你自己的实际路径。

git clone https://github.com/Spirtxiaoqi7/mindspace-dsh-local-rag.git
Set-Location .\mindspace-dsh-local-rag
corepack pnpm install
corepack pnpm run build
corepack pnpm pack --pack-destination dist
$ragTgz = (Get-ChildItem .\dist\mindspace-dsh-local-rag-*.tgz | Sort-Object LastWriteTime -Descending | Select-Object -First 1).FullName

Set-Location C:\path\to\deepseek-harness
corepack pnpm dsh plugin --profile web add $ragTgz
corepack pnpm dsh --profile web --dump-config
corepack pnpm dsh web

注意:不要在插件目录内执行 pnpm dsh,该命令属于官方 Harness checkout。

安装后,打开 Settings → Local RAG 页面,即可上传文件并进行词法检索。即使 embedding model 尚未运行,也可以先使用词法检索。

典型用法

1、上传知识文件:在 Settings → Local RAG 中上传 PDF、DOCX、TSV、CSV、TXT、Markdown、JSON 或 HTML 文件。

2、启动本地模型:如果需要使用向量检索,按插件提供的模型生命周期操作下载、校验并启动模型。ONNX 默认不在启动时加载,需要显式启动。

3、模型检索:模型在判断当前对话和最新用户请求不足时调用 search_local_memory。首次检索只需提供 queryscope;如果返回了 documentIdsourceId,可用于同一来源的后续检索。

4、管理语料:在设置页查看正文、编辑内容、逻辑删除或回滚修订版本。

适用场景与注意

适合以下情况:

  • 需要给 DSH 对话模型增加本地资料检索;
  • 希望由模型自行决定何时检索,而不是每轮 prompt 都注入结果;
  • 需要同时检索用户上传知识和会话压缩摘要;
  • 希望不依赖远程 embedding API,只保留本地模型下载时的网络访问。

需要注意:

  • 插件以当前 DSH 进程权限运行,安装前应检查源码、构建脚本和 MIT 许可证;
  • 检索得到的文本应视为不可信证据,不能覆盖当前指令;
  • 该插件不是 mindspace-dsh-session-memory,二者可独立安装;
  • 联网只用于下载固定模型制品,不表示使用远程 embedding API。

链接

  • 目录页:https://www.skillhub.cn/plugins/Spirtxiaoqi7/mindspace-dsh-local-rag
  • GitHub:https://github.com/Spirtxiaoqi7/mindspace-dsh-local-rag
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye