Nodes/ComfyUI-PuLID-Flux-Chroma/ChromaPulidFluxModelLoader
ComfyUI Node

ChromaPulidFluxModelLoader

The 1 GB model file your PuLID workflow won't run without

By nazgut·Created about a year ago·Updated about a year ago· 0
ChromaPulidFluxModelLoader
    • PULIDFLUX
    pulid_file

    ChromaPulidFluxModelLoader is the piece that makes the whole PuLID-Flux-Chroma pack do anything: it loads the actual PuLID-Flux weights. Without it you have a face detector, a CLIP encoder, and a clever apply node - and no identity model to run them through. One dropdown input (pulid_file), one PULIDFLUX output, and it's upstream of everything else in the pipeline.

    The dropdown lists every .safetensors file sitting in ComfyUI/models/pulid/. Drop the right one there and it shows up by name; leave the folder empty and the dropdown is empty, which is your first clue when a workflow imports "missing." The file this pack expects is pulid_flux_v0.9.1.safetensors, about 1.06 GB - ByteDance's last official PuLID-FLUX release, and the version whose higher ID fidelity the author's settings assume.

    How it works

    On execution it builds a PulidFluxModel - the ID encoder plus the perceiver attention blocks that later get grafted into your diffusion model - and loads the checkpoint's state dict into it. The deliberate design choice here is that the loader initializes the whole model up front, so changing parameters on the apply node doesn't force the encoder to rebuild every time. That's exactly why these packs split into "loaders" and an "apply": load once, tweak freely, patch the model each run.

    The actual identity injection happens later, in ChromapplyPulidFlux. This node's output is just the object that gets moved to your GPU and asked to turn an embedding into conditioning tokens.

    Getting the model

    The pack README points you at pulid_flux_v0.9.1.safetensors (1.06 GB), available from the official PuLID repo or its HuggingFace mirror. Put it here:

    mkdir -p ComfyUI/models/pulid
    # download pulid_flux_v0.9.1.safetensors into ComfyUI/models/pulid/
    

    Install the pack itself first if you haven't:

    cd ComfyUI/custom_nodes
    git clone https://github.com/nazgut/ComfyUI-PuLID-Flux-Chroma
    pip install -r requirements.txt
    

    Restart ComfyUI and the file appears in this node's dropdown.

    Where people get burned

    • Empty dropdown - the file is elsewhere, or in models/pulid but with a name the dropdown can't list (it only shows supported .safetensors). Double-check the folder path.
    • Wrong weights - the node loads whatever you give it, and other PuLID checkpoints are not drop-in. Stick with v0.9.1 for the settings the pack recommends.
    • Quantized weights - the author is blunt about this: fp16 recommended, fp8 acceptable, and avoid GGUF/nf4 quantizations. PuLID under a quantized Flux model is where iteration times swing wildly and quality degrades. If you're on a low-VRAM card, the fp8 Chroma checkpoint plus this node's internal bfloat16 handling is the path people actually use.

    One file in the right folder and this loader joins the "set it and forget it" club. The interesting knobs are all downstream.

    Categorypulid

    Inputs (1)

    NameTypeDefaultDescription
    pulid_fileCOMBO0 options:

    Outputs (1)

    NameTypeDescription
    PULIDFLUXPULIDFLUX