feat: openai image 2.5

This commit is contained in:
hp0912 2026-09-14 18:24:41 +08:00
parent 97db536845
commit 2491273040
5 changed files with 17 additions and 9 deletions

2
.vscode/launch.json vendored
View File

@ -10,7 +10,7 @@
"justMyCode": true,
"args": [
"--prompt=马云在直播间卖红薯",
"--model=gpt-image-2"
"--model=gpt-image-2.5-flare"
],
"env": {
"ROBOT_WECHAT_CLIENT_PORT": "9001",

View File

@ -13,6 +13,8 @@ description: "图片修改、图生图工具。基于输入的一张或多张图
从数据库中读取绘图配置(API 密钥、Base URL 等),根据用户选择的模型调用对应的绘图 API,返回生成的图片 URL。
OpenAI 默认模型为 `gpt-image-2.5-flare`;用户指定 OpenAI 但未指定具体模型时,传入此模型名。
这个仓库里额外提供了一个可执行脚本 `scripts/image_to_image.py`,方便宿主机器人直接调用。
## 触发条件
@ -36,7 +38,7 @@ description: "图片修改、图生图工具。基于输入的一张或多张图
},
"model": {
"type": "string",
"description": "画图模型选择(可选):即梦4.5(jimeng-4.5) / 即梦4.6(jimeng-4.6) / 即梦4.7(jimeng-4.7) / 即梦5.0(jimeng-5.0) / 即梦5.0 Pro(jimeng-5.0-pro) / 豆包5.0 Pro(doubao-seedream-5-0-pro) / 豆包5.0 Lite(doubao-seedream-5-0) / 豆包图生图(doubao-seededit-3.0-i2i) / 造相基础版(Z-Image) / 造相蒸馏版(Z-Image-Turbo) / 造相图片编辑(Qwen-Image-Edit-2511) / OpenAI GPT Image(gpt-image-2),默认: 空(none)。",
"description": "画图模型选择(可选):即梦4.5(jimeng-4.5) / 即梦4.6(jimeng-4.6) / 即梦4.7(jimeng-4.7) / 即梦5.0(jimeng-5.0) / 即梦5.0 Pro(jimeng-5.0-pro) / 豆包5.0 Pro(doubao-seedream-5-0-pro) / 豆包5.0 Lite(doubao-seedream-5-0) / 豆包图生图(doubao-seededit-3.0-i2i) / 造相基础版(Z-Image) / 造相蒸馏版(Z-Image-Turbo) / 造相图片编辑(Qwen-Image-Edit-2511) / OpenAI gpt-image-2(gpt-image-2) / OpenAI gpt-image-2.5(gpt-image-2.5-flare) / OpenAI gpt-image-2.5 Pro(gpt-image-2.5-sunburst),默认: 空(none)。",
"enum": [
"none",
"jimeng-4.5",
@ -50,7 +52,9 @@ description: "图片修改、图生图工具。基于输入的一张或多张图
"Z-Image",
"Z-Image-Turbo",
"Qwen-Image-Edit-2511",
"gpt-image-2"
"gpt-image-2",
"gpt-image-2.5-flare",
"gpt-image-2.5-sunburst"
],
"default": "none"
},

View File

