CyberKrea Empty Latent
Krea 2 won't take a stock empty latent — this is the one it expects
- latent
- width
- height
Krea 2 doesn't use the latent format SDXL or even Flux use. Its Qwen-Image VAE produces 16-channel latents, and the stock Empty Latent node hands your sampler a default channel count that isn't guaranteed to line up with that. Feed it the wrong thing and you get a shape error, or worse, silent garbage once sampling starts. CyberKrea Empty Latent exists so you never have to think about that again: it creates the exact 16-channel blank Krea 2 expects, at resolutions that actually belong to the model's family. It's the boring node a Krea 2 workflow can't do without.
It ships in the cyberdeliaAI/ComfyUI-CyberKrea-Sampler pack, designed to pair with CyberKrea Sampler - the empty latent feeds the sampler's latent_image. Nothing here calls an API or downloads weights. It builds a zeros tensor and hands you a couple of integers.
How it works
Under the hood it's a single torch.zeros call: a batch of 16-channel tensors at height // 8 × width // 8. The 8× comes from the Wan21-style VAE Krea 2 uses, and every resolution in the picker is divisible by 16 so the model's patch layout tiles cleanly. There's no sampling, no noise - it's a blank canvas in exactly the format the sampler wants.
That's the whole reason to reach for it over the stock node: the channel count is right, and the resolution list is right. Krea 2 isn't trained at arbitrary sizes, and guessing can waste a run.
The inputs that matter
size- the S (~1.0 MP), M (~1.4 MP), L (~1.7 MP), or XL (~2.1 MP) tier. It filters the resolution list, so pick a tier first.resolution- the concrete width × height and aspect ratio. 28 options, 7 per tier. The default is 1088×1600 (2:3), the portrait format Krea 2 gets tuned around.batch_size- 1 to 64 empty latents in one go. Each one costs real VRAM once you start sampling; 16 channels at 2 MP is heavier than it looks.
One genuinely nice touch: switch tiers and the front-end keeps your aspect ratio, so moving from L 1088×1600 up to XL lands you on the matching 2:3 slot instead of dumping you at square. The node also handles a stale dropdown value gracefully by matching the same aspect in the active tier rather than erroring.
Outputs
latent(LATENT) - the 16-channel blank, wired intoCyberKrea Sampler'slatent_image.width(INT) andheight(INT) - the resolved dimensions, handy for driving resolution-aware nodes downstream without hardcoding numbers.
Installing it
The pack is tiny and has zero Python dependencies of its own - the requirements list is empty, so it's just files to drop in. In ComfyUI Manager, search ComfyUI-CyberKrea-Sampler. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/cyberdeliaAI/ComfyUI-CyberKrea-Sampler
Restart ComfyUI and both nodes appear under the CyberKrea category.
One thing the pack does not do: it won't download Krea 2 for you. You still need the checkpoint, the Qwen3-VL text encoder (~8 GB) and the Qwen-Image VAE (~250 MB) - people routinely skip the encoder and VAE, then report the whole model as broken. That's a Krea 2 install issue, not a node issue.
Common issues
- Shape errors on Krea 2 - almost always a stock empty latent feeding the sampler. Swap in this node.
- Out of memory at high batch - drop
batch_sizeback to 1, or step down a tier. A 16-channel 64-batch tensor is a lot of VRAM before sampling even starts. - Nothing shows in the sampler preview - check the sampler's own
preview_method; this node's output is a latent, and it needs a VAE decode step downstream to become pixels.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| size | COMBO | L (~1.7 MP) | Krea 2 resolution tier; filters the resolution list. |
| resolution | COMBO | 1088x1600 (2:3) | Concrete Krea 2 width, height and aspect ratio. |
| batch_size | INT | 11–64 | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| latent | LATENT | — |
| width | INT | — |
| height | INT | — |