Flux Train Validation Settings
Control the preview images during training
- validation_settings
When FluxTrainer pauses mid-run to show you how the LoRA is coming along, this node decides what those preview images look like. Resolution, how many sampling steps, guidance, the seed - all the generation settings for the validation samples live here. On its own it doesn't do anything; you plug its output into the validation loop, which then renders previews with these settings each time it checks in.
It's a small quality-of-life node with one genuinely important job: making your checkpoint previews comparable. Pin the seed here and every validation pass generates from the same starting noise, so when you flip between step 500, 1,000 and 1,500 you're watching the LoRA change - not the seed change underneath you.
How it works
It bundles a set of Flux generation parameters into a validation_settings object (type VALSETTINGS) that the training/validation loop consumes. Think of it as the "sampler settings" for the sample images, kept separate from training so you can tune the previews without touching the run.
The inputs that matter
For beginners, three of these carry most of the weight:
- seed - fix it (default 42) so previews are comparable across checkpoints. This is the single most useful setting here. A drifting seed makes it impossible to tell whether the LoRA improved or you just rolled a nicer image.
- width / height - the preview resolution, 512×512 by default. Small and fast is good for validation; you're checking progress, not making finals, and bigger previews cost training time. Bump it only if 512 hides the detail you're trying to judge.
- guidance_scale - 3.5 by default, which is also Flux's own default guidance. Fine to leave. Worth knowing: a lot of the Flux community thinks 3.5 runs a touch high, so if previews look over-contrasty or plasticky, that's the knob, not necessarily your LoRA.
The rest are lower-level Flux sampling controls: steps (sampling steps for the preview, default 20), and the flow-matching schedule parameters shift (on by default), base_shift (0.5) and max_shift (1.15). These match how Flux schedules denoising; the defaults are sensible and you rarely need to touch them for validation.
Output: validation_settings, which you wire into the validation_settings input of the Flux train/validate loop.
Installing ComfyUI-FluxTrainer
ComfyUI Manager: search "ComfyUI Flux Trainer", install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/kijai/ComfyUI-FluxTrainer
cd ComfyUI-FluxTrainer
pip install -r requirements.txt
Restart ComfyUI. Torch 2.4.0 or newer recommended. The example workflow uses ComfyUI-KJNodes.
Common issues
The most common "problem" isn't an error - it's people not wiring this in at all, letting the loop use its built-in defaults, and then getting previews they can't compare because the seed floats. If you care about reading your training curve by eye (you should), connect this node and pin the seed. That's 90% of why it exists.
The second thing is treating validation resolution like final-output resolution. Cranking previews to 1024×1024 makes every checkpoint slower to render, which eats into training. Keep validation small and cheap; do your real, big generations after the LoRA is done and saved.
And a scope note: these are the preview settings only. Nothing here changes how the LoRA trains - no resolution, guidance, or step value in this node affects the actual weights. It's a window into the run, not a lever on it. If the samples look off, decide first whether that's the LoRA (a training-config or dataset issue) or just an aggressive preview setting like high guidance, and fix the right one.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| steps | INT | 201–256 | sampling steps |
| width | INT | 51264–4096 | image width |
| height | INT | 51264–4096 | image height |
| guidance_scale | FLOAT | 3.501–32 | guidance scale |
| seed | INT | 420–18446744073709550000 | — |
| shift | BOOLEAN | true | shift the schedule to favor high timesteps for higher signal images |
| base_shift | FLOAT | 0.500–10 | — |
| max_shift | FLOAT | 1.150–10 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| validation_settings | VALSETTINGS | — |