📷ID Base Model Loader from hub 🤗
Pull an SDXL checkpoint straight off HuggingFace
- controlnet
- pipe
If you don't already have a good SDXL checkpoint sitting locally, this node saves you the trip - give it a HuggingFace repo ID and it downloads and assembles the base model for you, no manual file wrangling. It's one of two ways this pack builds the "pipe" that everything else in an InstantID workflow runs on; the other is ID Base Model Loader locally, if you'd rather point at a checkpoint you already have.
How it works
This isn't a generic checkpoint loader - it's building an InstantID-flavored pipeline object from the start. It pulls the SDXL weights from the hub repo you name, then wires in the IdentityNet ControlNet you feed it, producing a combined pipe object that later nodes (the IP-Adapter loader, then InstantID Generation) build on incrementally.
The inputs and outputs that matter
base_model_path is a HuggingFace repo ID string, not a local path - despite the name. The default is wangqixun/YamerMIX_v8, and that's not a random pick: wangqixun is Qixun Wang, one of InstantID's own paper authors, and this is the SDXL merge his team specifically found works well with InstantID. Unless you have a strong reason to swap it, it's a reasonable default to leave alone the first time you try this pack.
controlnet takes the MODEL-typed output from ID ControlNet Loader - IdentityNet has to be baked in at this stage, not applied later, so this input is required, not optional.
Output is pipe, typed MODEL. It feeds into Ipadapter_instantid Loader's pipe input next, which attaches the actual InstantID adapter weights before the pipeline reaches InstantID Generation.
Installing it
Comes with the rest of the pack: search ComfyUI Manager for ComfyUI-InstantID, or cd ComfyUI/custom_nodes && git clone https://github.com/ZHO-ZHO-ZHO/ComfyUI-InstantID.git, cd in, pip install -r requirements.txt, restart. No separate manual download for this node - it downloads the checkpoint itself, on first use, from whatever repo you point it at.
Common issues
First run is slow and looks stuck. It's downloading a full SDXL checkpoint (several GB) from HuggingFace the first time you run this with a given base_model_path - give it time, and watch your console output rather than the ComfyUI progress bar, which won't reflect download progress well.
Repo ID typo'd or private/gated. Since this field is free text with no dropdown or validation, a small typo in base_model_path fails quietly rather than obviously - double-check it matches the HuggingFace repo exactly, including case, if the node errors out at load time.
Wrong architecture entirely. This node assumes an SDXL-family checkpoint. Point it at an SD 1.5 or Flux repo and things will break downstream in confusing ways rather than with a clear "wrong architecture" error - InstantID and its IdentityNet controlnet are built specifically for SDXL.
Repeated downloads eating disk space. If you're experimenting with multiple base models, each unique base_model_path gets its own local cache. Worth cleaning out HuggingFace's cache directory occasionally if you're trying several checkpoints for comparison.
No controlnet wired in. This is a required input, not optional - if you haven't built an ID ControlNet Loader node first (and downloaded IdentityNet's weights for it), this node has nothing valid to connect to.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| base_model_path | STRING | wangqixun/YamerMIX_v8 | — |
| controlnet | MODEL | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| pipe | MODEL | — |