DeepSeek Harness Hub
← 返回列表

视觉副驾wjling/dsh-vision-assist

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

为纯文本模型接入多模态识别,粘贴图片即可读图

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/2 · 已提供中文文档

dsh视觉助手,辅助没有多模态的主模型识别图片内容

综合分
28.5
GitHub 分
28.5
用户评分
★ Stars
0
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add wjling/dsh-vision-assist
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery@deepseek-ai/dsh-llm@deepseek-ai/dsh-settings@deepseek-ai/dsh-tools
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-vision-assist

为 DeepSeek Harness(DSH)中的纯文本模型提供视觉能力。 给一个无法
看到图像的模型配一个可插拔的多模态“视觉副驾”:粘贴一张图片,识别工作就
交给一个可配置的 VLM,这样对话就永远不会触发
model does not support image input 拒绝。

🇨🇳 中文:给没有视觉能力的主模型配一个可随时切换的多模态识别模型,输入框图片开箱即用。

dsh-plugin license node

当路由到的模型无法接受图像时,此插件会在
LLM 调用边界拦截请求,并将图像块改写为“本地附件路径 + 调用 vision_recognize”的文本提示。消息正文和 UI 历史保留原始
图像;只有发送给无视觉能力模型的请求会被改写。实际的
识别由你在设置中选择的多模态模型完成。

install from this repo
dsh plugin --profile web add github:wjling/dsh-vision-assist
restart DSH to activate

local development
git clone https://github.com/wjling/dsh-vision-assist
cd dsh-vision-assist
pnpm install
pnpm run build:client   # rebuild lib/client.js after editing src/client.js

功能

1. vision_recognize 工具(host 级注册,任意会话可用):用选定多模态模型识别本地图片,
支持三档精细度 coarse / default / fine,可附加自定义 prompt。
2. 模型调用边界图片降级:当会话路由模型无视觉输入时,发往该模型的请求在
llm.streamWithRegistration 边界被克隆改写(图片块 → 附件仓路径 + vision_recognize
指引);能看图的模型不受任何干预。GUI 气泡与会话历史始终保留原图。
3. 热更新配置 + 设置页 UI:识别模型可在 DSH 设置 → 插件(可配置标签页)的
"视觉助手 vision-assist" 卡片里直接改,或改 settings 的 vision-assist 命名空间,均即时生效。

安装

dsh plugin --profile web add github:wjling/dsh-vision-assist
重启 DSH 生效

宿主共享包 @deepseek-ai/dsh-llm / dsh-settings / dsh-tools 按
peerDependencies 声明(运行时由 DSH 宿主提供,不遮蔽宿主版本);
开发环境通过 devDependencies 安装同名版本用于本地解析。schemastery
是唯一常规依赖。client 段构建产物为 lib/client.js(esbuild CJS 工厂,
react 由宿主模块系统外部提供)。

配置

方式一:DSH 设置页(推荐)——设置 → 插件 → 可配置标签页 → "视觉助手 vision-assist" 卡片:

- 启用识别接管(总开关)
- 识别模型 provider(如 codemaker)
- 识别模型 model(如 gemini-3.7-flash)
- 识别超时(毫秒,1000–600000)

方式二:settings.yaml(热更新,两种方式写的是同一份配置):

vision-assist:
enabled: true          # 总开关,false 时工具与图片改写都停用
provider: codemaker    # 识别模型所在 provider(需在 llm-pi-ai 中配置)
model: gemini-3.7-flash  # 识别模型 id
timeoutMs: 120000      # 单次识别超时(毫秒)

要求:选定的模型在 llm-pi-ai.providers..models 中声明了
input: [text, image](未声明的模型会被 DSH 视为纯文本而拒绝图片)。

工作原理

输入框贴图发送
│  api-proxy 模态预检(resolveModelInfo 声明图片能力)→ 消息正常进入会话
▼
GUI 气泡显示原图,会话历史保留图片
│  主模型回合发起 llm 调用(llm.stream / preparedCall.stream)
▼
包裹 streamWithRegistration:路由到无视觉 pi-ai 模型?
├─ 否 → 原样放行
└─ 是 → 克隆请求,图片块(含 tool-result 嵌套)替换为
"附件仓路径 + 调用 vision_recognize" 的文本指引
▼
主模型正常接单 → 调用 vision_recognize(path=..., mediaType=...)
▼
ctx.llm.stream 直连选定多模态模型 → 返回识别文本 → 继续任务

兼容性

- 开发/测试环境:DSH 0.1.0-rc.8,Node ≥ 20
- 插件全部逻辑在用户空间(~/.dsh + 插件包本体),更新 DSH 后无需任何重装或补丁
- host + client 双段:client 段仅注册设置卡片(settings.plugin.item 插槽),
改动 src/client.js 后需执行 npm run build:client 重建

FAQ

- 图片会不会丢? 不会。原图始终保存在 ~/.dsh/attachments/v1/objects/(内容寻址),
界面与会话历史保留图片,只有"发往无视觉模型的那次请求"里被替换为识别指引。
- 怎么换识别模型? 设置 → 插件 → "视觉助手 vision-assist" 卡片里改 provider/model,
或改 settings 的 vision-assist.provider/model,立即生效。
- 识别模型报 "does not support image input"? 该模型在 llm-pi-ai 里没声明
input: [text, image],补上声明后重试。
- 会话切成视觉模型后图片没有改写,正常吗? 正常——插件只干预无视觉的模型。

Roadmap

- [x] client 设置 UI(在 Web 设置页直接选识别模型)
- [ ] 多图并行识别
- [ ] 识别结果缓存(同 attachmentId 不重复调模型)

License

MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群