dsh-image-describer:让 DeepSeek Harness 中的纯文本模型具备视觉理解能力

DeepSeek Harness (DSH) 是一个插件化系统。纯文本大模型(如 DeepSeek V4 系列)无法直接处理图片输入,导致在处理包含图表、文档截图或界面截图的任务时需要额外的人工辅助。dsh-image-describer 插件通过拦截 DSH 的消息流,将图片内容转写为结构化文本,从而赋予纯文本模型“看图”的能力。

核心功能

该插件提供以下能力:

  • 双模视觉交互:支持聊天框直接粘贴/拖拽图片(附件模式)和对话中主动调用工具(Tool 模式)。
  • 自动转写与 OCR:能够自动提取图片中的文字内容(OCR)与版面结构,生成结构化上下文。
  • 工具调用支持:模型可在对话中主动触发 describe_image 工具,针对本地图片路径进行定向分析。
  • 上下文优化:将图片输入转换为明确的系统提示词,避免纯文本模型因接收二进制数据而崩溃。

安装

在插件所在目录下执行以下命令,将其添加到 Web Profile:

npx @deepseek-ai/dsh plugin --profile web add ./dsh-image-describer

安装完成后,启动 DeepSeek Harness Web 服务:

dsh web --profile web

使用方法

插件支持两种互补的视觉交互场景。

场景一:聊天框粘贴图片(附件模式)

在 Web UI 聊天输入框中直接使用 Ctrl + V 粘贴屏幕截图,或将图片文件拖入输入框发送。

  • 图片会作为 ImageBlock 附加在用户消息中。
  • 插件拦截该请求,调用配置的多模态视觉模型(默认 MiniMax-M3)进行 OCR 和内容识别。
  • 插件将图片内容替换为包含识别结果的系统提示词。
  • 纯文本模型直接基于识别到的文字内容回答,无需执行额外的文件搜索或工具调用。

场景二:对话中提及文件路径(Tool 模式)

在对话中提及本地图片路径,模型会主动调用 describe_image 工具进行分析。

  • 用户示例:Analyze the microservice architecture in assets/architecture.png.
  • 用户示例:What is the error code in the bottom-left corner of Screenshot.png?
  • 模型触发工具后,工具读取本地文件并调用视觉模型分析,将结果返回给模型进行最终回答。

配置说明

要使用该插件,需完成两步配置。

1. 开启文本模型的图片输入通道

DSH 的 Web UI 和 API 网关会检查模型是否声明了 image 模态。需要在 ~/.dsh/settings.yaml 中为对应的文本模型添加声明:

llm-pi-ai:
  providers:
    minimax-cn:
      apiKeyEnv: MINIMAX_CN_API_KEY
    opencode-go:
      apiKeyEnv: OPENCODE_GO_API_KEY
      modelOverrides:
        deepseek-v4-flash:
          input: [text, image]
        deepseek-v4-pro:
          input: [text, image]

2. 插件配置

在 Profile 的 cordis.patch.yml 中配置插件参数:

- insert:
    - id: image-describer-tool
      name: dsh-image-describer
      inject: [tools, llm, attachments]
      config:
        provider: minimax-cn       # 多模态模型提供者路由
        model: MiniMax-M3          # 视觉模型 ID
        maxTokens: 2048            # 单次分析最大输出 tokens
        timeoutMs: 60000           # 分析超时时间(毫秒)

注意事项

  • 前置依赖:必须在 settings.yaml 中正确配置多模态视觉模型(默认 MiniMax-M3)及其 API Key,否则插件无法工作。
  • 模型声明:必须为文本模型声明 input: [text, image],否则无法启用图片输入功能。
  • 性能限制:单次分析最大输出 tokens 限制为 2048,超时时间设置为 60000 毫秒。
羽毛球分组比赛记分
小程序二维码

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

小夜