Nucleus-Image Sampler
The sampler that treats Nucleus-Image like the flow-matching model it is
- model
- positive
- negative
- NUCLEUS_LATENT
This is the heart of the pack: Nucleus-Image Sampler is where the transformer, your two conditionings, and a pile of settings all meet to turn noise into a latent image. And it's the node where the most people screw up, because they bring SDXL habits with them. Stop. Nucleus-Image is a flow-matching model, and that changes which sampler and scheduler you should use.
How it works
Unlike a KSampler, there's no separate "Empty Latent" node - this thing builds its own noise from the width and height you give it, patch-packed the way Nucleus-Image expects (a 16-channel latent, 8x scale, 2x patches). Then it:
- Builds the noise schedule through ComfyUI's own
calculate_sigmas, using whatever scheduler you picked. - Calls ComfyUI's native sampler object for your chosen sampler name - so it supports all 44 stock samplers plus anything custom you've installed, not a hardcoded list.
- Wraps the model so the flow-matching velocity output becomes an x0 prediction for k-diffusion.
- Runs CFG (if
cfg > 1), applies CFG rescale if a CFG Rescale node set it, then offloads the transformer back to CPU when done.
The inputs that actually matter
- model -
NUCLEUS_MODELfrom Transformer Loader. - positive / negative -
NUCLEUS_CONDITIONING, both required. Note the trick: CFG only kicks in whencfg > 1.0; at cfg 1 or below the negative is ignored. Wire Zero Conditioning into the negative slot for unconditional runs. - width / height - 1024 defaults, 64-step increments, 256–4096. The README's sweet spots: 1024×1024, 1344×768 landscape, 768×1344 portrait, 1280×720.
- steps - default 50. Flow matching handles fewer steps, but the author tested 50.
- cfg - default 4.0, range 0–20.
- seed - full 64-bit range.
- sampler_name / scheduler_name - defaults
euler+normal. This is the tested combo, and it's not arbitrary.
The output is NUCLEUS_LATENT, which goes to the VAE Decode node.
Why euler + normal, and what not to do
The KB's sampler panel is unambiguous for flow-matching models: Euler-family samplers on conservative schedules, and Karras and exponential are universal failures - they aggressively redistribute denoising effort, which distorts a straight flow-matching trajectory. The pack author's own testing landed on euler + normal, which lines up with that guidance perfectly. So: leave the defaults, or experiment within the conservative family (dpmpp_sde, beta, sgm_uniform). If your Nucleus-Image output looks overcooked and weird, the first thing I'd suspect is a Karras scheduler someone dragged over from SDXL.
Installing and troubleshooting
Pack-wide install - ComfyUI Manager (search "Nucleus-Image") or:
cd ComfyUI/custom_nodes
git clone https://github.com/a180265/Nucleus-Image-comfyui-beta
restart. This node needs the transformer loaded (transformer_fp8.safetensors in models/diffusion_models/) and the encoder file in models/text_encoders/. The heavy dependencies (torch 2.11+ with F.grouped_mm, diffusers 0.38+, transformers 4.57+) are on you to install per the README.
OOM at this node is the classic failure - the model's experts want VRAM. Drop to the FP8 transformer and raise blocks_to_swap (see the Block Swap article). And if your images ignore the prompt entirely, check the negative wiring before you touch a single other setting. This is a beta, so the FP8 + 24GB + euler/normal path is the one verified by the author - start there and deviate deliberately.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| model | NUCLEUS_MODEL | — | |
| positive | NUCLEUS_CONDITIONING | — | |
| negative | NUCLEUS_CONDITIONING | — | |
| width | INT | 1024256–4096 | — |
| height | INT | 1024256–4096 | — |
| steps | INT | 501–200 | — |
| cfg | FLOAT | 4.00–20 | — |
| seed | INT | 00–18446744073709550000 | — |
| sampler_name | COMBO | euler | 44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38 |
| scheduler_name | COMBO | normal | 9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| NUCLEUS_LATENT | NUCLEUS_LATENT | — |