RUM FLUX.2 Diffusers Noise
A noise node that exists purely for bit-exactness
- noise
RUMFlux2DiffusersNoise is the pack's honesty check made into a node. It generates the initial latent noise the same way diffusers does - CPU torch.Generator, seeded, in bfloat16 - instead of letting ComfyUI use its own default random noise. For normal image-making that difference is invisible. For reproducing RUM's reference outputs pixel-for-pixel, it's the difference between "close" and "identical."
Here's the thing the pack's TECH doc spells out: ComfyUI's RandomNoise is not the same as diffusers' randn_tensor(..., generator=torch.Generator(device="cpu"), dtype=bfloat16). Different generator, different dtype path, different numbers. Every downstream step inherits that difference. RUM's whole diffusers-match path is about matching the upstream Flux2KleinPipeline numerics, and the noise is step zero of that chain. So this node exists to take step zero back.
Inputs and output
noise_seed- the seed. The README's sample workflows useseed=1; changing it changes the image, same as any seed.dtype-bfloat16(default),float16, orfloat32. BF16 is what the reference pipeline uses; the others exist for experiments.
Output is a NOISE object that plugs into SamplerCustomAdvanced's noise input, replacing a RandomNoise node.
The honest take
Do you need this node? If you're chasing pixel_equal=true against the upstream reference - yes, it's required, along with the RUM scheduler, Euler sampler, and VAE decode. If you just want RUM's anime results and don't care whether your pixels match some reference dump - then honestly, no. The default ComfyUI noise will give you a perfectly good RUM image, just not a bit-identical one. The pack even ships RUMRoundImageForSave for the same reason: these nodes are validation apparatus dressed up as workflow nodes.
The caveat in the README is worth internalizing: same seed, same prompt, different result? Check the noise path before blaming the model. If you swapped in a standard sampler or noise node, or you're running with --cpu-vae, you've left the reference path.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/Rinne414/ComfyUI-RUM
cd ComfyUI-RUM
pip install -r requirements.txt
Restart, download the models:
python scripts/download_models.py --comfy-root /path/to/ComfyUI --include-teacher-clip
No diffusers to install - that's the pack's whole design - but you need a recent ComfyUI (v0.26.2+) that supports the nested-latent and sampler APIs this node's chain relies on.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| noise_seed | INT | 10–18446744073709550000 | — |
| dtype | COMBO | bfloat16 | 3 options: bfloat16, float16, float32 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| noise | NOISE | — |