前言¶
DeepSeek Harness (DSH) 的運行時通過模型元數據中的 inputModalities 字段來判斷是否允許圖像輸入。當配置第三方模型或自定義提供方時,DSH 往往無法自動推斷該模型是否支持圖像,導致消息圖片、read_image 工具調用或附件上傳被攔截。
dsh-model-modality 插件提供了一種顯式聲明的方式,讓用戶將模態聲明寫入擁有該模型的提供方設置中,從而繞過運行時的自動推斷限制。
插件定位¶
本插件隸屬於 DeepSeek Harness 生態,由用戶 ct-jyjntc 維護。它主要用於解決第三方模型(中轉站 / 自定義提供方)的輸入模態未知問題,通過在元數據中寫入 inputModalities,確保圖像相關功能正常工作。
核心功能¶
- 模態聲明:允許用戶聲明某個模型是否支持圖像輸入。
- 元數據寫入:將聲明的模態信息寫入模型元數據。
llm-deepseek(官方 / 自定義 baseURL):寫入models[].inputModalitiesllm-pi-ai(第三方提供方目錄):寫入models[].input或modelOverrides[].input
- 工具支持:提供兩個主要工具供 agent 調用:
declare_model_multimodal(provider, model, supportsImage)list_model_multimodal(provider?, model?)
- 可選 UI:提供瀏覽器端的多模態開關界面(需動態掛載)。
安裝¶
使用官方插件管理命令安裝:
dsh plugin add ct-jyjntc/dsh-model-modality
典型用法¶
安裝後,可在對話中直接調用工具進行聲明或查詢。
聲明模型支持圖像:
declare_model_multimodal(provider="raincode", model="kimi-k3", supportsImage=true)
→ { ok: true, verified: true, inputModalities: ["text","image"], ... }
列出模型模態:
list_model_multimodal(provider="raincode")
注意事項¶
- 依賴版本:本插件依賴
@deepseek-ai/dsh-tools,版本範圍需滿足>=0.0.1-rc.1 <0.1.0 || >=0.1.0-rc.1 <0.2.0-0,安裝前請檢查本地環境版本。 - 持久化位置:聲明的數據寫入提供方(Provider)的模型設置中,與插件本身獨立。在 DSH 的 Models 設置頁可查看與編輯這些數據。
- 瀏覽器端 UI:設置頁及 Run 卡片面板的「多模態(圖像輸入)」開關屬於可選功能。由於客戶端模塊未隨本包發佈,若需在瀏覽器端使用該 UI,需讓 agent 在會話中動態掛載插件。
總結¶
該插件通過顯式聲明解決了第三方模型在 DSH 環境下的多模態輸入識別問題。更多細節與源碼請訪問 GitHub 或查看 社區目錄。