dsh-9router-web-search:9router 后端网络搜索与获取

DeepSeek Harness (DSH) 的原生搜索工具 (web_search) 默认依赖上游服务提供的 Anthropic web_search_20250305 工具定义。而 9router 作为 OpenAI 兼容网关,通常不直接提供服务端搜索能力,而是将工具定义传递给模型。这个插件解决了这个冲突,将 DSH 的原生 web_search 和 web_fetch 工具直接挂载到 9router 的网关端点上,使其能够利用 9router 提供的搜索与抓取能力。

插件概览

  • 名称:dsh-9router-web-search
  • 作者:lordraiden
  • 类别:联网工具
  • 许可证:MIT

核心能力

  1. 端点路由:将 DSH 的 web_search 路由至 9router 的 /v1/search,将 web_fetch 路由至 /v1/web/fetch。
  2. 原生设置面板:在 DSH 中提供原生的设置卡片,用于配置 API Key、Base URL、模型、超时时间及限制参数。
  3. 零配置 Wiring:通过 bundle patch 自动将 web.searchProvider 和 web.fetchProvider 针定为 9router,无需手动配置。
  4. 凭证感知:支持从 DSH 凭证服务读取 NINE_ROUTER_API_KEY,API Key 为可选,无 Key 的本地实例也可直接运行。
  5. 纯 ESM 实现:无需构建步骤,即插即用。

安装与启用

  1. 安装插件
    使用 DSH 的 CLI 安装该插件到 web 配置文件。
    npx @deepseek-ai/dsh plugin --profile web add github:lordraiden/dsh-9router-web-search
如需固定版本(例如 `v0.2.3`),可在命令后追加标签:
    npx @deepseek-ai/dsh plugin --profile web add github:lordraiden/dsh-9router-web-search#v0.2.3
  1. 配置网关地址
    安装完成后,在 DSH 的设置面板中找到该插件卡片,设置 baseURL 指向你的 9router 网关地址。此地址必须为 http 或 https。若未配置,提供者将报告不可用。

  2. 重启与刷新
    重启 Harness,并在浏览器中执行硬刷新以加载新的插件选项。

配置说明

插件提供了若干配置项,位于 DSH 的设置面板中:

  • baseURL:9router 兼容网关的基础地址。
  • searchModel / fetchModel:分别指定搜索和抓取端点使用的模型名称(默认为 search-combo / fetch-combo)。
  • searchType:发送给搜索端点的搜索类型(默认为 web)。
  • timeoutMs:统一的请求超时时间(默认 30000ms)。
  • apiKey:直接填写的 API Key(可选),用于无凭证环境。
  • apiKeyEnv:引用 DSH 凭证服务中的密钥名称(默认为 NINE_ROUTER_API_KEY)。

注意事项

  • DSH 版本要求:该插件依赖 DSH 版本 >= 0.1.7-rc.1。
  • 网关依赖:必须部署一个 9router 兼容网关,插件不支持隐式回退端点。
  • 安全防护:web_fetch 功能将 URL 提取和 SSRF 防护完全委托给 9router 服务器处理,插件自身不实现本地 SSRF 策略。请确保运行经过安全补丁的 9router 版本。

总结

dsh-9router-web-search 是一套为 9router 网关设计的 DSH 适配层。它绕过了 DSH 默认的搜索工具要求,通过原生工具定义直接调用 9router 的 /v1/search 和 /v1/web/fetch 端点,实现了在 OpenAI 兼容网关环境下的网络搜索与获取能力。

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

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

小夜