DeepSeek Harness(DSH)网页搜索提供方插件

DeepSeek Harness(DSH)内置了 web_search 工具,但默认的官方提供者(deepseek-official)受限于 DeepSeek 的 Anthropic 端点,无法指向其他网关。开发者若想跨网关使用,或需要更灵活的协议支持,需要额外的配置。下面介绍 dsh-web-search-diy 插件,它通过注册 ctx.web 提供者并覆盖 shared searchProvider,实现了对多种协议的支持。

是什么

这是一个 DeepSeek Harness(DSH)网页搜索提供方插件,由 aaronlei 维护,采用 MIT 许可证。它将 DSH 内置的 web_search 工具连接到多种协议上,返回结构化引用来源,允许调用模型基于引用作答。

核心功能

插件支持以下能力:

  • 多协议支持:支持四种可选协议,包括 OpenAI 兼容 Responses API、Anthropic Messages API、智谱 Web Search API(基础检索)和智谱 Web Search in Chat(答案增强)。
  • 结构化引用:返回结构化引用来源,方便模型基于引用作答。
  • 配置覆盖:注册 ctx.web 搜索提供者并覆盖 shared searchProvider,与 DSH 生态中的其他提供方插件行为一致。
  • 灵活配置:支持自定义端点、模型和凭证引用。

安装与启用

通过 npm 发布安装:

dsh plugin --profile web add dsh-web-search-diy

本地开发安装:

dsh plugin --profile web add link:./dsh-web-search-diy

安装后,插件会自动插入 loader、覆盖配置并禁用内置的 DeepSeek-official 搜索,无需手动编辑 cordis.patch.yml。

典型用法

插件的核心在于通过配置 mode 来选择协议。

  1. Responses 模式(默认):使用 OpenAI 兼容的 Responses API。该模式通过 POST /responses 并在 tools 中声明 web_search 来触发搜索。大多数 OpenAI 兼容网关仅通过此方式触发内置搜索。
  2. Anthropic Messages 模式:使用 Anthropic 兼容的 Messages API,调用原生 web_search_20250305 服务器工具。该模式支持自定义 apiVersion 和 maxUses。
  3. 智谱搜索模式:包含 zhipu-web-search(基础检索)和 zhipu-chat-search(答案增强)两种模式。

在 Anthropic 模式下,可以通过 anthropicThinking 开关禁用思考过程。端点为空时会回退到环境变量 $DEEPSEEK_SEARCH_BASE_URL。

适用场景与注意

  • 适用场景:需要使用非 DeepSeek 官方端点的开发者;使用 OpenAI 兼容网关但仅通过 Responses API 触发搜索的场景;需要 Anthropic 原生 web_search 工具且希望灵活配置参数的用户。
  • 注意:Anthropic 模式不支持通过 effort 或 budget 调整思考。每个 Anthropic 轮次会被记录在会话中。OpenAI 兼容网关仅通过 Responses API 触发搜索,Chat Completions 搜索标志会被静默忽略。

总结

该插件将 DSH 的搜索能力与各种协议解耦,适合需要灵活配置网关和模型的场景。更多细节与源码,请参考 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

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

小夜