πββ¬ Flux Text Sampler
The sampler sweep node hiding in a save pack
- model
- conditioning
- latent_image
- latent
- params
The interesting node in this pack
If you found this because you typed "Flux Text Sampler" into Google, here's the honest pitch: it's a copy of cubiq's Flux Sampler Parameters node from ComfyUI Essentials - the pre-LoRA version - shipped inside this pack so it works without installing the whole Essentials suite. On its own it's genuinely useful; that it lives in a "prompt saver" pack is just where the author parked it.
One node replaces the usual pile of sampling plumbing: model-sampling patch, random noise, guider, sampler, scheduler, sigmas - all of it. And it hands you a params bundle on the side that the pack's Flux Prompt Saver reads to write proper A1111-style metadata. Sampling and record-keeping in one shot.
Why "Text"
Every tuning knob is a text field. sampler, scheduler, steps, guidance, max_shift, base_shift, and denoise are all STRING inputs. Type euler, dpmpp_2m into sampler and it runs both. That's the whole trick: comma-separated lists become sweeps, no parallel KSamplers to rig up. You can even type * for "every sampler" or prefix with ! to exclude (!euler). This is exactly what people use it for - hunting a good sampler/scheduler combo for a model, same job the original Essentials node was built for.
It also auto-detects the model family. Feed it Schnell and it patches with ModelSamplingAuraFlow, defaults to 4 steps, and guidance barely matters there (Schnell is guidance-distilled, so there's no real CFG to set). Feed it FLUX.1 Dev and it uses ModelSamplingFlux with max_shift 1.15 and base_shift 0.5 defaults, guidance 3.5. That 3.5 is the same default the community argues is a bit hot for Dev, so treat it as a starting point rather than gospel.
The inputs and outputs that matter
seed- the one plain INT input, and the thing the README brags about: it accepts a seed straight from a primitive node, no string parsing, no surprises.sampler/scheduler- text, defaultseuler/simple.steps- defaults to20(or4on Schnell).max_shift/base_shift- leave blank and it uses the sensible Flux defaults; you almost never touch these.conditioning- understands the "encoded" conditioning dict format, which is why the README can claim ImpactWildcardEncode and similar prompt nodes just work, and it captures the prompt text into the params.
Outputs: latent (LATENT) goes to VAE Decode β image β the saver. params (SAMPLER_PARAMS) goes straight into the Flux Prompt Saver's params input.
The trap: the cross product
Every field you multi-fill multiplies the run. Two samplers Γ three schedulers Γ two guidance values is twelve full renders in one go - and every result gets batched into a single latent, so VRAM climbs with the sweep. Start small, watch the progress bar, and don't blame the node when a four-field sweep eats your GPU.
Also, pre-LoRA means there's no LoRA input on the node itself. If your Flux workflow hinges on LoRAs, load them upstream with a regular LoRA loader - or just use the current Essentials node, which gained that input later. This copy is a convenience, not an upgrade.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/markuryy/ComfyUI-Flux-Prompt-Saver
then restart ComfyUI. Or in ComfyUI Manager, search "ComfyUI Flux Prompt Saver" and click install. No pip dependencies, no model downloads - it's pure Python against ComfyUI's own modules, so this is about as clean a custom-node install as exists. The only missing-node errors you can hit come from the pack's example workflow, which needs Impact Pack, ComfyUI-Custom-Scripts, and Comfyroll - not from the node itself.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | β | |
| conditioning | CONDITIONING | β | |
| latent_image | LATENT | β | |
| seed | INT | 00β18446744073709550000 | β |
| sampler | STRING | euler | β |
| scheduler | STRING | simple | β |
| steps | STRING | 20 | β |
| guidance | STRING | 3.5 | β |
| max_shift | STRING | β | |
| base_shift | STRING | β | |
| denoise | STRING | 1.0 | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| latent | LATENT | β |
| params | SAMPLER_PARAMS | β |