Load Eva Clip (PuLID)
No inputs, one output, and the reason PuLID keeps your prompt clean
- EVA_CLIP
The node that needs no settings and a big download
Load Eva Clip (PuLID) is the rare ComfyUI node with an empty settings panel. No provider, no dropdown, no sliders - you drag it onto the canvas, it outputs one EVA_CLIP object, and that's the whole UI. Everything interesting about it happens on first use, when it quietly downloads a large model file.
That file is EVA02-CLIP-L-14-336, a roughly 1.4 GB vision encoder from BAAI, fetched from the QuanSun/EVA-CLIP repo on Hugging Face and cached in your Hugging Face directory. It only downloads once, but don't judge the node by that first run - it looks frozen while it pulls the weights. This is also the only node in the pack that needs network access at runtime; offline ComfyUI installs can't get past it.
Why PuLID needs a second encoder at all
Here's the design that makes PuLID different from the face-adapters that came before it, and it's worth understanding because it explains half the pack. InsightFace gives you the identity - the biometric "this is this person" vector. But identity alone is a blunt instrument; it can't tell the model anything about skin texture, hair shape, or the details that make a face look real rather than generic. That's the job of the EVA-CLIP. It reads the appearance of the aligned face crop - with the background parsed out and turned gray so it doesn't leak into the conditioning - and produces the visual features that get concatenated with the InsightFace embedding before both go into the IDEncoder.
In plainer terms: InsightFace says "this is the person," EVA-CLIP says "and this is what they look like up close." Cut either one and you get a face that's recognizably close but missing the finish.
Wiring and expectations
The EVA_CLIP output feeds into the Apply PuLID node alongside the PULID, FACEANALYSIS and the reference image. It doesn't touch anything else, so there's no real wiring to get wrong - the only common mistake is forgetting to connect it at all, which leaves Apply PuLID complaining about a missing input.
Because this encoder is detail-hungry, it's also the hidden reason the reference image quality matters so much. The README is blunt about it: "The quality of the reference image is very important... Be sure to use a clean and sharp picture!" The EVA-CLIP faithfully encodes whatever you give it, including the blur and noise. A soft, phone-in-the-dark reference gets you a soft, muddy identity transfer, and no amount of weight tweaking in the Apply node fixes that - it's garbage-in at the encoder.
Install
Same pack install as the rest of PuLID:
cd ComfyUI/custom_nodes
git clone https://github.com/cubiq/PuLID_ComfyUI
Restart ComfyUI (or install via ComfyUI Manager, search "PuLID"). This node in particular pulls in the pack's timm and ftfy dependencies - the bundled eva_clip code is a trimmed copy of open_clip and wants both. If the node loads but errors on the download, check your HF cache is writable and you're not on a proxy-blocked network. First run is the test: watch for the download progress, and know that this is the slow node, once.
Inputs (0)
No inputs
Outputs (1)
| Name | Type | Description |
|---|---|---|
| EVA_CLIP | EVA_CLIP | — |