🦁Qwen-image-3.0全能图像@炮老师的小课堂
Qwen-Image-3.0 Has No Open Weights. This Node Is the Way In
- 🖼️ 图像1
- 🖼️ 图像2
- 🖼️ 图像3
- 🖼️ 图像
- 🔗 图片链接
- 📋 响应信息
What you're actually plugging in
Qwen-Image-3.0 landed in July 2026 and it is not downloadable. The open Qwen-Image line stops at Qwen-Image-Edit 2511 and Qwen-Image-2512; the 2.0 successor already shipped API-and-chat-only, and 3.0 followed it. So "I'll just run Qwen 3.0 locally" isn't a VRAM problem you can solve - there's nothing to load.
That's the entire reason this node exists. It's an HTTP client with your API key in it, wearing a ComfyUI node costume: you wire in a prompt (and optionally a few reference images), it submits a job to api.dapaoai.com - the 妙笔AI工坊 gateway, a Chinese reseller, not Alibaba's own endpoint - and drops the returned images back into the graph as a normal IMAGE batch. The pack is by 炮老师的小课堂, a Chinese tutorial channel, and the README doubles as a storefront (affiliate signup links, wallet recharge codes, RunningHub invite codes). Nothing shady, but calibrate: this is built for that creator's audience, documented in Chinese, and the support you get is one person's repo.
For open Qwen editing, stay on Qwen-Image-Edit 2511. This node is for the closed 3.0 generation, which is best at dense work: long prompts, text-heavy images, UI mockups, infographics with real glyphs in them.
How the node works
Text-to-image goes to /v1/images/generations; attach a reference image and it switches to /v1/images/edits. References are uploaded to the gateway first and swapped for asset references, so your pixels aren't inlined into the POST. Seeds are normalized modulo 2³¹, which quietly stops old workflow seeds from blowing up. Returned URLs become tensors, and multiple outputs are concatenated along the batch dimension - ask for 4 and you get one IMAGE batch of 4.
Underneath sits a local sqlite queue (dreambrush_runtime.sqlite3 in the plugin folder). Paid submissions go out with Prefer: respond-async, and the queue is reuse_succeeded: re-run the identical payload and the node reuses the generation you already paid for. Change a widget and you've bought a new one. Nice engineering for a reseller wrapper.
The fields that matter
- 🔑 API密钥 - the one that bites. This node reads the widget only; it does not fall back to a
DAPAO_API_KEYenvironment variable the way its Wan sibling does. Leave it empty and you get "请填写妙笔API密钥" before anything else happens. It's also plain text here, so a pasted key is saved into the workflow JSON if you save the workflow - don't hand that file around. - 🤖 模型 -
qwen-image-3.0orqwen-image-3.0-pro. Start on the base. - 📝 提示词 - write sentences, not tag soup. It's an LLM-conditioned model; weighting syntax like
(face:1.4)is just literal punctuation to it. - 🧩 清晰度 + 📐 图片比例 - these two resolve into a literal pixel size (1K 1:1 is 1024×1024; 2K 21:9 is 3024×1296). Leaving 图片比例 on 模型默认 sends
size: "auto"and lets the model frame it; pick an explicit ratio when framing matters. - 🖼️ 出图数量 (1–6), plus 🪄 提示词改写, 🧠 启用思考, 💧 水印, 🎲 随机种 - the last four map to
prompt_extend,enable_thinkingandwatermarkin the payload. - 🖼️ 图像1 / 图像2 / 图像3 - optional references, hard-capped at 3 total across all three slots. A batch counts toward that, so wiring a 4-image batch into one slot raises "最多接收3张参考图".
- 🔁 最大轮询秒数 (1200), ⏱️ 轮询间隔 (5s), ⌛ 请求超时 (900s) - 2K pro jobs queue, so raise the first one before you conclude the model is broken.
Outputs: 🖼️ 图像 goes into Preview Image, Save Image, or any upscaler you already have. 🔗 图片链接 is the returned URLs, newline-joined - a good fallback when a download hiccups. 📋 响应信息 is a text report with the actual model ID, mode (图生图/文生图), resolved size, seed, reference count and task ID, plus the raw submit/final JSON.
Install
ComfyUI Manager: search dapaoAPI, install, restart. Or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/paolaoshi/ComfyUI-dapaoAPI
cd ComfyUI-dapaoAPI
pip install -r requirements.txt
requirements.txt is heavier than one image node deserves: requests, Pillow, torch, numpy, plus zhipuai, aiohttp, nest-asyncio and scipy for other nodes in the same pack. No model downloads - nothing here is local. The node shows up under 🤖dapaoAPI/🍬大炮AI主力维护🍬.
Where it goes wrong
Failures raise a RuntimeError with the submit and final JSON appended after the message, so read the tail of the traceback, not just the headline. "任务完成但没有返回图片" usually means polling gave up before the upstream queue did - bump 🔁 最大轮询秒数 and re-run; the reuse logic means an identical payload may not cost you anything the second time. Empty key, empty prompt, and out-of-range 出图数量 all fail fast in local validation, before a cent is spent.
And the standing caveat for every node in this category: it's arbitrary Python that holds a credential and phones home by design. Prefer to know that going in.
Inputs (16)
| Name | Type | Default | Description |
|---|---|---|---|
| 🔑 API密钥 | STRING | — | |
| 🤖 模型 | COMBO | qwen-image-3.0 | 2 options: qwen-image-3.0, qwen-image-3.0-pro |
| 📝 提示词 | STRING | 一张高端商业摄影,光线自然,细节清晰 | — |
| 🧩 清晰度 | COMBO | 1K | 2 options: 1K, 2K |
| 📐 图片比例 | COMBO | 模型默认 | 9 options: 模型默认, 1:1, 16:9, 9:16, 4:3, 3:4, +3 |
| 🖼️ 出图数量 | INT | 11–6 | — |
| 🪄 提示词改写 | BOOLEAN | false | — |
| 🧠 启用思考 | BOOLEAN | false | — |
| 💧 水印 | BOOLEAN | false | — |
| 🎲 随机种 | INT | 00–2147483647 | — |
| 🔁 最大轮询秒数opt | INT | 120060–3600 | — |
| ⏱️ 轮询间隔opt | INT | 53–30 | — |
| ⌛ 请求超时opt | INT | 90030–1800 | — |
| 🖼️ 图像1opt | IMAGE | Qwen Image 3.0参考图,最多3张。 | |
| 🖼️ 图像2opt | IMAGE | Qwen Image 3.0参考图,最多3张。 | |
| 🖼️ 图像3opt | IMAGE | Qwen Image 3.0参考图,最多3张。 |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| 🖼️ 图像 | IMAGE | — |
| 🔗 图片链接 | STRING | — |
| 📋 响应信息 | STRING | — |