flux1 / sdcpp / createVariant
Re-render with the four-piece stack
- diffuser_model
- vae_model
- clip_lmodel
- t5_xxlmodel
- image
- loras
- api_config
- images
- errors
- workflow_id
- raw_json
The variant (img2img) form of the Flux.1 sdcpp node. Feed it an image and a prompt, and it re-renders that image on the Flux stack you assemble - diffuser, VAE, CLIP-L, and T5-XXL - running on Civitai's fleet. This is the "give this photo the Flux treatment" node, or the one you use to reskin an existing render onto a community Flux fine-tune without ever holding a checkpoint file.
Everything you need to know about the create node applies here, plus one new knob. The Flux difference: variants on Flux are where its strong prompt adherence really pays off, because the model can genuinely restructure a scene from a sentence rather than just recoloring it - at higher strengths, "make this a rainy cyberpunk alley" actually becomes a rainy cyberpunk alley.
How it works
Same Orchestration API plumbing as every node in the pack - submit engine: sdcpp, ecosystem: flux1, operation: createVariant, long-poll, get an IMAGE back - with your source image encoded and sent up as the starting latent, and strength deciding how far the sampler wanders from it.
The inputs that matter
- prompt (required) - where you want the variant to go.
- diffuser_model, vae_model, clip_lmodel, t5_xxlmodel (all required,
CIVITAI_AIR) - the four-piece Flux stack via Civitai Model Selector nodes. Same gotcha as create: all four must be populated. - image (required,
IMAGE) - the source being re-rendered. - strength - the dial. Low (~0.4) keeps the original composition and shifts style; high (~0.8) lets Flux rewrite the scene. Flux's adherence means you can push higher than you'd dare on an SD1.5 img2img before it falls apart.
- steps / cfg_scale - 28 / 3.5 defaults, the standard Flux dev starting config.
Install
Pack install: ComfyUI Manager → "Civitai Comfy Nodes" → Install → restart, or clone https://github.com/civitai/civitai-comfy-nodes.git into custom_nodes, pip install -r civitai-comfy-nodes/requirements.txt (just requests), restart.
Common issues
Credentials: Civitai Auth node into api_config, or CIVITAI_API_TOKEN env var from civitai.com/user/account - mandatory headless.
The variant-specific trap is strength expectations on a narrow resolution window. This recipe caps width/height at 832–1216, so a wide or tall source image gets re-framed into that box; at high strength that's fine (Flux recomposes anyway), at low strength the source can come back cropped. Match your source's aspect to the 1024 default if you want it preserved.
And the standing pack rule: each run is a billable Buzz job. Tune at quantity: 1, then batch.
Inputs (20)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| diffuser_model | CIVITAI_AIR | — | |
| vae_model | CIVITAI_AIR | — | |
| clip_lmodel | CIVITAI_AIR | — | |
| t5_xxlmodel | CIVITAI_AIR | — | |
| image | IMAGE | Either A URL, A DataURL or a Base64 string | |
| output_formatopt | COMBO | 4 options: , jpeg, png, webP | |
| image_metadataopt | STRING | External metadata that will be stored with the image | |
| widthopt | INT | 1024832–1216 | — |
| heightopt | INT | 1024832–1216 | — |
| seedopt | INT | 00–4294967295 | — |
| quantityopt | INT | 11–4 | — |
| cfg_scaleopt | FLOAT | 3.501–20 | — |
| stepsopt | INT | 284–50 | — |
| sample_methodopt | COMBO | 16 options: , euler, heun, dpm2, dpm++2s_a, dpm++2m, +10 | |
| scheduleopt | COMBO | 12 options: , simple, discrete, karras, exponential, ays, +6 | |
| negative_promptopt | STRING | — | |
| lorasopt | CIVITAI_LORAS | — | |
| strengthopt | FLOAT | 0.700–1 | — |
| 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 | — |