dsh-tool-vision:DeepSeek Harness 的 DashScope 图像描述工具

在 DeepSeek Harness (DSH) 的生态中,模型推理往往以文本为主。要在 Agent 预设中引入视觉能力,通常需要处理图片上传与安全策略的冲突。dsh-tool-vision 插件通过模型端工具 image_describe 解决了这个问题,它调用 DashScope 的 OpenAI 兼容接口,让模型能够直接描述本地图片,同时提供粘贴桥接功能,将粘贴的图片转换为路径文本,避免触发宿主机的图片准入限制。

1. 这是什么

这是一个 DSH 插件,由 wanshichenguang 维护,开源协议为 MIT。它是一个模型面向的图像描述工具,利用 DashScope OpenAI 兼容 API(默认 qwen3.7-flash 模型)读取本地图片并生成描述,同时提供粘贴桥接功能,将粘贴的图片转换为路径文本,避免触发宿主机的图片准入限制。

2. 安装与启用

安装该插件需要使用 DSH 的插件命令。在 Web 预设下执行以下命令即可完成安装:

dsh plugin --profile web add dsh-tool-vision

安装完成后,需要重启 dsh web 进程。工具注册为 image_describe,出现在模型的工具目录中。

3. 核心功能

  • image_describe 工具:这是核心功能。调用方式为 image_describe(path, prompt)。path 为图片路径(支持绝对路径或相对工作区路径),prompt 为可选的描述指令。如果不提供 prompt,将使用默认指令对图片进行详细描述。
  • 粘贴图片桥接:在 Web 界面,如果会话的模型被确认是文本-only 模型,粘贴或拖拽图片时会将图片上传至插件的宿主路由,释放草稿,并在提示词中追加 [image: <path>] 文本。这样既绕过了宿主机的图片准入检查,又让模型能通过工具读取文件。对于具备视觉能力或未确认的模型,图片会保持原生内联。
  • 配置化 API Key:插件本身不携带任何凭证,需要开发者自行配置。支持通过环境变量或配置文件指定。

4. 配置与用法

插件依赖 DashScope API,必须配置 Key。

设置环境变量:

DASHSCOPE_API_KEY=sk-xxxx

通过配置文件指定:
在 cordis.patch.yml 中添加配置:

- id: tool-vision
  name: 'dsh-tool-vision'
  config:
    apiKey: sk-xxxx

工具调用示例:
模型在生成回复时,如果需要分析图片,会调用该工具。例如,模型可能会发出如下调用请求:

{
  "tool_calls": [{
    "function": {
      "name": "image_describe",
      "arguments": "{\"path\": \"/workspace/image.png\", \"prompt\": \"这是什么?\"}"
    }
  }]
}

关键配置项:
* baseUrl:DashScope OpenAI 兼容端点,默认为 https://dashscope.aliyuncs.com/compatible-mode/v1。
* model:使用的视觉模型,默认为 qwen3.7-flash。
* defaultPrompt:未提供 prompt 时的默认指令。
* maxImageBytes:单张图片大小限制,默认为 20MB。

5. 注意事项

  • 凭证安全:插件包内不包含任何凭证,Key 仅存在于你的环境变量或配置文件中。
  • HTTP 行为:HTTP 客户端设置了 redirect: 'error',配置的端点必须直接接收凭证,防止重定向导致 Key 泄露。
  • API 限制:目前仅支持 DashScope OpenAI 兼容端点。
  • 权限策略:工具执行时不请求 ctx.approval。如果部署环境需要确认机制,必须在部署时额外配置 tools/pre-execute 策略。

dsh-tool-vision 为 DSH 用户在文本模型中增加视觉能力提供了一条低侵入的路径。通过模型端工具的方式,它将图片分析与提示词生成解耦,适合需要在对话流中处理本地视觉上下文的场景。

插件目录:catalog_url
源码地址:github_url

羽毛球分组比赛记分
小程序二维码

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

小夜