@ -590,7 +590,7 @@ def call_openai(config: dict, prompt: str, model: str, images: list[str],
input_files = [path.open("rb") for path in input_paths]
try:
kwargs = {
"model": model or "gpt-image-2",
"model": model or "gpt-image-2.5-flare",
"prompt": _openai_prompt(prompt, negative_prompt),
"image": input_files,
"n": _coerce_int(config.get("n"), 1, 1, 10),
@ -618,7 +618,7 @@ def call_openai(config: dict, prompt: str, model: str, images: list[str],
JIMENG_MODELS = {"jimeng-4.5", "jimeng-4.6", "jimeng-4.7", "jimeng-5.0", "jimeng-5.0-pro"}
DOUBAO_MODELS = {"doubao-seedream-5-0-pro", "doubao-seedream-5-0", "doubao-seededit-3.0-i2i"}
ZIMAGE_MODELS = {"Z-Image", "Z-Image-Turbo", "Qwen-Image-Edit-2511"}
OPENAI_MODELS = {"gpt-image-2"}
OPENAI_MODELS = {"gpt-image-2", "gpt-image-2.5-flare", "gpt-image-2.5-sunburst"}
def _parse_cli_params(argv: list[str]) -> dict:

View File

@ -11,6 +11,8 @@ description: "AI绘图工具,当用户想通过文本生成图像时,可以
从数据库中读取绘图配置(API 密钥、Base URL 等),根据用户选择的模型调用对应的绘图 API,返回生成的图片 URL。
OpenAI 默认模型为 `gpt-image-2.5-flare`;用户指定 OpenAI 但未指定具体模型时,传入此模型名。
这个仓库里额外提供了一个可执行脚本 `scripts/text_to_image.py`,方便宿主机器人直接调用。
## 触发条件
@ -34,7 +36,7 @@ description: "AI绘图工具,当用户想通过文本生成图像时,可以
},
"model": {
"type": "string",
"description": "画图模型选择(可选):即梦4.5(jimeng-4.5) / 即梦4.6(jimeng-4.6) / 即梦4.7(jimeng-4.7) / 即梦5.0(jimeng-5.0) / 即梦5.0 Pro(jimeng-5.0-pro) / 豆包5.0 Pro(doubao-seedream-5-0-pro) / 豆包5.0 Lite(doubao-seedream-5-0) / 豆包4.5(doubao-seedream-4.5) / 豆包4.0(doubao-seedream-4.0) / 豆包文生图(doubao-seedream-3.0-t2i) / 豆包图生图(doubao-seededit-3.0-i2i) / 造相基础版(Z-Image) / 造相蒸馏版(Z-Image-Turbo) / 造相图片编辑(Qwen-Image-Edit-2511) / OpenAI GPT Image(gpt-image-2),默认: 空(none)。",
"description": "画图模型选择(可选):即梦4.5(jimeng-4.5) / 即梦4.6(jimeng-4.6) / 即梦4.7(jimeng-4.7) / 即梦5.0(jimeng-5.0) / 即梦5.0 Pro(jimeng-5.0-pro) / 豆包5.0 Pro(doubao-seedream-5-0-pro) / 豆包5.0 Lite(doubao-seedream-5-0) / 豆包4.5(doubao-seedream-4.5) / 豆包4.0(doubao-seedream-4.0) / 豆包文生图(doubao-seedream-3.0-t2i) / 豆包图生图(doubao-seededit-3.0-i2i) / 造相基础版(Z-Image) / 造相蒸馏版(Z-Image-Turbo) / 造相图片编辑(Qwen-Image-Edit-2511) / OpenAI gpt-image-2(gpt-image-2) / OpenAI gpt-image-2.5(gpt-image-2.5-flare) / OpenAI gpt-image-2.5 Pro(gpt-image-2.5-sunburst),默认: 空(none)。",
"enum": [
"none",
"jimeng-4.5",
@ -51,7 +53,9 @@ description: "AI绘图工具,当用户想通过文本生成图像时,可以
"Z-Image",
"Z-Image-Turbo",
"Qwen-Image-Edit-2511",
"gpt-image-2"
"gpt-image-2",
"gpt-image-2.5-flare",
"gpt-image-2.5-sunburst"
],
"default": "none"
},

View File

@ -563,7 +563,7 @@ def call_openai(config: dict, prompt: str, model: str,
background = "auto"
kwargs = {
"model": model or "gpt-image-2",
"model": model or "gpt-image-2.5-flare",
"prompt": _openai_prompt(prompt, negative_prompt),
"n": _coerce_int(config.get("n"), 1, 1, 10),
"size": _openai_size(config, ratio, resolution),
@ -587,7 +587,7 @@ def call_openai(config: dict, prompt: str, model: str,
JIMENG_MODELS = {"jimeng-4.5", "jimeng-4.6", "jimeng-4.7", "jimeng-5.0", "jimeng-5.0-pro"}
DOUBAO_MODELS = {"doubao-seedream-5-0-pro", "doubao-seedream-5-0", "doubao-seedream-4.5", "doubao-seedream-4.0", "doubao-seedream-3.0-t2i", "doubao-seededit-3.0-i2i"}
ZIMAGE_MODELS = {"Z-Image", "Z-Image-Turbo", "Qwen-Image-Edit-2511"}
OPENAI_MODELS = {"gpt-image-2"}
OPENAI_MODELS = {"gpt-image-2", "gpt-image-2.5-flare", "gpt-image-2.5-sunburst"}
def _parse_cli_params(argv: list[str]) -> dict[str, str]: