IPAdapter FaceID Kolors
Face consistency for the Kolors model
- model
- ipadapter
- image
- image_negative
- attn_mask
- clip_vision
- insightface
- MODEL
- face_image
This is FaceID built specifically for Kolors. Kolors is Kwai's bilingual, SDXL-scale text-to-image model, and because it isn't plain SDXL under the hood, it needs its own FaceID apply node rather than reusing the standard one. If you're generating on Kolors and want a consistent face from a reference photo, this is the node - everywhere else, use IPAdapter FaceID.
Mechanically it's the FaceID story with a Kolors-shaped adjustment. Like all FaceID, it runs your reference through InsightFace to get an ArcFace identity embedding (facial geometry, not appearance) and injects that to hold a likeness. The difference is a third weight that accounts for how Kolors ingests the conditioning.
Inputs and outputs
The connections match the other FaceID nodes: model, ipadapter, image (the face), out to a patched MODEL plus a face_image - the cropped, aligned face InsightFace detected, which is your sanity check that detection worked. The weights:
- weight - overall strength, default 1.0 (range −1 to 3).
- weight_faceidv2 - the CLIP-structure contribution, live on v2-style models.
- weight_kolors - the Kolors-specific dial (default 1.0, range −1 to 5). This is what separates this node from the generic FaceID; it governs the Kolors path of the injection. Start at 1.0 and adjust if the identity is over- or under-asserting.
Then the standard weight_type, combine_embeds, start_at, end_at, embeds_scaling. Optional inputs: image_negative, attn_mask, clip_vision, and insightface. As with every FaceID node, if you didn't load through a unified loader you must feed insightface from the IPAdapter InsightFace Loader.
The setup gotchas, which are real here
Kolors FaceID is the fiddliest thing in the pack to get running, because it needs a specific stack of files that don't overlap with the usual IP-Adapter downloads:
- A Kolors-specific CLIP vision encoder -
clip-vit-large-patch14-336- not the ViT-H or bigG you use for SD1.5/SDXL. Wrong encoder, nothing works. - The Kolors FaceID adapter model (the community
Kolors-IP-Adapter-FaceID-Plusbuild), inComfyUI/models/ipadapter. - InsightFace with the antelopev2 model pack. Kolors FaceID is trained against antelopev2 specifically, and antelopev2 is not auto-downloaded - you fetch it by hand and unzip it into the InsightFace models folder. This is a frequent source of "it won't run" for Kolors FaceID.
And the license reality is unchanged from the rest of the FaceID line: it reads InsightFace embeddings, so it's non-commercial research use only. Fine for personal work, off-limits for anything you sell.
Installing the pack
ComfyUI Manager: search "IPAdapter plus", install, restart. Manual: cd ComfyUI/custom_nodes && git clone https://github.com/cubiq/ComfyUI_IPAdapter_plus, restart ComfyUI. Beyond the base pack you need insightface installed (plus the manually-downloaded antelopev2 pack), the Kolors FaceID adapter, and the clip-vit-large-patch14-336 encoder in ComfyUI/models/clip_vision. Honestly, this is a niche node for a niche model - worth it if you're committed to Kolors, but if you just want reliable no-training faces, SD1.5 FaceID is the smoother road.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| ipadapter | IPADAPTER | — | |
| image | IMAGE | — | |
| weight | FLOAT | 1.00-1–3 | — |
| weight_faceidv2 | FLOAT | 1.00-1–5 | — |
| weight_kolors | FLOAT | 1.00-1–5 | — |
| weight_type | COMBO | 15 options: linear, ease in, ease out, ease in-out, reverse in-out, weak input, +9 | |
| combine_embeds | COMBO | 5 options: concat, add, subtract, average, norm average | |
| start_at | FLOAT | 0.0000–1 | — |
| end_at | FLOAT | 1.0000–1 | — |
| embeds_scaling | COMBO | 4 options: V only, K+V, K+V w/ C penalty, K+mean(V) w/ C penalty | |
| image_negativeopt | IMAGE | — | |
| attn_maskopt | MASK | — | |
| clip_visionopt | CLIP_VISION | — | |
| insightfaceopt | INSIGHTFACE | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |
| face_image | IMAGE | — |