PVL Flux Dev Pulid Avatar (fal.ai)
One photo in, stylized avatars out — PuLID identity, zero local setup
- image
- IMAGE
Want a stack of stylized avatars of the same person - same face, ten different art directions - without training a LoRA, without installing InsightFace, without the 16 GB local footprint that PuLID-on-Flux normally demands? That's exactly what this node is. It wraps fal's comfy/Mini-Studio/flux-dev-pulid-avatar endpoint: you feed it one reference photo of a face, pick a style from 1 to 10, and it generates avatar variants that keep the identity. The heavy lifting - the PuLID face embedding, the FLUX.1 Dev generation, the batch - all happens on fal's servers.
It's part of the ComfyUI Assistant Node pack from pvlprk, and it's the pack's answer to the "I just want the avatar, I don't want to build the PuLID pipeline" impulse. PuLID itself is ByteDance's identity adapter - the one that copies a face while wrecking prompt adherence less than the alternatives - and normally running it locally means model downloads, the InsightFace dependency, and VRAM. Here, it's a node with an API key.
How it works
The node converts your image to a base64 data URI, submits it with prompt, style, and batch to the fal endpoint, and downloads the result. The payload is small: prompt, style, batch, and "ref image" (the photo), plus an optional seed. The response comes back in fal's ComfyUI-shaped format - a nested outputs structure - which the node walks through to find and download every image it can.
The style value (1–10, default 3) controls the stylization direction. The default prompt is "man with pink hair wearing shorts," which is a decent hint that you should probably replace it - this is a sample, not a suggestion. batch (1–4) sets how many variants you get per call, so one run is one billable request that returns several images. debug prints the whole flow to the console, including how long each call took.
The inputs that matter
image- the reference face. This is the input that does the work; PuLID builds the identity from it.prompt- the avatar's description. Keep the identity in the image and describe everything else.style- 1–10, default 3.batch- 1–4, default 1.seed(optional) - set it to make a given style+batch reproducible.
Output: one IMAGE (a concatenated batch if batch > 1).
Installing it
Part of pvlprk/comfyui-pvl-api-nodes. ComfyUI Manager (search "ComfyUI Assistant Node") or:
cd ComfyUI/custom_nodes
git clone https://github.com/pvlprk/comfyui-pvl-api-nodes
Set FAL_KEY (or FAL_API_KEY / FAL_CLIENT_KEY), restart, add credits.
Where people get burned
The pack's usual traps - unset FAL_KEY, blank placeholder images masking errors, check the console. The avatar-specific caveat is likeness: cloud PuLID gets the face recognizably right but not magically exact, so if you're generating brand assets for a real person, plan a refine pass on top (an inpainting pass with the reference in the prompt closes a lot of the gap). And batch multiplies cost in one request - 4 avatars is a bigger bill than 1, not a discount.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | man with pink hair wearing shorts | — |
| style | INT | 31–10 | — |
| batch | INT | 11–4 | — |
| image | IMAGE | — | |
| debug | BOOLEAN | false | — |
| seedopt | INT | 00–18446744073709550000 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |