mageflow / 4b / createImage
Microsoft's tiny 4B image model without the setup
- loras
- diffusion_model
- api_config
- images
- errors
- workflow_id
- raw_json
MageFlow is Microsoft's surprisingly good tiny image model - 4 billion parameters, a fraction of what the big diffusion transformers need, and it still pulls off decent generation and editing from the same weights. It landed with a Qwen3-VL 4B text encoder, GGUF conversions, and a community reaction somewhere between "how is this only 4B?" and "does it beat Krea 2 Turbo?" (answer: it's a different tool - this one is built for editing).
This node runs the 4B createImage variant on Civitai's cloud, so you never have to think about the GGUF, the quantization, or whether your GPU can fit it. It's text-to-image: prompt in, IMAGE out.
How it works
Standard civitai-comfy-nodes pattern: the node submits a MageFlow job to the Civitai Orchestration API and long-polls until it's done, then converts the returned image into a native Comfy IMAGE tensor. Nothing runs on your machine - your ComfyUI is just the client. The non-turbo create variant defaults to 20 steps at CFG 5.0, with the full sampler/scheduler menu exposed.
The "4b" in the name is the model size, and it's the whole story here: this is a small model that gets a surprising amount done per parameter, which is exactly why it's cheap to host and (locally) fast to run. On Civitai's fleet you don't care about the speed, but the small model does mean it's billed as the cheap end of the orchestration catalogue.
The inputs that matter
- prompt - required. MageFlow understands long natural language well for its size.
- steps / cfg_scale - defaults 20 / 5.0. If you wire in a turbo LoRA you'll drop these; otherwise leave them.
- diffusion_model (
CIVITAI_AIR) - optional socket. Empty = stock MageFlow 4B. Wire a Civitai Model Selector to point at a MageFlow finetune hosted on Civitai. - loras (
CIVITAI_LORAS) - optional, via a Civitai LoRA Selector. - negative_prompt, sampler, scheduler, seed, quantity (up to 12), width, height - standard knobs.
Outputs
images is the one you wire into Preview/Save Image. errors, workflow_id, and raw_json are diagnostics - raw_json holds the full job result for cost and debugging.
Installing and authenticating
This node ships in civitai-comfy-nodes, so install is the pack-wide recipe:
cd ComfyUI/custom_nodes
git clone https://github.com/civitai/civitai-comfy-nodes.git
pip install -r civitai-comfy-nodes/requirements.txt
or ComfyUI Manager → Custom Nodes Manager → "Civitai Comfy Nodes" → Install → restart. Dependencies: requests + python-socketio[client] - no model downloads, nothing heavy.
Auth resolution: a Civitai Auth node, CIVITAI_API_TOKEN, stored key/OAuth in ~/.civitai/, or browser login. Headless box:
export CIVITAI_API_TOKEN=your_token
Where people get burned
- It's a 4B model. The "surprisingly good" framing cuts both ways - it punches above its weight, but it's not Krea 2 or a 20B model. If you want the headroom, pick a bigger engine; if you want fast, cheap drafts and clean edits, this is the one.
- Buzz per job. Cloud inference is metered. MageFlow being small keeps the cost low, but a batch pipeline still adds up - keep
quantityreasonable. - Your prompt leaves the machine - standard API-node trade, and with a Microsoft-trained model, expect the usual hosted content moderation.
- If you're here for editing, this is the wrong node - the createImage variant generates from text. Grab
CivitaiImageGenComfyMageflow4bEditEditImage(or the turbo edit) for instruction editing, which is what MageFlow is genuinely best at.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| steps | INT | 201–150 | — |
| cfg_scale | FLOAT | 5.000–30 | — |
| quantity | INT | 11–12 | — |
| output_formatopt | COMBO | 4 options: , jpeg, png, webP | |
| image_metadataopt | STRING | External metadata that will be stored with the image | |
| negative_promptopt | STRING | — | |
| sampleropt | COMBO | 32 options: , euler, euler_ancestral, euler_cfg_pp, euler_ancestral_cfg_pp, heun, +26 | |
| scheduleropt | COMBO | 8 options: , normal, karras, exponential, sgm_uniform, simple, +2 | |
| seedopt | INT | 00–4294967295 | — |
| lorasopt | CIVITAI_LORAS | — | |
| diffusion_modelopt | CIVITAI_AIR | — | |
| widthopt | INT | 1024512–2048 | — |
| heightopt | INT | 1024512–2048 | — |
| api_configopt | CIVITAI_CONFIG | Optional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login. |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |
| errors | STRING | — |
| workflow_id | STRING | — |
| raw_json | STRING | — |