flux2Klein / createVariant
Restyle a picture with a 4B or 9B Flux 2
- image
- loras
- api_config
- images
- errors
- workflow_id
- raw_json
The img2img variant of the Flux 2 Klein cloud node. Feed it an image, a prompt, and a chosen Klein model version, and it re-renders the image on that checkpoint - running on Civitai's sdcpp fleet, billed in Buzz, no model download. Because Klein is a small model, this is also the cheap way to do Flux 2 variant work: you get the restyle without paying the 32B Dev price.
Where this node wins is iteration. Variant work is trial-and-error by nature - tweak strength, tweak prompt, look, repeat - and that's exactly the workflow where cloud pricing stings on a big model. Klein's 4B distilled at low steps turns that into something approaching affordable, which makes it the sensible default for "restyle this image" experiments unless you specifically need Dev's ceiling.
How it works
Standard pack plumbing: submit engine: sdcpp, ecosystem: flux2Klein, operation: createVariant with your image, prompt, strength, and modelVersion, long-poll, get the IMAGE out.
The inputs that matter
- prompt (required) - the change you want. Natural language, specific.
- image (required,
IMAGE) - the source to re-render. - model_version -
4b/4b-base/9b/9b-base, default4b. For restyle work the distilled variants are the right call. - strength - the key dial. Klein holds a source well at low strength and restructures cleanly at high strength; start ~0.6 for a restyle and move up toward rewrites.
- steps / cfg_scale - 20 / 5 defaults; drop steps to save Buzz on the distilled variants.
- width / height - 512–2048, so you can output larger than your input.
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).
Variant-specific gotchas: don't carry a 9b-base model_version over from a training workflow - base checkpoints are weaker generators. And don't apply a 4B LoRA to a 9B run; Klein LoRAs don't cross sizes, and the result degrades without erroring.
Cost-wise, this is the friendliest variant node in the Flux family, but "friendly" still means per-image billing. The quantity input tops out at 4 - keep it at 1 while you find your strength.
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| 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 | 1024512–2048 | — |
| heightopt | INT | 1024512–2048 | — |
| seedopt | INT | 00–4294967295 | — |
| quantityopt | INT | 11–4 | — |
| cfg_scaleopt | FLOAT | 5.001–20 | — |
| stepsopt | INT | 204–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 | — | |
| model_versionopt | COMBO | 4b | 4 options: 4b, 4b-base, 9b, 9b-base |
| 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 | — |