前言¶
在 DeepSeek Harness(DSH)裏,一些主模型本身不具備視覺能力,例如 deepseek-v4-pro。如果用戶把圖片直接發到會話中,可能會遇到“模型不支持圖片”的攔截。對於需要讓主模型讀取圖片內容的場景,可以把圖片處理放到模型請求組裝階段:用戶消息仍然保留圖片,主模型最終只收到視覺模型轉換後的文字描述。
下面介紹 DSH 插件 dsh-vision-bridge。它解決的問題是:讓無視覺能力的主模型在 DSH 會話中處理用戶發送的圖片,同時保留用戶消息框中的圖片縮略圖,並提供 view_image 工具供模型主動看圖。
這是什麼¶
dsh-vision-bridge 是 DSH 視覺橋接插件。資料中倉庫標題爲 dsh-vision-bridge,npm 包名爲 @liu__min/dsh-vision-bridge,已覈實版本爲 0.1.1,許可證爲 MIT。GitHub 倉庫路徑爲 lium970320/dsh-vision-bridge,維護者爲 lium970320。
它不是視覺模型本身,也不是一個獨立的看圖服務。它是在 DSH 插件層面接入視覺接口:當會話中出現圖片,或模型調用 view_image 工具時,插件把圖片交給已配置的視覺接口轉成文字描述,再讓主模型繼續處理。
核心功能¶
下面介紹已覈實的插件能力。
1、會話直接收圖:用戶發送圖片後,不再被“模型不支持圖片”攔截。
2、用戶消息保留圖片縮略圖:圖片轉換不在用戶消息上發生,用戶消息框仍然顯示圖片縮略圖。
3、模型請求組裝階段自動轉文字:圖片在模型請求組裝層被交給視覺模型轉成文字描述,主模型只收到文字。
4、提供 view_image 工具:模型在需要看圖時可以自行調用,支持本地路徑、URL、data URL。
5、提供 install.ps1 一鍵安裝腳本:腳本完成複製、登記、聲明、配置、補丁、自測等步驟。
6、支持顯式配置的視覺接口:支持 OpenAI 官方、xAI Grok 等顯式配置的視覺接口,或 OpenAI 兼容 Responses API。
7、運行行爲明確:插件不內置任何服務商;未配置視覺接口時工具會明確報錯,不會靜默失敗;插件無日誌、無緩存、無運行數據寫盤。
安裝與啓用¶
先確認前置條件:DeepSeek Harness 已安裝,且 dsh web 至少啓動過一次,~/.dsh/profiles/web/ 目錄存在。
無論使用哪種安裝方式,裝完都要重啓 dsh web,並完成視覺接口配置。
從 npm 安裝¶
已覈實 npm 包安裝命令如下:
dsh plugin --profile web add @liu__min/dsh-vision-bridge
執行後,進入 DSH profile 目錄,補打 pi-ai 適配器補丁:
cd ~/.dsh/profiles/web/
node apply-vision-patch.js
接着按下一節寫入視覺接口配置,再重啓 dsh web。
從 GitHub 倉庫一鍵安裝¶
先克隆倉庫:
git clone https://github.com/lium970320/dsh-vision-bridge.git
cd dsh-vision-bridge
以 OpenAI 官方接口爲例,運行安裝腳本:
powershell -ExecutionPolicy Bypass -File install.ps1 -ApiBase https://api.openai.com/v1 -ApiKeyEnv OPENAI_API_KEY -VisionModel gpt-5.1
安裝腳本會依次完成:複製插件文件、在 profile 的 cordis.patch.yml 登記插件行、在 settings.yaml 給主模型聲明圖片輸入、寫視覺接口配置、打 pi-ai 適配器補丁、自測。
經過上面的步驟後,重啓 dsh web,在會話中發送一張圖片驗證。
配置視覺接口¶
插件必須顯式配置視覺接口,需要同時提供接口網址和 API 密鑰。可以在 ~/.dsh/profiles/web/vision-bridge-config.json 中寫入配置:
{
"apiBase": "https://api.openai.com/v1",
"model": "gpt-5.1",
"apiKeyEnv": "OPENAI_API_KEY",
"apiKey": ""
}
其中:
apiBase:視覺接口地址。model:視覺模型名。apiKeyEnv:密鑰環境變量名,優先級更高。apiKey:直接寫入密鑰,與apiKeyEnv二選一。
密鑰只建議保存在本機配置文件或環境變量中。已覈實資料說明 vision-bridge-config.json 已被 .gitignore 排除。
配置優先級如下:
cordis.patch.yml 的插件 config > vision-bridge-config.json > 環境變量(密鑰)
手動安裝¶
如果希望逐步控制安裝過程,可以先複製插件文件到 DSH profile 目錄:
# 從倉庫 plugin/ 目錄複製:
# dsh-view-image.js
# apply-vision-patch.js
# 目標目錄:
# ~/.dsh/profiles/web/
在 ~/.dsh/profiles/web/cordis.patch.yml 追加插件登記:
- insert:
- id: dsh-view-image
name: './dsh-view-image.js'
在 ~/.dsh/settings.yaml 的 llm-pi-ai.providers 下給主模型聲明圖片輸入。示意如下:
llm-pi-ai:
providers:
# 將下面的 provider 名替換爲 settings.yaml 中已有的 provider 名
provider-name:
modelOverrides:
deepseek-v4-pro:
input:
- text
- image
這裏的主模型示例爲 deepseek-v4-pro,實際應以本機 settings.yaml 中的主模型配置爲準。
接着寫入視覺接口配置:
# 文件:~/.dsh/profiles/web/vision-bridge-config.json
# 字段:apiBase、model、apiKeyEnv、apiKey
然後運行補丁和自測:
cd ~/.dsh/profiles/web/
node apply-vision-patch.js
node dsh-view-image.js
最後重啓 dsh web。
典型用法¶
下面是兩個可直接參考的視覺接口配置示例。
OpenAI 官方接口¶
先確保環境變量 OPENAI_API_KEY 已設置爲本機密鑰。然後運行:
powershell -ExecutionPolicy Bypass -File install.ps1 -ApiBase https://api.openai.com/v1 -ApiKeyEnv OPENAI_API_KEY -VisionModel gpt-5.1
重啓 dsh web 後,在任意會話中發送一張圖片,確認用戶消息框保留圖片縮略圖,主模型能根據轉換後的文字描述繼續處理。
xAI Grok 接口¶
如果顯式配置 xAI Grok 視覺接口,可以運行:
powershell -ExecutionPolicy Bypass -File install.ps1 -ApiBase https://api.x.ai/v1 -ApiKeyEnv XAI_API_KEY -VisionModel grok-4-fast
之後同樣重啓 dsh web,並在會話中發圖驗證。
適用場景與注意¶
適合已有 DSH web 運行環境、希望讓無視覺主模型讀取圖片內容的開發者。插件本身不替代主模型,也不內置視覺服務商,必須顯式配置視覺接口。
注意以下事項:
1、插件以當前 dsh 進程權限運行。安裝前應先檢查源碼、安裝腳本和許可證。
2、許可證爲 MIT。GitHub 倉庫地址:
https://github.com/lium970320/dsh-vision-bridge
3、每次 dsh 升級或重裝後,pi-ai 適配器補丁會丟失,需要重新運行:
cd ~/.dsh/profiles/web/
node apply-vision-patch.js
4、插件啓動時會檢查補丁是否缺失。缺失時日誌會告警:
[dsh-view-image] pi-ai vision patch is MISSING
5、視覺接口密鑰只建議保存在本機 vision-bridge-config.json 或環境變量中,不要提交到倉庫。
6、未配置視覺接口時,工具會明確報錯,不會靜默失敗。
參考¶
GitHub 倉庫:
https://github.com/lium970320/dsh-vision-bridge
已覈實資料未給出可確認的目錄頁 URL,因此本文不列出目錄頁鏈接。