ModLens 怎么用?让 DeepSeek Harness 纯文本模型看懂图片
ModLens 是 DeepSeek Harness 的首个视觉插件,给纯文本模型装上「眼睛」:把图片直接粘贴进聊天,模型就能通过原生 modlens_read_image 工具读出内容,输出结构化 JSON 证据。
ModLens 由 liustack 维护,采用 MIT 协议,面向 DeepSeek Harness(DSH)里只支持纯文本的模型(如 DeepSeek、GLM)。这些模型本身无法读取图片,ModLens 通过原生工具把图片转成 OCR、版面、语义三类结构化信息,再交给模型理解。
ModLens 解决了什么问题?
纯文本模型没有视觉能力,读到图片时要么报错、要么直接忽略。传统做法是先把图片存成文件、再把路径传给模型,但纯文本模型拿到路径也没法「看」。
ModLens 把这一步简化成「粘贴即读」:图片粘贴进聊天后,由原生 modlens_read_image 工具转换成结构化 JSON 证据,包含 OCR 文字、版面结构和语义信息,模型据此理解图像内容(来源)。
ModLens 怎么安装?
安装只有一条命令,使用 DSH 的插件管理功能:
dsh plugin --profile web add github:liustack/modlens
更新时再次运行同一条命令即可。安装命令显式指定版本号而非 @latest,是为了规避 pnpm 11 对「发布不足 24 小时版本」的延迟。
两种粘贴方式怎么选?
ModLens 支持两种方式,按需选择:
- 直接粘贴:图片作为临时文件,文件路径进入编辑器,适合需要把图片当附件处理的场景。
- 选择
(modlens vision)模型条目:缩略图保留在消息里,请求时再转成结构化证据,适合想在对话里持续看到图片的场景。
两种方式都会触发 modlens_read_image,区别只在图片的呈现与转换时机。
ModLens 自动包装哪些模型路由?
ModLens 会自动发现所有携带纯文本 DeepSeek 或 GLM 模型的提供商路由,为每条路由追加一个包装条目(如 DeepSeek-V4-Flash (modlens vision)),并记住你的选择。
它只接管元数据确认是纯文本的模型,视觉模型会被自动排除,未确认的保持原样,因此视觉模型的原生粘贴体验不受影响。
配置文档与输出契约在哪里?
ModLens 提供三类文档,方便定制与排查:
- 配置:
skills/modlens/references/configure.md - 输出契约:
docs/output-schema.md(定义 OCR、版面、语义字段) - 安全:
docs/security.md(说明图片处理的安全措施)
注意事项与局限
- ModLens 基于 TypeScript 开发,需要 Node.js 环境。
- 它面向纯文本模型,视觉模型无需也不应使用 ModLens。
- 遇到问题优先到 GitHub Issues 反馈;作者 liustack 在 X(Twitter)同步发布动态。
- 配套的 ModSearch 网页工具提供额外的视觉搜索能力,可作为补充。
更多 DSH 插件见 插件中心。
常见问题
ModLens 的安装命令显式指定版本号而非 @latest,因为 pnpm 11 会延迟发布不足 24 小时的版本,@latest 可能解析到旧版本。更新时再次运行相同命令即可。
直接粘贴时图片作为临时文件、路径进入编辑器;选择 (modlens vision) 条目时缩略图保留在消息中、请求时才转换。两者都会触发 modlens_read_image,区别在呈现与转换时机。
不会。ModLens 只接管元数据确认是纯文本的 DeepSeek 或 GLM 模型路由,视觉模型会被自动排除,未确认的保持原样,原生粘贴体验不受影响。
来源
- liustack/modlens GitHub 仓库· GitHub