Qwen Image 3.0 Pro (BudgetPixel)
Qwen Image 3.0 Pro in your graph — no VRAM required
- reference_images
- images
The name is a lie, and it's the good kind. BudgetPixel_qwen-image-3.0-pro doesn't load a model on your machine, doesn't eat a gigabyte of VRAM, and doesn't download any weights. It's the official BudgetPixel wrapper around Alibaba's Qwen Image 3.0 Pro - the "professional" tier of Qwen-Image, tuned for infographics, solid photorealism, and sticky prompt adherence - and the whole generation happens on BudgetPixel's servers. You type, it sends, you get an image back in the graph as if a local sampler had made it.
Why you'd reach for it
Qwen Image 3.0 Pro is one of the hosted-only models - no open weights, so "just run it locally" isn't an option (the Qwen team's open Qwen-Image line is separate and less capable). If you've been chasing identity consistency or multi-image fusion with local edits and getting nowhere, this is the one-node swap to test before you build anything elaborate. The headline trick is multi-image fusion: wire up to three reference images in, describe what you want, and the model composes from all of them at once. That's the same pattern the budgetpixel community has been quietly leaning on for identity-transfer work that local ipadapter stacks can't match.
How it works
Under the hood it's a thin HTTP client. Your reference_images IMAGE tensor gets converted to PNG, sent as a data URI (or pushed through BudgetPixel's upload endpoint if it's big), and a job is created against the API. The node then polls until the server finishes - you'll see progress in ComfyUI's bar - and downloads the result back as a normal IMAGE. Note the async catch: interrupting the graph stops the waiting, not the job. A generation you interrupt keeps running and keeps billing server-side.
The inputs that matter
- prompt - required, multiline. This is the whole game for text-to-image.
- reference_images - up to 3 images for editing/fusion. Omit for plain text-to-image. If you keep the input's aspect ratio, set aspect_ratio to
match_input_image. - size -
1Kbills 45 credits per image,2Kbills 85. This is where cost doubles, so don't default your way to 2K for drafts. - num_images - 1 to 4; each is billed separately.
- seed - -1 (the default) lets the server pick a random seed; set a real value to reproduce.
Output is a single images (IMAGE) socket - wire it into Preview Image or Save Image and you're done. No local sampler, no VAE, no scheduler to argue with.
Install and key setup
The usual BudgetPixel install: ComfyUI Manager → search BudgetPixel → install → restart. Manual, from the README:
cd ComfyUI/custom_nodes
git clone https://github.com/budgetpixel-ai/comfyui-budgetpixel.git
pip install -r comfyui-budgetpixel/requirements.txt
The only dependency is requests - no torch, no model files, no downloads. You do need a BudgetPixel API key from a paid plan, set either as the BUDGETPIXEL_API_KEY environment variable or in a budgetpixel.json file inside the pack folder. Keys never end up in your workflow JSON, which is a nice touch for sharing graphs.
Where people get burned
Three things, in order of frequency. Caching: ComfyUI caches node outputs, so rerunning a graph with an unchanged prompt won't hit the API again - flip the force_rerun toggle to force a fresh (and freshly billed) generation. Free plans: the API is included in every paid plan, but on a free account you'll see api_access_not_enabled and wonder why nothing works. Interrupts still bill, as noted above. None of it is fatal once you know it's coming.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | Text description of the image to generate. | |
| aspect_ratioopt | COMBO | 1:1 | Output aspect ratio. |
| negative_promptopt | STRING | What to avoid in the generated image. | |
| num_imagesopt | INT | 11–4 | Number of images to generate. |
| reference_imagesopt | IMAGE | Optional reference images (up to 3) for image editing and multi-image fusion. Each item is a public image URL, a data URI, raw base64, or an uploaded-file URL from POST /v1/uploads. Omit for text-to-image. Use aspect_ratio "match_input_image" to keep the input's aspect ratio. | |
| seedopt | INT | -1-1–2147483647 | Seed for reproducible generation. Omit for random. |
| sizeopt | COMBO | 1K | Output resolution tier. 1K bills 45 credits per image; 2K bills 85. |
| force_rerunopt | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |