关于 9router-image
9router-image 是通过已配置的 9Router 网关生成图像的技能,可使用不同提供方的模型和选项,并以 URL、Base64 数据或二进制图像字节返回结果。
主要功能
- 01发现图像模型及选项
- 02根据提示词生成图像
- 03支持 URL、Base64 或二进制响应
- 04提供方专属生成参数
- 05支持提供方的图像输入
适用场景
- 01根据文本提示词生成图像
- 02将生成结果保存为图像文件
- 03使用支持的图像输入进行编辑或参考
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ decolua/ 9router --skill 9router-image安装后在 Claude Code 中输入/9router-image确认已加载。
详细介绍
9Router — 图像生成
需要设置 NINEROUTER_URL(若启用了鉴权,还需设置 NINEROUTER_KEY)。配置方法请参阅 https://raw.githubusercontent.com/decolua/9router/refs/heads/master/skills/9router/SKILL.md。
发现
curl $NINEROUTER_URL/v1/models/image | jq '.data[].id'
# Per-model params/options (size enum, quality enum, capabilities like edit)
curl "$NINEROUTER_URL/v1/models/info?id=openai/dall-e-3"
端点
POST $NINEROUTER_URL/v1/images/generations
| 字段 | 是否必填 | 说明 |
|---|---|---|
model | 是 | 来自 /v1/models/image |
prompt | 是 | 图像描述 |
n | 否 | 数量(取决于提供方) |
size | 否 | 1024x1024、1792x1024、... |
quality | 否 | standard / hd(OpenAI) |
response_format | 否 | url(默认)或 b64_json |
添加查询参数 ?response_format=binary 可接收原始图像字节(便于保存为文件)。
示例
保存为文件(二进制):
curl -X POST "$NINEROUTER_URL/v1/images/generations?response_format=binary" \
-H "Authorization: Bearer $NINEROUTER_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gemini/gemini-3-pro-image-preview","prompt":"watercolor mountains at sunrise","size":"1024x1024"}' \
--output out.png
JS(URL 响应):
const r = await fetch(`${process.env.NINEROUTER_URL}/v1/images/generations`, {
method: "POST",
headers: { "Authorization": `Bearer ${process.env.NINEROUTER_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({ model: "gemini/gemini-3-pro-image-preview", prompt: "neon city", size: "1024x1024" }),
});
const { data } = await r.json();
console.log(data[0].url || data[0].b64_json.slice(0, 40));
响应结构
JSON(默认 response_format=url):
{ "created": 1735000000, "data": [{ "url": "https://..." }] }
response_format=b64_json:
{ "created": 1735000000, "data": [{ "b64_json": "iVBORw0KGgo..." }] }
查询参数 ?response_format=binary 会返回原始图像字节(Content-Type 为 image/png 或 image/jpeg)。
提供方差异
上述通用字段适用于所有提供方。以下提供方会添加或覆盖字段:
| 提供方 | 额外或变更的字段 | 说明 |
|---|---|---|
openai、minimax、openrouter、recraft | quality、style、response_format | 标准 OpenAI 结构 |
gemini(nano-banana) | — | 仅支持 prompt;忽略 size/n |
codex(gpt-5.4-image) | image、images[]、image_detail、output_format、background | SSE 流;需要 ChatGPT Plus/Pro |
huggingface | — | 仅支持 prompt;返回单张图像 |
nanobanana | image、images[](编辑模式) | size → 宽高比;异步轮询 |
fal-ai | image(图生图) | n → num_images;size → 比例;异步 |
stability-ai | style(预设)、output_format | size → aspect_ratio |
black-forest-labs(FLUX) | image(参考图) | size → 精确的 width/height;异步 |
runwayml | image(参考图) | size → 比例;异步;存在视频模型 |
sdwebui、comfyui | — | 本地 noAuth(:7860 / :8188) |
评论
支持 Markdown