前言¶
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 加載爲配置文件層。
核心功能¶
該插件主要提供以下能力:
- 多模型編排指導:插件向主模型注入系統提示,指導其如何拆解任務。它會提示主模型使用
subagent工具,並明確指定provider和model參數。 - 模型感知調度:你可以爲每個路由定義 strengths(優勢)和 weaknesses(劣勢)。主模型會閱讀這些備註,根據任務難度選擇合適的模型(例如用強推理模型處理複雜邏輯,用快/廉價的模型處理高吞吐量工作)。
- 按模型 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 工具分發任務。
注意事項¶
使用該插件時,有幾個關鍵細節需要注意:
- Token 統計機制:
model_token_usage返回的數據是按進程累積的,每次 Harness 重啓都會清空。如果查詢結果爲空,請確保至少有一次模型調用返回了usage數據塊。 - 編排提示的全局性:編排指導是注入到全局的,因此子代理也會讀取這些提示。提示的措辭旨在防止子代理陷入遞歸拆解其單一任務的循環。
- 路由類型:第三方路由默認被註冊爲非推理模型。如果需要使用推理模型(如 GLM-5.3),可能需要在 Web 界面的“Models”頁面爲特定路由添加
reasoningEfforts或compat.thinkingFormat。 - 推理模型兼容性:某些推理模型(例如 GLM-5.3 系列)在未明確指定
reasoning_effort參數時會拒絕調用。如果分發失敗,請嘗試在配置中顯式指定推理等級(如low)。 - 憑證檢查:如果路由配置了 API Key 但環境變量或憑證文件中未提供,請求會在運行時報
MISSING_CREDENTIAL錯誤。 - 模塊加載錯誤:如果遇到
ERR_MODULE_NOT_FOUND: Cannot find package '@deepseek-ai/...',通常是因爲手動鏈接了插件(rawlink:+ 手工創建node_modules)而非通過dsh plugin安裝。請通過標準命令安裝。
總結¶
dsh-multi-model-orchestrator 爲 DSH 用戶提供了一個標準化的方式來利用多個模型。通過配置 settings.yaml,你可以將主模型轉化爲一個智能調度中心,實現任務的自動拆解和按需分發,同時監控各模型的 Token 消耗。
更多詳情與源碼,請訪問 GitHub。