DeepSeek Harness 默认仅允许声明了图片输入模态(inputModalities)的模型接收图片。纯文本模型(如 deepseek-*、glm-*)在会话中粘贴截图通常会失败或报错。现有的解决方案往往需要切换模型、使用第三方代理或硬编码密钥。
dsh-autovision 插件在 DSH Web UI 中为纯文本模型引入了原生视觉能力。它会在运行时为每个纯文本模型注册一个透明的“双胞胎提供者”(Twin Provider),将图片请求路由到你配置的多模态模型,并将转录后的文本注入回上下文。用户无需切换模型或修改 settings.yaml,即可让文本模型“看到”图片。
核心功能¶
- 零摩擦、透明注册与自动路由:插件在运行时为纯文本模型注册
<provider>-autovision双胞胎提供者。agent/request会自动将请求重定向到该双胞胎,无需手动切换模型或编辑配置。 - 粘贴即转文本:在文本模型的编辑器中粘贴图片并发送,系统会自动调用配置的多模态模型进行转录,生成文本后发送给文本模型。原始图片在 UI 中保持可见,日志也会保留原图。
- Agent 可调用工具:插件向模型暴露了
autovision_read_image工具。在会话中,模型可以主动调用此工具读取本地文件(需提供路径和指令),并基于结果进行后续操作。 - 无内置凭证:插件本身不存储任何 API Key,也不涉及中转代理。它仅调用你在 DSH 设置页面中配置好的默认视觉模型(如
minimax-m3、opencode-go)。 - 配置持久化:作为纯插件实现,它不修改 DSH 核心代码,
dsh upgrade操作不会破坏插件功能。
安装与启用¶
确保你的 DSH Web 版本不低于 0.1.0-rc.6。执行以下命令添加插件:
dsh plugin --profile web add @iroam2375/dsh-autovision
安装后,重启 dsh web,进入 设置 -> 插件 -> Autovision 页面。你需要选择一个 默认视觉模型,该模型负责进行图片转文字的转录工作。
典型用法¶
- 直接粘贴图片:在任意文本模型的会话中,将图片粘贴到编辑器并发送。文本模型会收到一张忠实转录的文本,而不是原始图片。
- 通过工具读取文件:在对话中指示模型读取特定文件。模型可以调用
autovision_read_image工具,传入文件路径和自定义指令(如“逐字转录”),并基于结果进行后续操作。
适用场景与注意¶
此插件适合需要在 DSH 环境下使用纯文本模型处理图片信息的场景。由于插件以当前 DSH 进程的权限运行,建议在安装前检查源码与许可证。
需要注意以下限制:
* 新会话首图跳过:如果会话的第一条消息已经包含图片,该图片会被静默跳过。解决方案是在发送第一条图片消息前先发送一条纯文本消息。
* 文件大小限制:支持上传的图片最大为 5 MB。
* 转录延迟:转录耗时取决于所选视觉模型的性能(例如 minimax-m3 可能需要 6-9 秒),插件引入了 LRU 缓存以缓解延迟。
* UI 显示:在设置页面中,可能会看到一个没有地址的裸提供者行(如 opencode-go-autovision),这仅是视觉上的显示瑕疵,不影响实际功能。
总结¶
dsh-autovision 提供了一种在 DeepSeek Harness 中为纯文本模型注入视觉能力的轻量级方案。它不改变核心配置,不泄露密钥,且支持 Agent 调用。通过简单的配置,你可以让文本模型直接处理图片内容。