Nodes/ComfyUI Noise/Noisy Latent Image
ComfyUI Node Runs on cloud

Noisy Latent Image

Generating your own noise instead of leaving it to KSampler

By BlenderNeko·Created 3 years ago·Updated 2 years ago· 321
Noisy Latent Image
    • LATENT
    source
    seed0
    width512
    height512
    batch_size1

    Empty Latent Image gives KSampler a blank canvas and lets the sampler cook up its own noise internally, invisibly, every run. Noisy Latent Image does the same "here's your canvas size" job but hands you the noise itself as an actual latent you can look at, duplicate, blend, or store - which is the point of this whole pack. Slerp Latents, Inject Noise, Get Sigma: none of them can do anything to noise that's still trapped inside a sampler's black box. This node is what turns noise into something you can wire around the graph like any other value.

    How it works

    Under the hood it's a seeded random-noise generator producing a tensor with the same statistics as what a sampler would make on its own, at whatever size and batch count you ask for. Nothing fancier than that - the interesting part is that it exists as a standalone step at all, so you can generate it once and reuse it, rather than getting a fresh throwaway sample baked into every KSampler call.

    The inputs and outputs that matter

    source picks which device generates the random numbers - CPU or GPU - and it's the one setting here that actually bites people (more below). seed, width, height (both in pixels, stepping by 8, the usual latent constraint) and batch_size are exactly what they say. batch_size earns its own mention: the pack's variation-workflow trick is to generate a batch of noise for a seed you like, duplicate it, then generate a second batch of fresh noise and blend a little of it in with Slerp Latents. The single LATENT output is that noise - wire it into Slerp Latents to mix, into Inject Noise to add into an existing latent, or straight into a sampler with add_noise turned off so the sampler uses your noise instead of making its own.

    How to install it

    ComfyUI Manager: search "ComfyUI Noise", install, restart. Manual route:

    cd ComfyUI/custom_nodes
    git clone https://github.com/BlenderNeko/ComfyUI_Noise
    

    then restart. No model downloads, no heavyweight dependencies - it's a lightweight math pack, not a model loader.

    Common issues & troubleshooting

    CPU-generated and GPU-generated noise are genuinely different random sequences, even with the same seed. This isn't specific to this node - it's a known reproducibility gotcha across the wider ecosystem, one of the "less obvious" settings that can make the same seed produce a different image between two setups, alongside things like the attention parser. If you're trying to match a result from another machine or another UI, check source before you start second-guessing your seed.

    Keep width/height here matched to whatever your latent actually is downstream - a size mismatch is the most common reason Slerp Latents silently stops mixing (it falls back to passing one input straight through when shapes don't line up, without an error).

    And remember this node produces noise, not an image. Wire it directly into VAE Decode and you'll get static - it needs to pass through a sampler, or through Inject Noise and then a sampler, before it becomes a picture.

    Categorylatent/noise

    Inputs (5)

    NameTypeDefaultDescription
    sourceCOMBO2 options: CPU, GPU
    seedINT00–18446744073709550000
    widthINT51264–8192
    heightINT51264–8192
    batch_sizeINT11–64

    Outputs (1)

    NameTypeDescription
    LATENTLATENT