前言¶
DeepSeek Harness (DSH) 是一个插件化的智能体开发框架。由于文本模型无法直接处理图像数据,在开发基于文本模型的 Agent 时,如果需要生成或编辑图片,通常需要跳转到外部工具。
sfyyy/dsh-generation-image 插件解决了这个问题。它为 DSH 会话提供了一个 generate_image 工具,允许 Agent 调用用户指定的 OpenAI 兼容图像 API(如 xiaoyaoapi 或本地网关),并将生成的图片持久化保存为 DSH 附件,在会话 UI 中以缩略图形式展示。
核心能力¶
该插件主要提供以下功能:
- 文本与图像生成:支持纯文本生成图片(Text-to-Image),也支持通过
referenceImageIds参数基于已有附件进行编辑(Image-to-Image)。 - 会话集成:生成的图像会自动保存为 DSH 附件,并在对话界面的右侧(助手侧)渲染为可点击的缩略图。
- 模型安全隔离:DeepSeek 文本模型在处理消息时,会将图片块重写为文本标记,确保模型不会直接接触图像数据。
- 多格式支持:支持 API 返回
b64_json格式,也支持返回远程url格式(插件会自动下载字节流)。
安装与启用¶
插件通过 npm 安装。安装后需重启 dsh web 以使 UI 生效。
# 使用 dsh CLI 安装
dsh plugin --profile web add @dsh-extension/dsh-generation-image
安装完成后,在 DSH Web 的设置中找到 “Generation Image” 选项进行配置。
配置¶
插件默认不提供凭证,需要用户自行配置 API 端点和密钥。配置优先级为:设置页面 > 环境变量 > 配置文件。
配置文件路径为 ~/.dsh/generation-image.json:
{
"enabled": true,
"baseUrl": "https://your-image-endpoint.example/v1",
"apiKey": "sk-xxxx",
"model": "gpt-image-2",
"size": "",
"quality": "auto"
}
主要配置项说明:
* baseUrl:OpenAI 兼容接口的根地址(需包含 /v1),默认为空。
* apiKey / apiKeyEnv:API 密钥,互斥,直接填入或通过环境变量覆盖。
* size:默认尺寸,留空表示不限,或设为 "auto"。
* quality:默认质量,默认为 "auto"。
环境变量覆盖支持:
* DSH_GENERATION_IMAGE_BASE_URL
* DSH_GENERATION_IMAGE_API_KEY
* DSH_GENERATION_IMAGE_MODEL
* DSH_GENERATION_IMAGE_SIZE
* DSH_GENERATION_IMAGE_QUALITY
典型用法¶
Agent 调用 generate_image 工具。该工具接收以下参数:
prompt(必需):图片描述。size(可选):尺寸限制,默认为空(不受限)。quality(可选):质量设置,默认为auto。count(可选):生成数量,限制为 1-4。如果请求数量超过 1,插件会自动将其拆分为多次n=1的请求。referenceImageIds(可选):用于/images/edits端点的图片附件 ID。
示例:
Agent 可以通过提供 referenceImageIds 来请求修改一张图片,或者不提供该参数仅进行文本生成。
注意事项¶
- BYO Credentials:插件不内置 API Key,必须自行配置。
- 会话重启:安装新插件后,务必重启
dsh web进程,UI 才会加载新的缩略图渲染逻辑。 - 环境变量覆盖:配置优先级遵循官方说明,环境变量可用于在不修改配置文件的情况下灵活切换环境。
- 生态归属:该插件属于 DSH 生态的一部分,由社区维护,目录地址为 skillhub.cn,与 DeepSeek 官方无直接隶属关系。
结语¶
dsh-generation-image 是在 DSH 中扩展多模态能力的基础组件。它通过标准的 OpenAI 兼容接口,将图像生成能力无缝集成到现有的智能体工作流中,同时通过附件机制解决了数据持久化的问题。