Nodes/comfyui_bmad_nodes/FromListGetModels
ComfyUI Node Runs on cloud

FromListGetModels

Unpack a model list into sampler branches — FromListGetModels

By bmad4ever·Created 3 years ago·Updated 9 months ago· 70
FromListGetModels
  • list
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL
  • MODEL

FromListGetModels is the model member of Bmad's unpack-everything list family: a MODEL list in, each model out on its own socket. It's the least-used of the FromListGetX set, and that's fair - model lists are an unusual type in stock ComfyUI. But when you do need it, nothing else fits.

The scenario is model comparison. ToModelList (same pack) gathers a set of candidate models - a base checkpoint and a few merged or LoRA-stacked variants - into a list. FromListGetModels fans them out, so each can feed its own sampler branch and you can generate the same prompt across all of them in one run, side by side. Or gather models at the start of a workflow and route different ones to different purposes without re-loading. It's the same "define the set once, route to N branches" idea as the other unpack nodes, just with the heaviest payload type in the graph.

How it works

Identical UnMakeListMeta machinery to the rest of the family - INPUT_IS_LIST set, implementation one line:

def get_all(self, list):
    return tuple(list)

Declared with 32 output slots, but it starts with zero visible outputs on the canvas. The pack's JS (ArbitraryOutputsFixedInputs.js) adds an outputs widget - set how many sockets you want (up to 16) or right-click → "update Outputs." The README's flag applies here just like everywhere else in this family.

Inputs and outputs

  • list - a MODEL list, forceInput, wired from ToModelList (same pack) or another model-list producer.
  • Outputs: up to 16 individual MODEL sockets, one per entry.

Keep the widget in sync with the list length - the node returns exactly as many models as the list holds.

Install

Ships in bmad4ever/comfyui_bmad_nodes. In ComfyUI Manager, search "comfyui_bmad_nodes" ("Bmad Nodes"), install, restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/bmad4ever/comfyui_bmad_nodes
cd comfyui_bmad_nodes
pip install -r requirements.txt

Restart ComfyUI afterward. No model files to download - requirements are opencv-python, scikit-image, simpleeval, gray2color.

Common issues

The big one is finding a list source. Stock ComfyUI almost never outputs a MODEL list, so if the list input stays empty, that's expected - you need ToModelList from this same pack to build one. Also note the memory angle: unpacking N models into N sampler branches means N models live in VRAM/CPU memory at once. If you're comparing five big checkpoints, you may run out of room; the pack doesn't do any smart offloading, it just passes objects around. And the usual family quirks apply - set the outputs widget, and if it's missing, hard-refresh the browser so the JS loads.

CategoryBmad/Lists/GetAll

Inputs (1)

NameTypeDefaultDescription
listMODEL

Outputs (32)

NameTypeDescription
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL
MODELMODEL