dsh-multi-model-orchestrator:將主模型變成多模型調度器

前言

DeepSeek Harness (DSH) 的核心理念是“一切皆插件”。在開發多智能體系統或處理複雜任務時,單一模型(通常是 DeepSeek R1)可能無法高效處理所有子任務。引入第三方模型(如 GLM、Kimi、Qwen)可以分擔壓力,但手動管理調用鏈路成本較高。

dsh-multi-model-orchestrator 插件解決了這個問題。它將主模型轉化爲一個“主腦”,負責將複雜任務拆解,並根據各子模型的特性(如推理能力、速度、成本)將子任務分發到最適合的模型上執行。

插件簡介

這是一個 DeepSeek Harness (dsh) 插件,由用戶 Bazley13 維護,採用 MIT 許可證。它的核心作用是將主 AI 模型升級爲一個多模型編排中心,通過系統提示注入和工具調用,實現模型感知的任務分發和按模型統計 Token 使用量。

安裝

安裝該插件需要將其添加到指定的 DSH 配置文件中。通常使用 web 配置文件。

dsh plugin --profile web add dsh-multi-model-orchestrator

安裝完成後,重啓 Harness 或重新加載配置文件。插件通過 cordis.patch.yml 加載爲配置文件層。

核心功能

該插件主要提供以下能力:

  1. 多模型編排指導:插件向主模型注入系統提示,指導其如何拆解任務。它會提示主模型使用 subagent 工具,並明確指定 provider 和 model 參數。
  2. 模型感知調度:你可以爲每個路由定義 strengths(優勢)和 weaknesses(劣勢)。主模型會閱讀這些備註,根據任務難度選擇合適的模型(例如用強推理模型處理複雜邏輯,用快/廉價的模型處理高吞吐量工作)。
  3. 按模型 Token 統計:提供一個 model_token_usage 工具,用於報告每個 provider/model 組合在當前進程內的輸入、輸出、緩存讀寫 Token 及請求數量。

配置與使用

要啓用這些功能,需要在 $DSH_HOME/settings.yaml(默認路徑爲 ~/.dsh/settings.yaml)中進行配置。

1. 添加第三方模型路由

首先,你需要配置第三方模型的路由。GLM、Kimi、Qwen 等預設格式可以直接參考示例文件。每個路由只需配置 apiKeyEnv。

llm-pi-ai.providers:
  - api: openai-completions
    baseURL: https://open.bigmodel.cn/api/paas/v4
    apiKeyEnv: GLM_API_KEY
    models: ["glm-4.6"]

2. 啓用子代理模型選擇

允許主模型在調度子任務時選擇模型。需要設置 enabled: true 並在 allowedModels 中列出允許的模型。

subagent-model-selection:
  enabled: true
  allowedModels:
    - { provider: glm, model: glm-4.6 }
    # 可以添加更多路由,如 kimi, qwen 等

3. 添加模型備註

爲主模型提供模型能力的上下文,幫助其做出調度決策。

multi-model-orchestrator:
  modelNotes:
    glm/glm-4.6:
      description: Zhipu flagship, strong reasoning.
      strengths: complex reasoning, coding, agentic tool use
      weaknesses: slower and pricier

4. 執行任務

重啓 Harness 後,直接在主對話中提出複雜任務,例如:“把這個任務拆分成並行子任務,並分發到最合適的模型上。”

主模型會自動記錄子任務、調用 list_subagent_models 查看可用路由、並通過 subagent 工具分發任務。

注意事項

使用該插件時,有幾個關鍵細節需要注意:

  1. Token 統計機制:model_token_usage 返回的數據是按進程累積的,每次 Harness 重啓都會清空。如果查詢結果爲空,請確保至少有一次模型調用返回了 usage 數據塊。
  2. 編排提示的全局性:編排指導是注入到全局的,因此子代理也會讀取這些提示。提示的措辭旨在防止子代理陷入遞歸拆解其單一任務的循環。
  3. 路由類型:第三方路由默認被註冊爲非推理模型。如果需要使用推理模型(如 GLM-5.3),可能需要在 Web 界面的“Models”頁面爲特定路由添加 reasoningEfforts 或 compat.thinkingFormat。
  4. 推理模型兼容性:某些推理模型(例如 GLM-5.3 系列)在未明確指定 reasoning_effort 參數時會拒絕調用。如果分發失敗,請嘗試在配置中顯式指定推理等級(如 low)。
  5. 憑證檢查:如果路由配置了 API Key 但環境變量或憑證文件中未提供,請求會在運行時報 MISSING_CREDENTIAL 錯誤。
  6. 模塊加載錯誤:如果遇到 ERR_MODULE_NOT_FOUND: Cannot find package '@deepseek-ai/...',通常是因爲手動鏈接了插件(raw link: + 手工創建 node_modules)而非通過 dsh plugin 安裝。請通過標準命令安裝。

總結

dsh-multi-model-orchestrator 爲 DSH 用戶提供了一個標準化的方式來利用多個模型。通過配置 settings.yaml,你可以將主模型轉化爲一個智能調度中心,實現任務的自動拆解和按需分發,同時監控各模型的 Token 消耗。

更多詳情與源碼,請訪問 GitHub。

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

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

小夜