Seed
A seed node that hands out a ready-made noise object
- seed
- noise
Here's the thing most seed nodes don't tell you: the plain KSampler only wants an integer, but the custom sampler world - SamplerCustomAdvanced, CFG-free chains, anything that assembles a sampler by hand - wants a NOISE object, not a number. SBL_Seed is the node that gives you both. You type a seed, and out come two sockets: seed as an INT and noise as a ready-to-use NOISE object. Plus a little 🎲 Randomize button right on the node so you don't have to touch the dropdown dance.
The mechanism is simple and it's the right kind of simple. The node wraps ComfyUI's own Noise_RandomNoise(seed) constructor from comfy_extras.nodes_custom_sampler - the same thing core uses when it builds noise for a custom-sampler run - and hands you the result. So this isn't a reimplementation that can drift out of sync with the engine; it's the engine's own noise, exposed as a node. If you're running a workflow that expects a NOISE socket (a growing number of CFG-alternative and guider setups do), this is the honest way to feed it.
The seed INT socket meanwhile lets you fan one seed out to several places - a sampler, a filename, a note - from a single authoritative source, which is the classic "one value, many consumers" pattern that keeps graphs from silently disagreeing with themselves.
The inputs and outputs that matter
- seed (INT, 0 to 2⁶⁴−1) - the number itself. It flows through unchanged as the
seedoutput. - Output seed (INT) - wire to KSamplers or anything wanting a plain number.
- Output noise (NOISE) - wire to the
noiseinput on custom-sampler nodes likeSamplerCustomAdvanced.
The 🎲 Randomize button is frontend-only: it rolls a new seed up to 2⁵⁰, which is the practical cap ComfyUI uses for seeds, and refreshes the widget. No backend involved, instant.
The trap to avoid
The most common mistake is wiring the noise output into a normal KSampler's seed input - it won't fit, because a KSampler wants an INT, and the type mismatch is ComfyUI's way of telling you to use the seed output there. Use noise only where the node actually asks for it. And note this seed node has no control_after_generate dropdown of its own - that lives on KSampler widgets. If you randomize and lose a good seed, remember the classic recovery: drag the output image back into ComfyUI and the seed comes with it, embedded in the PNG.
Install
Ships in the SBL pack. ComfyUI Manager → search SBL, or git clone https://github.com/SoftByteLabs/SBL into ComfyUI/custom_nodes, then restart. No pip dependencies, no model files - the only "dependency" is the ComfyUI core module it calls, which is always there.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| seed | INT | 00–18446744073709550000 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| seed | INT | — |
| noise | NOISE | — |