๐บ Lyonir Model Family
One Dropdown to Stop Your Video Graph Disagreeing With Itself
- model_family
This node has one widget and one output. It looks pointless. It isn't - it's the thing that stops your resolution node and your sampler from disagreeing about which model family they're working on, which is a bug that shows up as a hard error ten minutes into a render rather than as a warning when you wire it.
What it does, in one sentence
You pick auto, minimax, ltx, bernini, or wan once, and that value goes to the model_family inputs on ๐บ Lyonir Resolution and ๐บ Lyonir Sampler. As the node's own description puts it: "This selects the family only; it does not load or replace a model."
That's the crucial thing to get right - it is not a checkpoint loader and not a UNET loader. It has no MODEL output. It is a string, dressed up as a socket.
Why you'd want a node that just carries a string
Because the family changes the math of the canvas, and the two nodes that need to agree are on opposite ends of the graph.
The family decides the pixel grid the model family wants. LTX is the strict one: its spatial latents are compressed 32x, and LTX IC-LoRA workflows that use a downscale factor of 2 need both latent dimensions even, which pushes the safe pixel canvas to a 64-pixel grid. Every other supported family stays on a 32-pixel grid so the MiniMax path isn't disturbed. Get that wrong and you get an off-grid latent at best, a shape mismatch at worst.
Worse, the two nodes read the family separately. Resolution asks "how should I round 720 up?" and Sampler asks "what should I crop back to?" If Resolution thinks ltx and Sampler is still on auto - or the model metadata fools auto into guessing wrong - you've made two different assumptions about one canvas. One explicit value, one source of truth, both nodes reading the same wire. That's the entire value proposition, and for a graph with three model families sitting in it, that's enough.
The auto default is a reasonable place to start: it tries to detect MiniMax H3, LTX, or Bernini/Wan from model and latent metadata. But it's inference, and inference can be wrong. The README is blunt about the alternative - "Choose an explicit family when sharing resolution alignment across nodes." Once you know what you're rendering, stop letting the pack guess.
Inputs and outputs
One required input: model_family, a combo with five choices (auto, minimax, ltx, bernini, wan), defaulting to auto.
One output: model_family, returning the same five-value type. Wire it into the model_family input socket on Resolution and Sampler.
Since both of those nodes ship model_family as a widget by default, the wire doesn't exist until you make it. Right-click the node, Convert widget to input, and the dropdown becomes a socket. (You can usually drag directly off the widget in current frontends too.) Do it once per node and you're set. If you'd rather not bother, you don't have to - set all three dropdowns by hand and they'll behave identically. Right up until the day you change one and forget the others.
Install
ComfyUI Manager, pack title ComfyUI-Lyonir-Studio, or:
cd ComfyUI/custom_nodes
git clone https://github.com/Lyonir/ComfyUI-Lyonir-Studio.git
python -m pip install -r ComfyUI-Lyonir-Studio/requirements.txt
Windows portable users should run the requirements step with .\python_embeded\python.exe as shown in the pack README. Restart ComfyUI afterwards. This node has no models, no FFmpeg, no extra backend - it's the cheapest node in the pack to get running.
Where people trip
Expecting it to load something. It won't, and the pack's own tests and docs say so. If your workflow still errors about a missing model, the problem is upstream, not here.
auto plus a Resolution node you didn't wire. This is the classic one: auto on the Sampler, a literal family on Resolution, and a canvas that doesn't line up. Pick one family explicitly and fan it out.
Feeding it a family the pack doesn't support. The node validates against its five-value list and raises Unsupported model family: ... rather than quietly passing junk through. Good behavior, but it means you can't smuggle in a sixth family name.
Forgetting the browser refresh after a pack update. This one adds a node rather than a frontend widget, so a restarted ComfyUI is normally enough - but if the node doesn't show up in the node search at all, check the ComfyUI terminal for import errors before you blame the pack.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| model_family | COMBO | auto | 5 options: auto, minimax, ltx, bernini, wan |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| model_family | auto,minimax,ltx,bernini,wan | โ |