前言¶
DeepSeek Harness(DSH)把「一切皆插件」貫徹得很徹底:對話模型、工具集、界面能力,都可以按需拼裝。但對不少開發者來說,日常用的仍是純文本模型——DeepSeek、Qwen 或其他 OpenAI 兼容路由,本身並不接收圖片。社區裏已有不少視覺插件,常見做法是把圖片先「翻譯」成一段文字描述,再交給主模型推理。這條路能跑通,卻容易丟像素細節,也難做多步、可驗證的圖像操作。
dsh-vision-router 是維護者 ysr666 開源的 DSH 視覺路由插件(GitHub 約 964 star,MIT 許可證)。它的思路不同:視覺模型只當「眼睛」,DeepSeek 繼續當「大腦」;圖片輪次像普通工具調用一樣工作,內置免密鑰免費視覺鏈路,並附帶 14 個像素級視覺工具。下文基於 SkillHub 目錄頁 與 GitHub 倉庫 README 覈實後整理。
這是什麼¶
一句話定位:給純文本 DSH 智能體補上一套可路由、可工具化的視覺能力。
它解決的核心痛點包括:
- 純文本模型無法直接看圖,又不想爲每張圖手動切模型;
- 傳統「描述橋接」把圖像壓成文字,定位、裁剪、像素對比等精細操作難以復現;
- 視覺 API 配置繁瑣,希望開箱即用、失敗能自動換後端。
與部分社區方案相比,dsh-vision-router 走的是 路由橋接:圖像輪次把原始像素交給視覺模型處理,DeepSeek 側仍負責推理與編排;默認還提供 OVHcloud 匿名視覺端點,無需註冊即可試用(有速率限制)。
核心功能與亮點¶
1. 大腦與眼睛分離¶
文本輪次不改動你選定的日常模型;只有需要看圖時,才通過內部視覺包裝路由調用視覺後端。視覺答案會按附件內容哈希緩存,後續文字輪可引用歷史圖片描述,減少重複識圖開銷。
2. 內置免費視覺鏈路¶
默認啓用 OVHcloud 匿名視覺回退鏈,無需 API Key。官方說明中,匿名額度約爲 每個 IP、每個模型 2 次/分鐘;鏈路內多個模型有獨立桶,理論合計約 10 RPM。若需更高配額,可在插件設置中配置智譜、百鍊、Intern AI 等免費視覺渠道,或申請 OVH 訪問密鑰(README 記載免費檔可達約 400 req/min)。
3. 14 個像素級視覺工具¶
默認從會話啓動即註冊完整工具 schema(progressiveTools: false),避免中途擴展工具列表影響長上下文緩存。核心工具包括:
| 工具 | 作用 |
|---|---|
vision_describe |
圖像問答、多圖對比、結構化 JSON 證據輸出 |
vision_ground / vision_detect |
按描述定位目標,返回原始像素座標 |
vision_crop |
按像素框裁剪放大 |
vision_pixel_diff |
像素級對比,輸出差異率與熱力圖 |
vision_ocr |
本地 Tesseract 優先,失敗回退視覺模型 |
vision_colors |
主色提取 |
vision_trace |
SVG 矢量化(適合圖標/Logo) |
vision_extract_foreground |
純色背景摳圖 |
vision_html_screenshot |
本地 HTML 無頭截圖 |
vision_long_screenshot_ocr |
長截圖分塊 OCR 並拼接 |
vision_present |
把生成圖發佈爲會話附件 |
vision_materialize |
把附件落到工作區路徑,供本地解析 |
vision_bootstrap |
可選的結構化首輪視覺證據採集 |
另有 vision_screenshot(桌面截屏)需顯式開啓隱私開關。整套圖像處理基於 sharp / potrace / tesseract / 系統 Chrome,不依賴 Python。
4. 可驗證的像素閉環¶
適合 UI 還原、設計稿比對等場景:參照圖 → vision_html_screenshot 生成實現 → vision_pixel_diff 量化差異 → 修復 → 再對比。README 示例中,最終差異可收斂到約 2.54%。
5. 自動降級與選擇性代理¶
視覺後端按鏈路依次嘗試:用戶配置的視覺模型 → 可選本地 Ollama / LM Studio → 自定義 HTTP 端點 → 內置匿名 OVH 回退。遇到地區限制、額度、429 限流、網絡錯誤等會分類處理並嘗試下一後端;僅視覺供應商域名可走代理,DeepSeek 保持直連。
6. 一條命令安裝¶
插件自帶 dsh.bundle.patch,通過官方 CLI 安裝即可自動接入 admission 包裝與附件限制,無需手改配置文件。
安裝與啓用¶
環境要求(來自 README):
- DeepSeek Harness Web profile
- 主機側 Node ≥ 22
- 默認免費鏈路無需 API Key;
vision_html_screenshot需要本機 Chrome/Chromium/Edge
常規 npm/npx 安裝,一條命令:
npx @deepseek-ai/dsh plugin --profile web add dsh-vision-router
若從 DeepSeek Harness 源碼倉庫用 pnpm 開發,可改用:
cd deepseek-harness
pnpm dsh plugin --profile web add dsh-vision-router
全局已安裝 dsh CLI 時,也可簡寫爲 dsh plugin --profile web add dsh-vision-router。安裝後按平常方式啓動或重載 DSH Web;若 Web 進程長期運行,建議讓其重載一次以發現新插件包。
可選驗證:
npx @deepseek-ai/dsh --profile web --dump-config | grep vision-router
注意:若 profile 裏已通過
cordis.patch.yml手動加載社區插件,不要與dsh plugin add混用,否則可能重複註冊。詳見 deepseek-harness discussion #2889。
典型用法¶
第一步:選擇日常模型,再打開「👁 Vision」¶
右下角模型選擇器仍決定你的對話/推理模型(DeepSeek、Qwen 等)。需要發圖時,在輸入框旁點擊 「👁 Vision」:
👁 Vision:視覺關閉;👁 Vision ✓:已切換到對應模型的內部視覺包裝路由。
該狀態會跨輪次保持,不會自動復位。粘貼或上傳圖片不會自動開啓視覺,發圖前務必確認顯示 👁 Vision ✓。
第二步:正常發圖,讓 Agent 調工具¶
開啓視覺後,直接粘貼或上傳圖片即可。Agent 可像普通工具輪次一樣連續調用,例如:
vision_ground image="ref.png" target="the send button"
vision_crop image="ref.png" region="1067,841,1108,881"
vision_describe paths=["ref.png","impl.png"] question="list the differences" json=true
vision_pixel_diff original="ref.png" rebuilt="screenshot.png"
vision_ocr image="screenshot.png"
第三步:按需調整視覺後端(可選)¶
大多數場景默認可用。進階配置在 設置 → 插件 → 插件配置 → 視覺路由(自動識圖):
- 視覺後端鏈:爲
vision_describe等工具指定已配置的圖像模型; - 自動創建視覺包裝:默認開啓,跟隨模型目錄熱更新;
- 本地視覺:可啓用 Ollama(如
qwen2.5vl)或 LM Studio 做離線優先識別; - 隱身模式(stealth):默認關閉;開啓後會接管官方
deepseek-official路由,需按 README 調整 profile。
本地 Ollama 示例(profile patch):
- id: vision-router
config:
localOllama:
enabled: true
baseURL: 'http://127.0.0.1:11434/v1'
model: 'qwen2.5vl'
instantDescribe: true
localDescribeStyle: 'structured'
適用場景與注意事項¶
適合誰:
- 日常用純文本 DeepSeek 模型,但偶爾需要看圖、比圖、讀截圖;
- 做前端/UI 還原,希望有像素級驗證閉環;
- 想先零配置試用視覺能力,再逐步接入自有 VLM Key 或本地 Ollama。
使用注意:
- 權限與安全:插件以當前 dsh 進程權限運行,安裝前請閱讀源碼與 MIT 許可證,確認工具(如桌面截屏、文件讀寫)符合你的安全策略。
- 免費額度:匿名 OVH 鏈路有速率上限,生產環境建議配置自有視覺後端。
- 圖像證據不可信:描述、OCR 等輸出會標註爲不可信證據,避免執行圖片內嵌指令。
- 與其他插件共存:若同時安裝
dsh-web-ui等會改寫圖片發送的插件,需關閉其「發送時改寫爲 describe-image 引用」選項,以免攔截原始圖像塊。 - 生態說明:SkillHub 與 DeepSeek Harness 插件庫 均爲獨立社區目錄,與 DeepSeek / 幻方無官方從屬關係;插件列表僅供發現與溯源,不代表官方背書。
結尾¶
如果你已經在用 DeepSeek Harness 處理代碼與文檔,卻總在「發圖」這一步卡住,dsh-vision-router 值得試一次:一條命令裝上,免費鏈路先跑起來,需要時再接入自己的視覺模型或本地 Ollama。它把「看圖」從一次性描述,變成了可組合、可度量、可重複的工具鏈。