@dsh-external/dsh-image-vision
Eyes for text-only DeepSeek: view_image tool (any OpenAI-compatible VLM, local Ollama or cloud) + chat image-attachment bridge that rewrites pasted/dropped images into view_image path markers
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:xsoc1/dsh-image-vision说明文档
阅读完整 README ↗dsh-image-vision
给纯文本的 DeepSeek 加上眼睛:聊天里传图 + 识图,一个插件搞定。
view_image工具:模型带着问题调用它(OCR、数数、读图表、看 UI 布局……任意视觉问题),插件把图片和问题转发给任意 OpenAI 兼容的 VLM 端点(本地 Ollama / 智谱 / DashScope / 豆包……),答案以文本返回。- 图片附件桥:在聊天对话框拖拽或粘贴图片即可发送——dsh web 输入框原生接收图片附件,本插件在模型请求前把附件改写为
[用户上传的图片:]标记,并引导模型调用view_image查看,纯文本模型因此"看见"你上传的图。
用户: (拖一张截图进对话框)帮我看看这个报错
模型 → view_image(source="…vision-bridge/xxx.png", question="这个报错的完整文本是什么?")
← "TypeError: Cannot read properties of undefined (reading 'map') at …"
模型: 这是一个 … 建议 …
安装
dsh plugin --profile web add dsh-image-vision
或经 dsh-market 插件市场安装。
注意:host 在消息提交时会校验当前模型的
inputModalities声明。纯文本模型(如 deepseek-v4-flash 经网关路由)需要在 profile 的settings.yaml里把该模型声明为支持图片输入,否则带图消息在提交时就被拒绝:
llm-pi-ai:
providers:
opencode-go:
apiKeyEnv: OPENCODE_GO_API_KEY
modelOverrides:
deepseek-v4-flash:
input: ['text', 'image']
(网关模型目录里本就直接声明 image 能力的模型无需此步。)
后端选择
一套配置(baseURL + apiKey + model)覆盖所有后端:
| 场景 | baseURL | model | 说明 |
|---|---|---|---|
| 默认(免费) | https://open.bigmodel.cn/api/paas/v4 | glm-4.6v-flash | 智谱免费视觉模型,零成本开箱;高峰限流自动降级 |
| 本地 Ollama | http://localhost:11434/v1 | qwen3-vl:4b | 离线、无 key;小模型对穷举任务较慢,建议 maxTokens: 4096 + timeoutMs: 300000 |
| DashScope | https://dashscope.aliyuncs.com/compatible-mode/v1 | qwen3-vl-flash | 百炼 VL 线,高精度 OCR |
| 火山豆包 | https://ark.cn-beijing.volces.com/api/v3 |