前言¶
在 DeepSeek Harness(DSH)里做智能体时,若要在对话中直接出图,常见做法是手写 HTTP 调用、自己处理异步任务轮询和结果落盘。不同平台的协议差异(同步 /images/generations 与任务式 ?async=true + /tasks/{id})和图生图传参方式(URL 数组 vs multipart edits)也容易踩坑。下面介绍社区插件 dsh-imagegen(维护者 say007go,GitHub say007go/dsh-imagegen):把文生图、图生图封装为 image_generate 工具,默认适配多米 API,也可按兼容表切换到标准 OpenAI 或其它任务式站点。
这是什么¶
dsh-imagegen 是 DSH 分类「模型推理」下的文生图 / 图生图插件(当前仓库版本 0.7.7,许可证 MIT)。它对接任意 OpenAI 兼容的生图接口:Base URL、API Key、模型 ID 可在插件详情页配置。文生图和使用 已有图片 URL 作参考的图生图 无需 配置对象存储;若要用 本地文件 作参考图,需配置 腾讯云 COS(先自动压缩再上传,同一张图重复用不会二次上传)。还支持可开关的提示词后缀,以及表单里的默认分辨率等预设。
插件以当前 DSH 进程权限运行;安装前建议自行查看源码与许可证。社区目录页:skillhub.cn/plugins/say007go/dsh-imagegen(独立社区站点,与 DeepSeek / 幻方无官方从属关系)。
核心功能¶
文生图与图生图¶
- 文生图:自然语言描述 → 生成图片,返回本地副本路径与原图链接。
- 图生图:参考图可为 URL(透传)、本地路径(相对路径按会话工作目录解析,绝对路径亦可)、或对话附件 ID(形如
sha256:…)。本地路径场景走 COS 托管供上游读取;edits-multipart模式下参考图以文件字节直传,可不经过 COS(见兼容表)。 - 断点续等:生成超时或被中断时,可凭 任务 ID 继续等待同一张图,不重复提交、不重复计费。
- 提交前确认:真正生成前通过
ask_user_question确认提示词全文、尺寸/模型、参考图来源和可选save_path;选「确认生成」才执行。确认走会话,不经过 DSH 审批,因此approval: never的会话也能用。 - 交付方式:结果含
local_path;默认保存到会话目录images/,指定save_path时若文件已存在会报错以免覆盖。回复用本地链接/文件卡片,不内联 4K markdown 图片。
工具描述里还约定:一次只出一张、等待期间不重复提交、超时不重开新任务。
协议与站点兼容¶
换 API 站时除 Base URL / Key / 模型外,还需核对 协议、图生图模式 和模型支持的尺寸:
| 站点类型 | protocol | 图生图模式 | 备注 |
|---|---|---|---|
| duomi / 任务式 | auto 或 async-task |
image-array |
默认;首查约 30s |
| 标准 OpenAI 同步 | openai-sync |
edits-multipart |
单次长请求,不轮询 |
| 其它任务式 | async-task + taskPath |
按站点 | 默认 taskPath 为 /tasks/{id} |
auto 会优先按 duomi 探测;标准 OpenAI 同步站建议强制 openai-sync,避免先发 ?async=true 被慢同步站拖到超时。探测结果按站点缓存。
提示词后缀与尺寸¶
- 可在设置中启用一段 后缀文本,每次生图请求自动追加(不出现在 Agent 填写的 prompt 参数里);单次可传
enhance: false跳过。 - 表单 默认分辨率 作兜底(默认 4K);单次可临时指定尺寸。结果里
size为请求尺寸,actual_size为读图头得到的实际尺寸。
配置与安全¶
详情页表单修改即时生效。API Key、COS 的 SecretId / SecretKey 为 只写输入,界面仅显示「已设置 / 未设置」,不在对话中回显。COS 与数据万象为腾讯云付费服务,使用前请查阅官方计费说明。
安装与启用¶
方式一:DSH 界面(推荐)¶
- 打开 DSH 左侧栏 插件 → 右上角 添加插件。
- 输入仓库地址:
https://github.com/say007go/dsh-imagegen
- 按网络情况选择安装源,点击 安装,启用 dsh-imagegen 后 重启 DSH。
方式二:命令行¶
将 <你的profile名> 换成实际 profile:
dsh plugin --profile <你的profile名> add github:say007go/dsh-imagegen
安装完成后同样需要 重启 DSH。运行环境要求 Node >= 18.0.0(见 package.json 的 engines)。
配置项概览¶
重启后进入 插件 → dsh-imagegen 详情页 填写:
| 分组 | 字段 | 说明 |
|---|---|---|
| 生图接口 | Base URL | 默认可用多米 API,可更换平台 |
| API Key | 生图接口密钥 | |
| Model | 默认 gpt-image-2.5-flare,可改其它模型 ID |
|
| 默认分辨率 | 默认 4K | |
| 兼容性(高级) | 协议 / 图生图模式 | 默认 auto / image-array |
| 腾讯云 COS | 启用 / Region / Bucket / SecretId / SecretKey | 仅本地参考图场景需要 |
| 提示词后缀 | 启用 / 后缀文本 | 启用后每次提交自动追加 |
不确定时保持默认(多米 API)。taskPath 与轮询等高级项的代码默认值如需改动,可编辑安装包内的 cordis.patch.yml(见 README)。
典型用法¶
重启后在对话中直接说明意图即可,例如:
- 「生成一张雨后的上海外滩夜景」—— 文生图。
- 「参考这张图的风格,画一张同系列的……」(附上图片)—— 图生图。
- 「生成 1024x1024 的方形图标」—— 临时指定尺寸。
- 「生成一张封面图并存到 artifacts/cover.png」—— 指定保存路径。
续等已有任务时只需提供 task_id,属于查询,不再弹确认卡片。
适用场景与注意¶
适合需要在 DSH Agent 对话里 统一出图流程、又不想每次手写协议适配的开发者。默认面向 duomi 类任务式接口;接标准 OpenAI 或其它异步站时务必改 protocol / 图生图模式,并确认模型尺寸支持。
本地参考图依赖可选依赖 sharp 做压缩(不可用时保留原图并按实际类型标记);COS 建议使用子账号最小权限密钥。插件逻辑与密钥处理以仓库 README 与源码为准,安装前请自行审阅。
结尾¶
dsh-imagegen 把 OpenAI 风格生图、异步续等、图生图多来源与提交前确认收进一个 DSH 工具,配置集中在详情页,文生图与 URL 参考图可零 COS 起步。更多信息见 GitHub 仓库 与 SkillHub 目录页。