Set Sampler Params Extra
Save your sampler settings into image metadata, sampler and all
- extras
- sampler_params
- extras
Set Sampler Params Extra takes a sampler_params bundle - the six-value package this pack uses for sampler, scheduler, steps, denoise, seed, and cfg - and stores it under a key in the image's metadata extras. Of all the Set nodes, this one closes the loop on the pack's sampler story.
Here's the loop: Sampler Params bundles your settings, SamplerCustom (Sampler Params) runs on them, and this node makes sure the exact bundle survives saving and reloading. The pack's native infotext handling already stores sampler and scheduler by name, but the full bundle - steps, denoise, seed, cfg - persisted together, as one unit, under one key, is what makes "reload an image and reproduce its sampling" actually work. That's the reproduction workflow this pack was built around: save with Image Saver, reload with Image Reader, and the sampling config comes back intact.
Inputs and outputs
- key - the parameter line key for the stored bundle.
- sampler_params (optional) - the
IPT-SamplerParamsbundle to serialize. Wire this from aSampler Paramsnode (or aSampler Params Contextthat overrode one field) so the metadata records what the graph actually ran, not what you think it ran. - extras (optional) - the incoming extras bundle to merge into.
Output is the merged extras bundle. The matching Get Sampler Params Extra node parses the value back into a typed bundle on load, so the round-trip hands you a real sampler_params you can feed straight back into SamplerCustom (Sampler Params).
The trap it quietly protects you from
The most common reproduction failure in ComfyUI isn't missing settings - it's drift: you save an image, come back two weeks later, and the graph's defaults have changed or you've rebuilt it loosely, so the reloaded image "doesn't reproduce." A stored bundle fixes the settings side of that completely. It cannot fix the model side - if your checkpoint or LoRA files changed or vanished, no metadata saves you - but for the sampler configuration, the record is exact: seed, steps, denoise, cfg, sampler, scheduler, all in one place, all matching what was queued.
Install
Standard pack install:
cd ComfyUI/custom_nodes
git clone https://github.com/kinorax/comfyui-info-prompt-toolkit.git
cd comfyui-info-prompt-toolkit
pip install -r requirements.txt
Or ComfyUI Manager → search "ComfyUI-Info-Prompt-Toolkit" → install → restart. No models, no extra dependencies.
Where people get burned
Don't store the bundle and then run your sampler from a hand-wired duplicate - that's the drift this node exists to prevent, and it can't catch it if the actual sampling path never sees the bundle. Also, like every extras node: nothing persists unless a pack saver writes the file, and duplicate keys overwrite. And be aware the stored seed is the seed as configured - if your workflow randomizes seeds elsewhere, the metadata records whatever the bundle held at save time, which may or may not be the seed the sampler actually used.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| key | STRING | Parameter line key | |
| extrasopt | IPT-ImageInfoExtras | — | |
| sampler_paramsopt | IPT-SamplerParams | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| extras | IPT-ImageInfoExtras | — |