DeepSeek Harness(DSH)採用插件化架構,旨在擴展系統的原生能力。純文本大模型無法直接“看”圖,需要通過外部工具輔助。dsh-siliconflow-vision 是一個插件,它註冊了一個 analyze_image 工具,將圖片輸入交給硅基流動(SiliconFlow)的視覺大模型(默認使用 Qwen/Qwen3-VL-32B-Instruct),再將識別結果返回給 DSH 會話,從而讓對話模型具備完整的圖片分析能力。
這是一個由 ShiXiangYu2 維護的模型推理類插件,遵循 MIT 許可證。
核心功能¶
該插件主要提供以下視覺識別能力:
- 識別服務器本地圖片文件(通過文件路徑傳遞)。
- 識別 HTTP(S) 圖片 URL。
- 識別 Base64 Data URL。
- 自定義識別指令(Prompt),例如“識別圖中所有文字”或“圖裏有什麼動物”。
- 支持切換不同的視覺模型(Qwen3-VL 系列、GLM-4.5V、PaddleOCR-VL 等)。
- 提供可選的交互式“粘貼識別”面板(動態插件形態)。
安裝與啓用¶
使用 dsh plugin 命令將插件安裝到指定的 profile 中。
dsh plugin --profile demo add ./dsh-siliconflow-vision
安裝完成後,在啓動 DSH 時加載該 profile,analyze_image 工具即可自動生效。
配置 API Key¶
插件代碼中不會硬編碼 API Key。你需要通過環境變量或密鑰文件配置硅基流動的訪問憑證。
方式一:環境變量
export SILICONFLOW_API_KEY="sk-xxxxxxxx"
方式二:密鑰文件
在以下任一位置創建純文本文件,內容爲 API Key:
$DSH_HOME/siliconflow.key
~/.dsh/siliconflow.key
API Key 需在硅基流動控制台獲取。
典型用法¶
在 DSH 對話中直接輸入包含圖片路徑或 URL 的指令即可。模型會自動調用 analyze_image 工具。
示例:
分析一下 /root/data/photo.png 裏有什麼
識別這張圖的文字:https://example.com/screenshot.png
工具調用參數如下:
image:圖片源(必填),支持本地路徑、HTTP URL 或 Data URL。prompt:對圖片的指令,缺省時使用通用中文描述。model:指定的硅基流動模型 ID,默認爲Qwen/Qwen3-VL-32B-Instruct。maxTokens:輸出 token 上限,默認 1024。
可選模型列表¶
根據不同的識別需求,可以切換不同的模型:
| 模型 ID | 特點 |
|---|---|
Qwen/Qwen3-VL-32B-Instruct |
默認,識別能力強 |
Qwen/Qwen3-VL-8B-Instruct |
更快、更省資源 |
Qwen/Qwen3-VL-30B-A3B-Instruct |
性價比選擇 |
zai-org/GLM-4.5V |
通用視覺理解 |
PaddlePaddle/PaddleOCR-VL-1.5 |
專注 OCR 文字識別 |
技術說明與注意事項¶
- 運行環境:需要 Node.js >= 18。
- 請求格式:使用 OpenAI 兼容的接口,向
https://api.siliconflow.cn/v1/chat/completions發送 POST 請求。 - 本地圖片處理:讀取本地圖片後直接轉換爲 base64 data URL 傳入,不生成磁盤臨時文件,避免權限和路徑問題。
- 安全性:插件以當前 DSH 進程的權限運行。在使用前,建議檢查源碼以確認其行爲符合預期。
該插件通過連接 SiliconFlow 的視覺能力,爲 DSH 會話增加了“看”圖的能力。更多技術細節與源碼,請訪問 GitHub 倉庫。