Nodes/ComfyUI-Kolors-MZ/IPAdapterFaceID(kolors) - Legacy
ComfyUI Node Runs on cloud

IPAdapterFaceID(kolors) - Legacy

Face consistency on Kolors, with the research-only asterisk

By MinusZoneAI·Created 2 years ago·Updated about a year ago· 579
IPAdapterFaceID(kolors) - Legacy
  • model
  • ipadapter
  • image
  • image_negative
  • attn_mask
  • clip_vision
  • insightface
  • MODEL
  • face_image
weight1.00
weight_faceidv21.00
weight_type
combine_embeds
start_at0.000
end_at1.000
embeds_scaling

If you want the same face across Kolors generations without training a LoRA, this is the node. MZ_IPAdapterFaceID is the FaceID variant of IP-Adapter, re-exported from cubiq's ComfyUI_IPAdapter_plus for the Kolors pack - and like the other MZ_IPAdapter* nodes, it's a legacy alias. The README now points everyone at cubiq's own updated pack instead. But if an existing workflow references it, here's the full picture.

How FaceID is different

Regular IP-Adapter encodes your reference with a CLIP vision model, capturing "what this image looks like." FaceID swaps that for a face-recognition embedding from InsightFace's ArcFace, which encodes who this is - facial geometry rather than visual similarity. That's a much stronger identity signal, but it's harder for the model to absorb, which is why FaceID ships with a companion LoRA you dial in separately. On this node that's the weight_faceidv2 input - a distinct weight for the FaceID v2 LoRA component, separate from the main weight. The face_image output is also a nice touch: it's the cropped detected face, so you can see exactly what the adapter latched onto.

Inputs and outputs

Required: model, ipadapter (from MZ_IPAdapterModelLoaderKolors, loaded with the FaceID weights), image (the reference face photo), then:

  • weight - main adapter strength (default 1).
  • weight_faceidv2 - strength of the FaceID v2 LoRA component (default 1). Typical combined setups run these in the 0.5–1.0 band.
  • weight_type, combine_embeds, start_at, end_at, embeds_scaling - same semantics as MZ_IPAdapterAdvancedKolors: use start_at/end_at to run the adapter early and keep detail.

Optional: image_negative, attn_mask, clip_vision, and insightface (an INSIGHTFACE object from MZ_IPAdapterInsightFaceLoader - if you don't wire one in, the node may try to load it from the IPADAPTER object). Outputs: MODEL → KSampler, plus face_image.

Models you need

Three downloads, all linked from the pack README:

# Kwai-Kolors/Kolors-IP-Adapter-FaceID-Plus
ipa-faceid-plus.bin            -> models/ipadapter/
clip-vit-large-patch14-336/pytorch_model.bin -> models/clip_vision/
# MonsterMMORPG/tools
antelopev2.zip -> unzip to models/insightface/models/antelopev2/

The antelopev2 ONNX models are InsightFace's face-detection models, and they drag the licensing caveat with them: FaceID weights are research-only, not for commercial use - that restriction comes from InsightFace's terms, not from Tencent or this pack. The CLIP-based IP-Adapter variants don't carry it; anything with "FaceID" in the name does. Also, the insightface Python package must be installed or the loader has nothing to run - that's the classic install headache with this family.

Common issues

FaceID on Kolors was never as battle-tested as on SD 1.5, where the community verdict is "great if you don't care about photorealism" - likeness lands in stylized territory and stalls before photoreal. If you're getting junk, check that insightface is installed, that antelopev2 is in the exact folder path above, and that the IPADAPTER object was loaded from the FaceID .bin, not the general one. And remember the legacy status: on a fresh workflow, use cubiq's updated ComfyUI_IPAdapter_plus.

CategoryMinusZone - Kolors/IPAdapter

Inputs (14)

NameTypeDefaultDescription
modelMODEL
ipadapterIPADAPTER
imageIMAGE
weightFLOAT1.00-1–3
weight_faceidv2FLOAT1.00-1–5
weight_typeCOMBO15 options: linear, ease in, ease out, ease in-out, reverse in-out, weak input, +9
combine_embedsCOMBO5 options: concat, add, subtract, average, norm average
start_atFLOAT0.0000–1
end_atFLOAT1.0000–1
embeds_scalingCOMBO4 options: V only, K+V, K+V w/ C penalty, K+mean(V) w/ C penalty
image_negativeoptIMAGE
attn_maskoptMASK
clip_visionoptCLIP_VISION
insightfaceoptINSIGHTFACE

Outputs (2)

NameTypeDescription
MODELMODEL
face_imageIMAGE