ComfyUI Node

AK XZ Range Float

Sweep cfg and denoise like you mean it

By akawana·Created 9 months ago·Updated 7 months ago· 4
AK XZ Range Float
    • range
    • xz_config
    typeCfg
    start0.00
    end0.05
    xz_steps1
    xz_config

    AK XZ Range Float is the float-flavored sibling of AK XZ Range Int from the ComfyUI-AK-XZ-Axis pack. Same idea, decimals instead of integers: it generates a list of float values, feeds them one at a time to a KSampler widget, and labels the results. Its two preset types are exactly the two float parameters every SD/SDXL workflow obsesses over - Cfg and Denoise.

    What it's for

    CFG sweeps are the classic use. Every model family has a sweet spot, and it's not always the default: roughly 5–9 on SD 1.5 and SDXL, 4–6 on Pony and Illustrious, and around 1 on anything guidance-distilled (Turbo/Lightning checkpoints and the like - at CFG 1 ComfyUI skips the negative pass entirely). If you've just swapped checkpoints, a labeled cfg strip from 4 to 9 tells you in one run where your new model actually wants to live instead of trusting a guess.

    Denoise is the img2img dial - how much of the input image gets destroyed and regenerated. It matters for refinements, inpainting-adjacent passes, and any "2.5D" relight work. It's also the parameter where tiny changes matter, which is exactly what a float range is for.

    How it works

    Set type to Cfg or Denoise, pick start and end, and the node builds a list of floats from start to end. Wire range (a FLOAT list) into the KSampler's cfg or denoise widget and it runs once per value. The xz_steps input controls how many intermediate values you get between the endpoints - and yes, unlike the int node, both endpoints are always included and values are rounded to the 0.05 step the field enforces, so you won't get junk like 4.33333 in your cfg.

    Same X/Z split as the rest of the pack:

    • X mode (xz_config left unconnected): xz_steps is the count. start=4, end=9, xz_steps=6[4.0, 5.0, 6.0, 7.0, 8.0, 9.0]. Six runs, each labeled.
    • Z mode (xz_config connected): the node matches one float per image slot in the existing config, letting denoise ride along as a second varying parameter under a cfg sweep (or vice versa).

    The outputs

    • range (FLOAT list) → the KSampler cfg or denoise widget.
    • xz_config (STRING) → AK XZ Axis Plot so every image comes back labeled with its value, or into the next Range/Batch node if you're stacking.

    That second hop is the nice part of this pack's design: the config string is how one sweep knows it's inside another, so combining "cfg across the top, denoise down the side" is just chaining nodes, not writing code.

    Install

    ComfyUI Manager → search AK XZ → install, or the usual:

    cd ComfyUI/custom_nodes
    git clone https://github.com/akawana/ComfyUI-AK-XZ-Axis.git
    

    Restart ComfyUI. No requirements to pip, no models to download - it's pure Python on ComfyUI's own torch/PIL. The repo ships xz_workflow_cfg.json, xz_workflow_denoise.json, and a combined xz_workflow_cfg_and_seed.json in /workflows/ so you can see both axes stacked in one graph.

    Gotchas worth knowing

    The node labels its output as the raw numbers ("Cfg: 6.00"), so when you're reading the plot, remember the value that produced the image, not the one you wish you'd used. Also bear in mind this is a young, lightly-trafficked pack (December 2025 release, small community footprint) - the README and demo workflows are the documentation. And one more honest note: with guidance-distilled checkpoints, sweeping cfg below ~2 is often a waste of VRAM because the model was trained to sit at 1; spend your sweep budget where the model can actually move.

    CategoryAK/XZ Axis

    Inputs (5)

    NameTypeDefaultDescription
    typeCOMBOCfg2 options: Cfg, Denoise
    startFLOAT0.00
    endFLOAT0.05
    xz_stepsINT1
    xz_configoptSTRING

    Outputs (2)

    NameTypeDescription
    rangeFLOAT
    xz_configSTRING