feat: 新增AI生图(批量版)节点,模型改名,超时优化与友好报错

- 新增 BatchAsyncImageGenerator 节点(全并发+即时落盘,不怕中途失败丢图)
- 原版 AsyncImageGenerator 移除批量提示词功能,单节点只处理单提示词
- 模型改名:限时特价→次卡,gemini→nano-banana-官方
- 异步节点过滤 官方计费 渠道,仅保留次卡和官方模型
- 单任务超时提升至900s,批量超时改为动态计算(批次数×900s)
- No available channel for model 错误转化为中文友好提示
- 新增 base_async_provider / gemini_async_provider 异步客户端基类

Co-Authored-By: Claude Opus 4.6 <[email protected]>
This commit is contained in:
o1key
2026-04-29 18:24:55 +08:00
co-authored by Claude Opus 4.6
parent b6de4e49ab
commit 2e93a34434
12 changed files with 1405 additions and 741 deletions
+10 -13
View File
@@ -23,8 +23,8 @@ class O1keyGPTImage:
- 模型 : 模型选择
- 分辨率 : 图像尺寸(auto 让 API 自动决定)
- 生图数量 : 每条提示词生成数量 1-8
- seed : 随机种子(0 表示不指定)
- 质量 : 生成质量
- seed : 随机种子(0 表示不指定)
- 图片 : 可选参考图(用于图生图或编辑)
- 遮罩 : 可选蒙版(白色区域将被替换)
"""
@@ -39,12 +39,10 @@ class O1keyGPTImage:
})
optional_inputs["模型"] = ([
"gpt-image-2",
"gpt-image-1.5",
"gpt-image-2-特价",
"gpt-image-1.5-特价",
"gpt-image-2-按量",
"gpt-image-2-次卡",
], {
"default": "gpt-image-2",
"default": "gpt-image-2-次卡",
})
optional_inputs["分辨率"] = ([
"auto(默认)",
@@ -53,6 +51,7 @@ class O1keyGPTImage:
"1024x1536(肖像)",
"2048x20482K 平方)",
"2048x11522K 横屏)",
"1152x20482K 竖屏)",
"3840x21604K 横屏)",
"2160x38404K 竖屏)",
], {
@@ -67,6 +66,10 @@ class O1keyGPTImage:
"display": "number",
"tooltip": "How many images to generate per prompt",
})
optional_inputs["质量"] = (["", "", "", "自动"], {
"default": "自动",
"tooltip": "Image quality: 高=high, 中=medium, 低=low, 自动=auto",
})
optional_inputs["seed"] = ("INT", {
"default": 0,
"min": 0,
@@ -76,10 +79,6 @@ class O1keyGPTImage:
"control_after_generate": True,
"tooltip": "Random seed (0 = not specified)",
})
optional_inputs["质量"] = (["", "", "", "自动"], {
"default": "自动",
"tooltip": "Image quality: 高=high, 中=medium, 低=low, 自动=auto",
})
optional_inputs["遮罩"] = ("MASK", {
"tooltip": "Optional mask for inpainting (white areas will be replaced)",
})
@@ -104,7 +103,7 @@ class O1keyGPTImage:
def generate(
self,
prompt: str,
模型: str = "gpt-image-2",
模型: str = "gpt-image-2-次卡",
分辨率: str = "auto",
质量: str = "自动",
生图数量: int = 1,
@@ -169,7 +168,6 @@ class O1keyGPTImage:
prompt=p,
model=模型,
quality=quality,
background="auto",
size=size,
n=生图数量,
seed=seed,
@@ -192,7 +190,6 @@ class O1keyGPTImage:
prompt=prompt,
model=模型,
quality=quality,
background="auto",
size=size,
n=生图数量,
seed=seed,