dsh-yali-image-generator
pptt121212/dsh-yali-image-generator
DeepSeek-Harness 图像生成插件。申请 Yali AI API Key:https://api.yaliai.com/
安装
dsh plugin --profile web add github:pptt121212/dsh-yali-image-generatorREADME
DeepSeek-Harness 图像生成插件
dsh-yali-image-generator 是一个可独立安装的 DeepSeek Harness Bundle,为 Agent 提供 generate_image 图像生成工具,并通过 Yali AI 异步图像网关调用模型。
包名和 Harness 模块名使用官方示例一致的 dsh- 前缀;面向用户的插件名称和工具说明统一为“DeepSeek-Harness 图像生成插件”。
官方规范符合性
本插件遵循 DeepSeek Harness 的 docs/user/develop/basic 与 docs/cookbook/adding-a-tool.md:
- 这是 Bundle,不是 Profile;
package.json通过dsh.bundle.patch声明安装补丁。 - 插件导出
name、inject = ['tools', 'credentials']、SchemasteryConfig和apply(ctx, config)。 - 工具通过
ctx.tools.register(defineTool(...))注册;执行结果是由output.schema定义的规范 JSON,模型可见文本由output.render单独渲染。 - 接口地址、密钥环境变量、模型默认值、输出位置、超时和轮询参数均为可配置项;配置或凭据错误会明确失败。
完整逐条审计见 COMPLIANCE.md。
支持的模型与接口
| 模型 | 接口 | 规格 | 说明 |
|---|---|---|---|
gemini-3.1-flash-image-preview | POST /v1beta/models/{model}:generateContent | 1K、2K、4K | 支持完整 Gemini 宽高比;使用 contents、responseModalities: ["IMAGE"] 与 imageConfig。 |
gemini-3-pro-image-preview | 同 Gemini 原生接口 | 1K、2K、4K | 默认的第二阶段超分模型。 |
gpt-image-2 | POST /v1/images/generations 或 /v1/images/edits | 1K、2K、4K | 根据宽高比映射为像素 size,发送 quality、n: 1、output_format 和 async: true。 |
grok-imagine-image-quality | OpenAI 兼容 generations/edits 接口 | 1K、2K | 使用 resolution 与 aspect_ratio,不会发送 quality 或 size。 |
agnes-image-2.1-flash | POST /v1/images/generations | 1K、2K、3K、4K | 使用 size、ratio;参考图写入 extra_body.image,不会发送 quality。 |
Gemini 的本地参考图使用 inlineData,URL 参考图使用 fileData。GPT 的本地参考图采用 multipart image,URL 参考图采用 JSON image。所有模型均使用异步任务:提交请求、校验 202 和 task_id、轮询 query_path,再下载或解码首个图像结果。
安装
npm 安装
发布到 npm 后,用户可直接安装:
dsh plugin --profile web add dsh-yali-image-generator
dsh web --dump-config
dsh web
GitHub 安装
公开 GitHub 仓库发布后,也可以直接从 Git 安装:
dsh plugin --profile web add github:pptt121212/dsh-yali-image-generator
dsh web
GitHub 仓库与 npm 包均使用 dsh-yali-image-generator。
自定义或无界面 Profile 使用相同方式:
dsh plugin --profile my-profile add dsh-yali-image-generator
dsh --profile my-profile --dump-config
dsh --profile my-profile
本包直接发布 ESM 运行时文件,不需要构建步骤或 prepare 脚本。
配置密钥
请先在 Yali AI 申请 API Key。
在 Harness 的凭据设置中保存所选模型系列对应的密钥,凭据引用名称如下:
$env:YALI_GEMINI_API_KEY = "..."
$env:YALI_GPT_API_KEY = "..."
$env:YALI_GROK_API_KEY = "..."
$env:YALI_AGNES_API_KEY = "..."
也可以在启动 Harness 的环境中设置同名变量。插件会在每次生成时通过 Harness 凭据服务解析密钥,因此在设置页保存或更新密钥后无需重装插件。默认接口地址为 https://api.yaliai.com。密钥引用名称、接口地址、默认模型、规格、质量、超分参数、输出目录和异步超时均可通过安装后的 Profile 配置修改。
使用方式
在 DeepSeek Harness 中直接让 Agent 调用 generate_image,例如:
请使用 generate_image 生成一张 16:9、4K 的电影感夜间图书馆,暖色台灯照亮书桌。
常用参数:prompt(必填)、model、aspect_ratio、image_size、quality、reference_image_paths、reference_image_urls、output_name。generation_mode: "upscale" 会先生成基础图像,再由 upscale_model 完成第二阶段超分。默认输出目录为 ./generated/yali-images。