CFE Sigma Sampler
Build sigmas once, feed samplers for fun
- model
- sampler
- sigmas
CFE Sigma Sampler is the node that separates "what schedule am I using" from "what sampler am I using" - two questions most of ComfyUI forces you to answer in the same box. It takes a model, a sampler name, a scheduler name, steps, and denoise, and hands you back a ready-to-use SAMPLER object plus the precomputed SIGMAS.
Why would you want that split? Because steps, denoise, and scheduler are properties of the noise trajectory, and the sampler is a separate choice you can swap without recomputing anything. In a stock KSampler you can't reuse one schedule across three sampler experiments without re-running; with this node you build the sigmas once and feed the pair into the pack's CFE FLUX Sampler over and over, changing only the sampler on each pass. If you do a lot of sampler A/B testing - and honestly, for Flow-matching models you should, the "right" sampler depends on the model family - that decoupling is genuinely handy.
How it works
The math is the same build_sigmas helper the whole pack shares. It calls ComfyUI's internal calculate_sigmas with your scheduler over steps / denoise total steps, then slices the last steps + 1 entries. That tail-slice is the denoise trick: at denoise 1.0 you get a full schedule; at 0.5 you get the second half of one, which is how partial rework (img2img) works under the hood. The sampler_select dropdown maps to a SAMPLER object via ComfyUI's own sampler_object, and the node hands you both.
Two things to set:
- sampler_select - 34 choices straight from ComfyUI's sampler list. For Flux, the community consensus is Euler (never Karras on flow-matching models - aggressive schedules distort a near-straight trajectory).
- scheduler - 9 choices: normal, karras, exponential, sgm_uniform, simple, ddim_uniform, beta, linear_quadratic, kl_optimal. On Flux Dev, normal or beta; Karras and exponential are the classic footguns on flow-matching models.
- steps - default 20, right for Flux.
- denoise - default 1.0. Below 1.0 starts you partway down the schedule, which is your img2img knob.
Outputs: sampler (SAMPLER) and sigmas (SIGMAS) - wire both into CFE FLUX Sampler, or use the sampler object anywhere a SAMPLER port appears.
Install
No dependencies, nothing to download:
cd ComfyUI/custom_nodes
git clone https://github.com/CpreForEver/CFE_comfyui
Restart, grab it under CFE/sampling. Or ComfyUI Manager → CFE_comfyui.
The honest take
Worth noting: the menu calls this "CFE Sigma Sampler" while the underlying class is CFE_Sigma_Scheduler - the author renamed the display later and left the class behind. The important nuance is that it doesn't sample anything. It only prepares the ingredients; the actual denoising happens in CFE FLUX Sampler or the pipe sampler. If you expected a standalone KSampler, that's the disappointment. If you want to design noise schedules explicitly and reuse them, this is a clean little tool. Same caveat as every node here: one-person pack, no guarantees, and if Karras-on-Flux gives you garbage, the node did exactly what you asked.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | The model used for denoising the input latent | |
| sampler_select | COMBO | The name of the sampler being used | |
| scheduler | COMBO | The name of the scheduler being used | |
| steps | INT | 201–10000 | — |
| denoise | FLOAT | 1.000–1 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| sampler | SAMPLER | — |
| sigmas | SIGMAS | — |