dsh-search-router:DeepSeek Harness 的原生 Web 搜索路由插件

前言

DeepSeek Harness (DSH) 的原生 web_search 工具通常綁定到特定的搜索後端。當需要更換提供商,或者希望爲一次調用配置多個提供商並實現順序回退時,直接修改配置可能較爲繁瑣。dsh-search-router 插件解決了這個問題,它向 ctx.web 註冊了一個原生的 WebSearchProvider,將每次 web_search 調用轉發到用戶選擇的搜索後端,並支持順序回退機制。

插件介紹

這是一個極小的 DeepSeek Harness (DSH) 插件。它向 ctx.web 註冊了一個原生的 WebSearchProvider,將每次 web_search 調用轉發到用戶選擇的搜索後端,並支持順序回退(當一個失敗時嘗試下一個)。模型看到的仍然是同一個 web_search 工具,不會引入新的工具、MCP、重排序或緩存。

維護者: XGrin
許可證: MIT
Stars: 1
分類: 模型推理

核心功能

  1. 多後端支持:支持 Exa, Tavily, Brave, Perplexity, DeepSeek, SearXNG, DuckDuckGo 等搜索後端。
  2. 順序回退:支持配置順序回退機制,當主提供商失敗時,自動嘗試下一個。
  3. 零依賴工具:不引入新的工具、MCP、重排序或緩存。
  4. 可視化配置:提供 GUI 支持拖拽排序與配置。

安裝與啓用

通過官方 CLI 安裝插件:

dsh plugin --profile web add github:XGrin/dsh-search-router

安裝完成後,啓動 Web 界面:

dsh web

若需卸載,可執行:

dsh plugin --profile web remove dsh-search-router

配置方式

插件提供兩種配置方式,兩者作用於同一組配置項。GUI 中的設置會覆蓋環境變量,而 GUI 中的重置操作將繼承 Composition 配置的值。

1. 在 GUI 中配置

進入 設置 -> 插件 -> 插件配置,找到“Search router”卡片。

  • 每一行代表一個活躍的提供商,按回退優先級編號。
  • 支持拖拽行來重新排序(也支持鍵盤操作)。
  • 每個提供商提供內聯編輯器,可添加或修改配置。
  • API 密鑰在此輸入後會持久化存儲並覆蓋環境變量。
  • 每一項修改都會實時應用,無需重啓。

2. 在 Composition 中配置

編輯 profiles/web/cordis.patch.yml 文件。插件會自動檢測每個擁有密鑰或端點的提供商,默認順序爲:exa → tavily → brave → perplexity → deepseek → searxng → duckduckgo。

示例 1:Tavily 爲主,回退到自建 SearXNG

- id: search-router
  config:
    order: [tavily, searxng]
    providers:
      tavily: { apiKeyEnv: TAVILY_API_KEY }
      searxng: { baseUrl: https://search.example.com }

示例 2:僅使用 SearXNG,無需任何商業密鑰

- id: search-router
  config:
    provider: searxng
    providers:
      searxng: { baseUrl: http://127.0.0.1:8888 }

注意事項

  1. SearXNG 格式要求:如果使用自託管的 SearXNG,必須在 SearXNG 的 settings.yml 中啓用 json 輸出格式(search.formats)。
  2. DuckDuckGo 無需密鑰:使用 DuckDuckGo 時無需任何 API 密鑰,開箱即用。
  3. 密鑰優先級:GUI 中設置的 API Key 會覆蓋環境變量。若在 GUI 中清除密鑰,將回退讀取環境變量。
  4. 優先級繼承:在 GUI 中點擊重置,將恢復爲 Composition 配置中定義的值。

總結

dsh-search-router 爲 DSH 提供了一種靈活切換和組合搜索後端的能力。通過順序回退機制,它提高了搜索調用的可用性。插件設計剋制,不引入額外工具,適合需要精細控制搜索鏈路的開發者。

  • GitHub 倉庫:https://github.com/XGrin/dsh-search-router
  • 插件目錄:https://www.skillhub.cn/plugins/XGrin/dsh-search-router
羽毛球分组比赛记分
小程序二维码

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

小夜