Axis To Model
The converter that lets a grid swap checkpoints — the big one
- axis
- MODEL
Axis To MODEL is the same converter as Axis To MODEL's sibling spelling - the node that takes an AXIS_VALUE from XY Grid Helper and re-declares it as a MODEL so a grid row or column can actually swap checkpoints. This is the converter that makes the pack's flagship trick possible: one grid that sweeps models on one axis and prompts on the other, giving you the side-by-side comparison every model tester wants. "Axis To Model" and "Axis To MODEL" are one node; listings caught both casings.
How it works
- axis (required) - the
AXIS_VALUE, usually therow_valueorcolumn_valuefrom XY Grid Helper. - MODEL (output) - the same value, declared as a model type.
Pure pass-through. And here's the subtle part that makes model grids different from every other axis: the value has to already be a loaded MODEL object, which means the loading happens upstream of the grid, not inside it.
The pattern that actually works
The canonical model-sweep setup:
- Load several checkpoints up front, one loader node each.
- Feed their MODEL outputs into Any List to build the axis list.
- Feed that list into XY Grid Helper's
row_list(orcolumn_list). - On the output side, route the helper's value through Axis To MODEL and into your sampler.
The grid then re-wires which MODEL object reaches the sampler on each cell. This is why the pack can "XY plot basically anything" - the axis carries live objects, not names, so there's no fixed menu of axis types to be broken or missing.
The trap: people coming from Efficiency-nodes-style XY plots expect to pick model names from a dropdown. This pack doesn't do that. If your list holds filenames (strings), Axis To MODEL hands a string to the sampler and you get a cryptic error. The loaders must be wired in; the converter only types the wire.
The memory side
Because checkpoints are loaded up front, every model in the grid sits in VRAM/RAM for the whole sweep. Five SDXL checkpoints in one grid is a lot of memory - if you hit OOM, shrink the axis, or consider whether you actually need five models side by side.
The family note
The pack generates converters from axis-config.json (STRING, MODEL, INT, NUMBER, FLOAT, BOOLEAN, VAE, CLIP) and lets you add your own via custom-axis-config.json. MODEL is also the axis you'll most often see combined with Axis Pack - the README's packing example sweeps a unet, clip, and vae together, and the unet side of that comes back through this converter after Axis Unpack.
Installing it
Part of qq-nodes-comfyui:
cd ComfyUI/custom_nodes
git clone https://github.com/kenjiqq/qq-nodes-comfyui
Restart, or install qq-nodes-comfyui via ComfyUI Manager. Under the pack's QQNodes/XYGrid family.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| axis | AXIS_VALUE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |