Nodes/ComfyUI-dapaoAPI/🦁GPT-image-2.5全能图像@炮老师的小课堂
ComfyUI Node

🦁GPT-image-2.5全能图像@炮老师的小课堂

Plug in one photo and it stops being a text-to-image node

By paolaoshi·Created 10 months ago·Updated a day ago· 227
🦁GPT-image-2.5全能图像@炮老师的小课堂
  • 🖼️ 图像1
  • 🖼️ 图像2
  • 🖼️ 图像3
  • 🖼️ 图像4
  • 🖼️ 图像5
  • 🖼️ 图像6
  • 🖼️ 图像7
  • 🖼️ 图像8
  • 🖼️ 图像9
  • 🖼️ 图像10
  • 🖼️ 图像11
  • 🖼️ 图像12
  • 🖼️ 图像13
  • 🖼️ 图像14
  • 🖼️ 图像15
  • 🖼️ 图像16
  • 🖼️ 图像
  • 🔗 图片链接
  • 📋 响应信息
🔑 API密钥
🤖 模型gpt-image-2.5-flare
📝 提示词一张高端商业摄影海报,干净的自然光,细节清晰,质感高级
📐 图片尺寸/比例模型默认
🧩 清晰度1K
🎨 画质medium(中质量)
🖼️ 出图数量1
⚡ 异步模式false
🎲 随机种0
🔁 最大轮询秒数1200
⏱️ 轮询间隔5
⌛ 请求超时900

What it actually is

There is no model here. 🦁GPT-image-2.5全能图像 is an HTTP client wearing a node costume: you paste a key, it posts your prompt and images to https://api.dapaoai.com - the relay the pack's author runs, branded 妙笔AI工坊 - and drops whatever comes back into the graph as a normal IMAGE. That's the whole deal.

Which is fine, because you can't run GPT-image locally anyway. This is the category the KB calls external API nodes: a workflow leaving your machine, and the only door to a model with no open weights. The official Comfy Partner Nodes are the vetted, prepaid-credit version of this. A third-party relay pack is the other version - cheaper and easier to buy into, with none of the vetting, and your reference images going to a server the author operates.

The author is 炮老师的小课堂 (paolaoshi), a Chinese-language ComfyUI educator; the pack is ~50 nodes, almost all wrappers over the same relay.

How it works

The node switches endpoints based on your wiring, and that's the detail most people miss.

  • No reference images → text-to-image, POST /v1/images/generations, submitted through the relay's queue. Turn on ⚡异步模式 and it adds an async flag to that call.
  • Any image on 🖼️图像1–16 → the node flips to 图生图 and posts multipart to /v1/images/edits, waiting synchronously. The code comment is blunt about why the split exists: generations may silently ignore image URLs. It also deliberately does not send the async flag to the edits endpoint.

Every wired image is converted to PNG and Lanczos-resized so its longest edge is at most 2048px before it ships, and the 16-reference cap counts batch dimensions too - an ImageBatch of 8 into one slot plus 8 more elsewhere is 16, and 17 raises.

Type a list into 📝提示词 and ComfyUI maps it to one coroutine per prompt; the node hands the blocking HTTP work to worker threads so they run concurrently instead of queueing. That's the "prompt list runs in parallel" claim in the description, and it's real.

On the way back it hunts the JSON for base64 blobs or URLs, downloads URLs, converts to RGB tensors. Mismatched returned dimensions mean it refuses to build a batch instead of padding. And it raises on failure - no black placeholder - so your save node doesn't record a failed call as a good one.

Inputs that matter, and the outputs

Set these: 🔑 API密钥, 🤖模型 (gpt-image-2.5-flare is default, gpt-image-2.5-sunburst is the alternative - both are sent upstream as their own model ID), 📝提示词, 📐图片尺寸/比例 (a pile of ratios plus 模型默认; the ratio string goes to the relay, which picks the pixels), 🧩清晰度 (1K/2K/4K), 🎨画质 (five tiers, low → max - the only real quality/cost dial you have), 🖼️出图数量 (1–10).

