Nodes/qq-nodes-comfyui/Axis To Model
ComfyUI Node

Axis To Model

The converter that lets a grid swap checkpoints — the big one

By kenjiqq·Created 3 years ago·Updated about a year ago· 76
Axis To Model
  • 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 the row_value or column_value from 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:

  1. Load several checkpoints up front, one loader node each.
  2. Feed their MODEL outputs into Any List to build the axis list.
  3. Feed that list into XY Grid Helper's row_list (or column_list).
  4. 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.

CategoryQQNodes/XYGrid

Inputs (1)

NameTypeDefaultDescription
axisAXIS_VALUE

Outputs (1)

NameTypeDescription
MODELMODEL