Load Raw Latent (Creepybits)
Reopen a raw latent and skip the sampler entirely
- LATENT
Every now and then you want to go back to a generation before it became pixels. Load Raw Latent is the tool for that. It loads a .latent file from disk and hands you the raw latent tensor - no checkpoint loader, no prompt, no sampler. The image was already "made" on the sampling side; you're just picking it back up to decode it differently.
This pairs with the pack's Save Raw Latent node, and it exists to enable non-destructive workflows: save the latent after sampling, then experiment with different VAEs, decoders, or upscaling paths on the exact same generation without re-running the sampler. The KB's latent-space material calls this kind of thing out - VAE decode/encode is lossy, so skipping the round-trip preserves the exact state.
How it works
Give it a latent_path and it reads the raw bytes, guesses the dtype, and reshapes them into a (1, 4, 128, 128) tensor wrapped in the standard {"samples": ...} latent dict. The dtype guess is file-size based: a float32 128×128 latent has a predictable byte count, and if the size doesn't match, it assumes float16.
That path is the detail people get wrong: it's relative to your ComfyUI root directory, not your output folder. The default value is output/latents/MyLatent_00001.latent - note the output/ prefix. Save Raw Latent writes to ComfyUI/output/<folder>/<filename>_<timestamp>.latent, so a typical path back looks like output/latents/MyLatentBlend_20260816-101500.latent.
The output is a single LATENT, which you can wire straight into a VAE Decode to get your image back, or into any node that consumes a latent.
The honest limitations
This is a raw-bytes loader, not a general-purpose latent reader. Three things to know before you trust it:
- It only works with this pack's own saver. Save Raw Latent writes raw tensor bytes with no header or metadata. Other latent formats - including ComfyUI's own
.safetensorslatents - won't load correctly. - The shape is hardcoded to 4 channels. That fits SD 1.5 and SDXL latents at up to 1024px (which are
1×4×128×128). A Flux latent is 16 channels; feeding one of those here will silently produce garbage. - Failures return a zero latent, not an error. If the file can't be read, the node logs to the console and hands back a blank latent. You'll decode a flat gray image and wonder what happened.
Installing it
Part of ComfyUI-Creepy_nodes:
- ComfyUI Manager: search "Creepy_nodes" and install.
- Manual:
cd ComfyUI/custom_nodes git clone https://github.com/Creepybits/ComfyUI-Creepy_nodes.git
Restart ComfyUI. No dependencies beyond numpy/torch, which ComfyUI already ships.
Troubleshooting
If your decode comes out gray or noisy, check the console for the "Could not load raw latent" message - the file path was wrong or the shape didn't match. If the image is subtly wrong, it's the dtype guess (float32 vs float16) picking wrong; re-save from the source if you have it. And remember the path is ComfyUI-root-relative - the most common mistake is pasting a full Windows path like C:\ComfyUI\output\... in, which breaks the join logic.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| latent_path | STRING | output/latents/MyLatent_00001.latent | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LATENT | LATENT | — |