dsh-vision-plugin:为 DSH 增加图片理解能力

前言

DeepSeek Harness(DSH)在接入纯文本模型时,常见一个限制:DeepSeek 等文本模型不能直接处理图片。用户在 Web UI 中粘贴或上传图片后,可能遇到“当前模型不支持图片”的提示,或者需要先外部生成图片描述,再手工把文字贴回会话。

dsh-vision-plugin 是为 DSH 编写的插件,用于让纯文本模型通过 OpenRouter 的 :free 多模态模型获得图片理解能力。它可以在发送前把图片转成文字描述,再交给当前模型处理。使用 OpenRouter 免费视觉模型时,不产生 API 调用成本。

这是什么

  • 插件名称:Agents365-ai/dsh-vision-plugin
  • 维护者:Agents365-ai
  • 许可证:MIT
  • GitHub:https://github.com/Agents365-ai/dsh-vision-plugin
  • 作用:为 DSH 添加图片理解能力,使纯文本模型(如 DeepSeek)也能基于图片内容回答。

核心能力

  1. 提供 describe_image 工具:读取磁盘上的图片文件,调用 OpenRouter 视觉模型返回文字描述。
  2. 自动图片处理:粘贴或上传的图片会原样显示在聊天界面;当前模型不支持图片时,llm/stream 钩子会在发送前调用 OpenRouter 视觉模型,把图片转成文字描述交给当前模型。
  3. 首次启动时自动在 $DSH_HOME/settings.yaml 写入默认的 deepseek-vision provider,指向 OpenRouter。该配置可随时修改或删除。
  4. 使用 OpenRouter 的 :free 多模态模型,零 API 成本。

安装前准备

插件只从环境变量读取 OpenRouter API Key。未设置时,插件会直接报错并提示配置。

在启动 DSH 前设置:

export OPENROUTER_API_KEY=your_openrouter_api_key

安装方式

bundle 安装

先添加插件到 web profile,再启动 DSH:

dsh plugin --profile web add https://github.com/Agents365-ai/dsh-vision-plugin
dsh web

如果安装时出现:

ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED

说明拉到了旧版本(带 prepare 构建脚本)。更新到最新版本即可。

–patch 安装

从插件目录安装依赖,并用 --patch 启动:

cd dsh-vision-plugin
npm install
dsh web --patch ./cordis.yml

注意:cordis.yml 里的插件路径是绝对路径,clone 后需要改成你自己本机的路径。

使用

安装后,在 Web UI 的模型选择器里选择 deepseek-vision provider 下的 DeepSeek 模型。

插件首次启动会自动写入默认 provider 配置,无需手动创建。如需额外指定其他模型路径,可设置:

export AUTO_VISION_FORCE_MODELS=provider/other-alias-model

然后再次启动 DSH。

配置注意

官方 deepseek provider 是纯文本的,不要给它声明图片输入(modelOverrides)。图片理解应通过 deepseek-vision 这类指向 OpenRouter 的 provider 完成。

卸载

bundle 安装可使用:

dsh plugin --profile web remove dsh-vision-plugin

--patch 安装无需执行卸载命令,去掉启动参数 --patch ./cordis.yml 即可。

如果希望清理自动写入的配置,可删除 $DSH_HOME/settings.yaml 中的 deepseek-vision provider 配置。

已知限制

  • 会话里已有图片时,切换到不支持图片的模型会被 Harness 拒绝,错误为 model-unavailable。需要切换时请开新会话。
  • 当前 prompt 含图片时,工具会被剥掉。“看图 + 同时用工具”需要分两步:先问图片,再让模型用工具。
  • 免费视觉模型偶尔返回安全判定或过短描述,插件会自动换下一个模型重试。

适用场景与安全检查

这个插件适合在 DSH 中使用纯文本模型,又希望读取图片内容的场景。

安装前建议先查看仓库源码和 MIT 许可证。插件以当前 dsh 进程权限运行,并能读取图片文件、调用外部模型接口,因此应确保你信任源码,并且只在本机允许使用 OpenRouter API Key 的环境中启用。

链接

  • GitHub:https://github.com/Agents365-ai/dsh-vision-plugin
  • 许可证:MIT
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