Krea2 KSampler ⚡
A KSampler that speaks diffusers for exact Krea2 img2img parity
- model
- positive
- negative
- latent_image
- LATENT
Krea2 KSampler is a stock KSampler with one extra dropdown, and that dropdown is the whole point of the node. Krea2 shares the exact same ModelSamplingFlux / shift=1.15 setup as Qwen-Image and the rest of the Flux family - no bespoke sampling code - but there's a subtle, real discrepancy between how ComfyUI and the diffusers pipeline slice the denoise schedule during img2img. This node adds denoise_mode, letting you pick which convention you want.
The actual difference
At a given steps and denoise, ComfyUI's KSampler re-expands to int(steps/denoise) steps and takes the tail of the schedule, while the diffusers img2img convention computes the schedule at steps and slices from t_start = steps - round(steps*denoise). The two produce slightly different starting sigmas. The pack's author measured it against a real loaded Krea2 model: at 9 steps, denoise 0.9, ComfyUI starts at sigma ≈0.9660 vs ≈0.9619 under the diffusers slice. Small - smaller than the same discrepancy measured for Z-Image - but it's the same mechanism, and it means a Krea2 img2img that looks subtly off versus the reference pipeline is exactly this.
denoise_mode="comfy" (the default) is unchanged stock behaviour. "diffusers" matches the original pipeline's img2img exactly. It's a compatibility switch, not a quality fix - worth having for exact parity with reference outputs, not a thing that will transform your results.
The rest is a normal KSampler
Everything else is the standard set you already know from stock KSampler:
model,positive,negative,latent_image- feed it straight fromKrea2Img2Img(itsmodel/positive/negative/latentoutputs).seed,steps(default 20),cfg(default 2.5) - Krea2's raw base is guidance-distilled-ish territory; if you're on Raw with the Turbo LoRA, the community default is around 12 steps at CFG 1 witheuler_cfg_pp, but stock settings are a fine start.sampler_name(defaulteuler),scheduler(defaultsimple) - the flow-matching standard set.denoise(default 1.0) - for img2img, keep this matched to whatKrea2Img2Imgoutputs from its owndenoiseport, or just leave 1.0 and let the prep node's strength do the work.
One output, LATENT, straight into VAE Decode.
Installing it
Same pack as everything else on this page:
cd ComfyUI/custom_nodes
git clone https://github.com/ChrisColeTech/ComfyUI-GGUF-Loader
cd ComfyUI-GGUF-Loader
pip install --upgrade gguf
Restart; it's under 🤖 CCTech/Krea2. No model downloads, no extra dependencies - the node is a thin wrapper over comfy's own sampling machinery.
Do you even need it?
Honest answer: if you're not chasing exact parity with a reference Krea2 img2img pipeline, a stock KSampler gives you 99.9% of the behaviour, and you can ignore this node entirely. But it's a free compatibility knob when you are - and it saves you the confused afternoon of "same settings, different result" when comparing against a diffusers-style reference. Reach for it when the numbers have to match, not when you just want a pretty picture.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| positive | CONDITIONING | — | |
| negative | CONDITIONING | — | |
| latent_image | LATENT | — | |
| seed | INT | 00–18446744073709550000 | — |
| steps | INT | 201–10000 | — |
| cfg | FLOAT | 2.50–100 | — |
| sampler_name | COMBO | euler | 44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38 |
| scheduler | COMBO | simple | 9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3 |
| denoise | FLOAT | 1.000–1 | — |
| denoise_mode | COMBO | comfy | 2 options: comfy, diffusers |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LATENT | LATENT | — |