Nodes/ComfyUI-InstantID/📷Ipadapter_instantid Loader
ComfyUI Node

📷Ipadapter_instantid Loader

The node that actually attaches InstantID to your pipe

By ZHO-ZHO-ZHO·Created 3 years ago·Updated 2 years ago· 1,444
📷Ipadapter_instantid Loader
  • pipe
  • MODEL
Ipadapter_instantid_pathenter your path
filenameip-adapter.bin

Easy to underrate because of the slightly awkward name, but this is the node that turns a plain SDXL-plus-controlnet pipe into an actual InstantID pipe. It loads InstantID's own adapter weights - confusingly filed as ip-adapter.bin, but it's InstantID's model, not a generic IP-Adapter checkpoint - and attaches them to whatever base pipeline you built upstream.

How it works

By this point in the graph, your pipe already has an SDXL checkpoint and IdentityNet's controlnet baked in (from one of the ID Base Model Loader nodes). What's still missing is the actual identity-injection adapter - the decoupled cross-attention layer that takes InsightFace's face embedding and feeds it into the diffusion process. That's what this node bolts on. After this, the pipe is ready for InstantID Generation to actually run.

The inputs and outputs that matter

Ipadapter_instantid_path is the folder containing the adapter weights - free text, defaults to a placeholder ("enter your path"). filename defaults to ip-adapter.bin, which matches exactly what InstantID's official HuggingFace repo names the file, so you generally don't need to touch this unless you've renamed it. pipe takes the MODEL output from whichever base-model loader you used.

Output is MODEL, and it's the final assembled pipe - wire it straight into InstantID Generation's pipe input.

Installing it

Ships 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.

The weights this node loads are a manual download, separate from everything else: grab ip-adapter.bin from InstantX/InstantID on HuggingFace and put it somewhere like ComfyUI/custom_nodes/ComfyUI-InstantID/checkpoints - the README's own suggested location. Point Ipadapter_instantid_path at that folder.

Common issues

filename mismatch. If you renamed the file when downloading, or grabbed it from a mirror with a different name, update filename to match exactly - this node won't fuzzy-match, it looks for that literal filename inside the folder you gave it.

Confusing this with a regular IP-Adapter checkpoint. The .bin filename and the "IP-Adapter" name in the node title both invite the assumption this is interchangeable with cubiq's ComfyUI_IPAdapter_plus weights. It isn't - it's InstantID's own adapter, trained specifically to work with IdentityNet and InsightFace's ArcFace embeddings. Don't try to swap in a generic IP-Adapter checkpoint here.

pipe input empty or wrong type. This node has to run after one of the base model loaders, not before - if you're getting a type error on pipe, check that you've actually wired in the output of ID Base Model Loader from hub or ID Base Model Loader locally, and that node in turn has its own controlnet input satisfied.

Path points at the file, not the folder. Same footgun as the ControlNet loader earlier in the chain - Ipadapter_instantid_path wants the directory, and filename is where you specify the actual file inside it. Mixing those two up is an easy first-run mistake.

Commercial use. This is the node loading InstantID's core identity-injection weights, which lean on InsightFace's ArcFace embeddings underneath. That dependency is why anything built with this pack - including this node's output - carries InsightFace's non-commercial restriction, regardless of the wrapper code's own permissive license.

Category📷InstantID

Inputs (3)

NameTypeDefaultDescription
Ipadapter_instantid_pathSTRINGenter your path
filenameSTRINGip-adapter.bin
pipeMODEL

Outputs (1)

NameTypeDescription
MODELMODEL