Nodes/Krea2 Multi-LoRA Composer/Krea2 Multi-LoRA SuperSampler
ComfyUI Node

Krea2 Multi-LoRA SuperSampler

Sample big, ship small — without a second KSampler

By lokitsar·Created 2 months ago·Updated 2 months ago· 1
Krea2 Multi-LoRA SuperSampler
  • model
  • positive
  • negative
  • latent_image
  • vae
  • supersample_plan
  • image
  • latent
  • working_image
  • diagnostics
seed0
steps8
cfg1.0
sampler_nameeuler
schedulersimple
denoise1.00
downscale_methodlanczos

The Krea2SupersampledKSampler (shown as Krea2 Multi-LoRA SuperSampler) is the partner node in the lokitsar/ComfyUI-Krea2-MultiLoRA-Composer pack. The Krea2CharacterRouter upsampled its internal latent to give faces more working resolution - and a normal KSampler happily spits out that larger latent, which leaves you at the wrong size. This node is the automatic cleanup: it samples the big latent, VAE-decodes, then downsizes the result back to the canvas you originally asked for. "Transparent supersampling" in the README's words - the output resolution never changes, the quality just gets better.

You wire it in a straight line after the router: Composer model → sampler model, conditioningpositive, latentlatent_image, supersample_plansupersample_plan, plus the Krea 2 VAE. Empty conditioning goes to negative - Krea 2 Turbo doesn't use negatives, but the input stays KSampler-compatible so existing habits keep working.

How it works

The node carries a KREA2_SUPERSAMPLE_PLAN from the router that encodes both the target canvas and the working (larger) resolution. On the way in it validates that the latent actually matches that plan - the code raises a hard error if the resolution doesn't line up, which is exactly the failure you want when you accidentally wire a latent from a different Composer. Then it runs the same KSampler machinery ComfyUI uses internally (euler/simple, 8 steps, CFG 1.0 by default), decodes with your VAE, and downsizes to the target using Lanczos, bicubic, area, or bilinear filtering.

The nice part: at supersample_scale 1.25, a 1216×832 composition is sampled internally at 1520×1040 but returned at 1216×832. The working render and the big latent are also exposed, so you're not locked into the downscaled version.

The inputs that matter

It's a KSampler with four extra faces. Set steps (default 8), cfg (1.0), sampler_name (euler) and scheduler (simple) to Krea 2 Turbo's official recipe - the defaults already point there. Two to actually think about:

  • supersample_scale on the router decides the internal cost: 1.0 is 1×, 1.25 is 1.56×, 1.5 is 2.25×, 2.0 is 4× VRAM. Start at 1.25; that's the "first likeness improvement" sweet spot.
  • downscale_method (default lanczos) - how the working image shrinks back to target. Lanczos is the sharp default; area is the token-efficient downsampler.

Outputs: image is the final downscaled render (wire this to Save/Preview), latent is the high-res latent, working_image is the full-res decode before shrinking, and diagnostics is a JSON dump of the settings it actually used.

Install

Same pack as the router - install it once and both nodes appear. ComfyUI Manager (search "Krea2 Multi-LoRA Composer") or:

cd ComfyUI/custom_nodes
git clone https://github.com/lokitsar/ComfyUI-Krea2-MultiLoRA-Composer

Restart ComfyUI and hard-refresh. No extra Python packages: the pyproject only lists torch and safetensors, both of which ComfyUI already ships.

Where people get burned

  • Mismatched latent errors - the sampler rejects a latent that doesn't match its supersample plan. Both latent_image and supersample_plan must come from the same Composer node.
  • VRAM creep - 2.0 means four times the pixel budget. Use it selectively or you're asking for OOM on mid-range cards; 1.25 is the daily driver.
  • Supersampling isn't an identity fix. More working resolution helps likeness, but if the routing is wrong the bigger canvas just renders the wrong face more clearly.
  • A plain KSampler works too, but at the wrong size - that's the trap this node exists to remove. If you see the working resolution as your output, you grabbed the router's latent with a stock sampler instead of this one.
CategoryKrea2/Multi-LoRA Composer

Inputs (13)

NameTypeDefaultDescription
modelMODEL
positiveCONDITIONING
negativeCONDITIONING
latent_imageLATENT
vaeVAE
supersample_planKREA2_SUPERSAMPLE_PLAN
seedINT00–18446744073709550000
stepsINT81–10000
cfgFLOAT1.00–100
sampler_nameCOMBOeuler44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38
schedulerCOMBOsimple9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3
denoiseFLOAT1.000–1
downscale_methodCOMBOlanczos4 options: lanczos, bicubic, area, bilinear

Outputs (4)

NameTypeDescription
imageIMAGE
latentLATENT
working_imageIMAGE
diagnosticsSTRING