🎲随机种 is a trap in the nice sense: the tooltip says it only controls ComfyUI's cache and is never sent to the API. You cannot reseed to reproduce an output. Rerun, new image.

Outputs are 🖼️图像 (a single batch - wire it to SaveImage or anything downstream), 🔗图片链接 (newline-joined URLs, empty if the relay handed back base64), and 📋响应信息 (a status block plus the raw JSON - handy to a ShowText node when something smells). The node isn't an output node, so you still need a save/preview.

Install

ComfyUI Manager → search dapaoAPI. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/paolaoshi/ComfyUI-dapaoAPI
cd ComfyUI-dapaoAPI && pip install -r requirements.txt

That installs requests, Pillow, torch, numpy, zhipuai, aiohttp, nest-asyncio, scipy. The aiohttp one isn't optional here - the pack's __init__.py imports aiohttp.web and ComfyUI's server module at load, so a half-finished install shows up as the whole pack failing to appear, not one node.

Then buy in: register at the relay, buy a redemption code, redeem it in the wallet, request an API key with the default group, paste it in. Prepaid, no free tier. The README bundles a year of Chinese changelog above the actual instructions - trust the source when the two disagree.

Where people get burned

Nothing is retried on purpose. Submissions are POST and never auto-retried, because a retry is a second charge; only the status polls retry. A network timeout mid-submit can still have billed you. Check the relay's usage page, don't mash Run.

Read the error code the node prints. 401 is a bad key, 402 an empty wallet, 403 no permission for that model, 429 rate-limit/queue - and the pack's own 429 hint tells you to check that each reference image is under 2048px on the long edge. 500/502/503 ask you to retry or switch routes.

Content moderation comes from upstream, and it won't tell you why. No auto-retry, and the upstream doesn't reveal which word tripped it. Rewriting one adjective is a coin flip; change the actual content.

16 references means 16, batches included, and returned images must match dimensions or you get an exception instead of a padded batch.

The key lives in a widget. The README is proud it isn't written to a config file - true, but ComfyUI saves widget values into workflow JSON and embeds them in saved PNGs. Share a workflow and you've shared your key.

Category🤖dapaoAPI/🍬大炮AI主力维护🍬

Inputs (28)

NameTypeDefaultDescription
🔑 API密钥STRING密钥只用于请求 https://api.dapaoai.com,不会写入配置文件。
🤖 模型COMBOgpt-image-2.5-flare2 options: gpt-image-2.5-flare, gpt-image-2.5-sunburst
📝 提示词STRING一张高端商业摄影海报,干净的自然光,细节清晰,质感高级
📐 图片尺寸/比例COMBO模型默认16 options: 模型默认, 1:1, 3:2, 2:3, 4:3, 3:4, +10
🧩 清晰度COMBO1K3 options: 1K, 2K, 4K
🎨 画质COMBOmedium(中质量)5 options: low(低质量), medium(中质量), high(高质量), xhigh(超高), max(最高)
🖼️ 出图数量INT11–10
⚡ 异步模式BOOLEANfalse文生图沿用妙笔工坊队列;接入参考图后自动使用图生图编辑接口同步等待,不向编辑接口发送异步参数。提示词列表仍支持并发。
🎲 随机种INT00–18446744073709550000仅控制 ComfyUI 缓存,不发送给接口。
🔁 最大轮询秒数optINT120060–3600
⏱️ 轮询间隔optINT53–30
⌛ 请求超时optINT90030–1800
🖼️ 图像1optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像2optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像3optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像4optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像5optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像6optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像7optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像8optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像9optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像10optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像11optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像12optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像13optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像14optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像15optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。
🖼️ 图像16optIMAGE接入任意参考图后自动切换为图生图,所有接口和批次合计最多16张。

Outputs (3)

NameTypeDescription
🖼️ 图像IMAGE
🔗 图片链接STRING
📋 响应信息STRING