Nodes/HommageTools for ComfyUI/HT Multi Model Loader
ComfyUI Node

HT Multi Model Loader

Swap checkpoints from a text list

By ArtHommage·Created 2 years ago·Updated about a year ago· 4
HT Multi Model Loader
    • model
    • model_name
    • model_info
    model_list
    current_index0
    weight_dtypedefault

    The stock ComfyUI checkpoint loader has a dropdown, and a dropdown means a human. If you want to run the same workflow across three checkpoints in sequence - style comparison, batch variety, A/B testing - you want a loader that takes its model choice from a number instead. HT Multi Model Loader, from HommageTools, is that: you paste a list of model names into a text box, hand it an index, and it loads whichever checkpoint that index points to.

    How it works

    The inputs:

    • model_list - one checkpoint filename per line, exactly as they appear in your ComfyUI/models/checkpoints folder. This is a plain text list, not a dropdown, so it can be generated, edited, or driven by another node.
    • current_index - which line of the list to load, 0-based. This is the knob your automation turns.
    • weight_dtype - default, fp8_e4m3fn, fp8_e4m3fn_fast, or fp8_e5m2. The fp8 options load the weights in 8-bit to cut VRAM and speed up loading, at a small quality cost. If your GPU is tight, fp8_e4m3fn is the usual pick.

    It validates each name against the actual checkpoints folder, loads the model, and computes a SHA-256 hash of the file plus any embedded safetensors metadata.

    The outputs:

    • model - the loaded MODEL, ready for a KSampler.
    • model_name - the string name of what actually loaded.
    • model_info - metadata text: format, embedded tags, and the SHA-256 hash.

    The model_info hash is genuinely useful - it's the same kind of hash Civitai uses to identify a model, so you can confirm exactly which file you ran, which matters when two versions of a model have identical display names.

    The obvious use case

    Pair it with a loop or an iterator over current_index and you've got a batch job that renders the same prompt through N checkpoints, automatically. Feed the model_name into a console logger or filename builder and your output files self-label. That turns "run 12 manual generations swapping the dropdown" into one queue.

    One caveat: swapping models mid-queue means the CLIP and VAE change too - the node only outputs the model, so you'll still need the right CLIP for each checkpoint. In practice, with SD 1.5/XL setups where the checkpoint bundles its own text encoder, wiring a matching CLIP is usually a non-issue, but don't assume it.

    Installing it

    Part of HommageTools. ComfyUI Manager → search HommageTools, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/ArtHommage/HommageTools.git
    cd HommageTools && pip install -r requirements.txt
    

    Restart ComfyUI; it lives under HommageTools/loaders.

    Gotchas

    • Model names must match get_filename_list("checkpoints") exactly - subfolder paths included. A typo means "model not found" and a fallback, so copy names from the folder, don't retype them.
    • Every index change reloads the model from disk. Flipping indexes rapidly (per-batch, per-frame) will thrash your disk and VRAM; this is built for swapping between runs, not inside a tight loop.
    • The pack itself is alpha per its README, and the metadata extraction is best-effort - some files yield richer model_info than others.

    For automated model rotation it's the right tool, and the hash output alone makes it worth a slot if you care about reproducibility.

    CategoryHommageTools/loaders

    Inputs (3)

    NameTypeDefaultDescription
    model_listSTRING
    current_indexINT00–9999
    weight_dtypeCOMBOdefault4 options: default, fp8_e4m3fn, fp8_e4m3fn_fast, fp8_e5m2

    Outputs (3)

    NameTypeDescription
    modelMODEL
    model_nameSTRING
    model_infoSTRING