Watch Video Tutorial:
The Flux PuLID workflow on ComfyUI via Pinokio. If you’ve ever wanted to achieve consistent facial features across multiple images in your AI projects, this guide is for you! A step-by-step approach to using Flux PuLID locally on ComfyUI via Pinokio, perfect for anyone creating character-based AI art, movies, or image series. By the end of this tutorial, you’ll be equipped to generate stunning, consistent character images without needing high-VRAM setups.
Installing and Setting Up:
We’ll walk you through the setup process, from downloading the Flux PuLID and EVA Clip models to setting up the Antelope V2 model for facial consistency.
Step-by-Step Installation:
Follow along as we install the necessary dependencies and run commands in Command Prompt to get Flux PuLID fully operational on ComfyUI.
Creating Consistent Faces:
Learn how to maintain the same facial characteristics across different images with varying styles, outfits, and settings.
Prompting for Variation:
We’ll show you how to use prompts effectively to generate different scenes with your character while keeping their face consistent. From close-up shots to cinematic looks, we’ll create unique images with a consistent character! Who Is This For? Whether you're an AI artist, designer, or filmmaker, this tutorial is ideal for anyone looking to maintain consistent character identities across various AI-generated visuals.
Why Use Flux PuLID?
The Flux PuLID model offers a lighter solution than VRAM-heavy methods, like LoRA training, and is accessible even on setups with limited VRAM (8GB GPU compatible). With this workflow, you can bring any character to life in countless settings without the need for complex training.
Example Walkthrough:
In the video, we’ll demonstrate how to use Flux PuLID with a reference image of actress Zendaya. See her in different settings—from sporty styles to cinematic poses—while maintaining facial consistency in every frame. This approach is ideal for creators who want diverse imagery without losing character identity!
Description
Version 1.0
FAQ
Comments (38)
I have the following error
I tried downloading it manually but still don't work
Downloading: "https://github.com/xinntao/facexlib/releases/download/v0.1.0/detection_Resnet50_Final.pth" to /Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/facexlib/weights/detection_Resnet50_Final.pth
python(31206) MallocStackLogging: can't turn off malloc stack logging because it was not enabled.
97%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▎ | 101M/104M [00:26<00:00, 4.00MB/s]
!!! Exception during processing !!! unexpected EOF, expected 1274965 more bytes. The file might be corrupted.
Traceback (most recent call last):
File "/Users/admin/pinokio/api/comfy.git/app/execution.py", line 323, in execute
output_data, output_ui, has_subgraph = get_output_data(obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
File "/Users/admin/pinokio/api/comfy.git/app/execution.py", line 198, in get_output_data
return_values = mapnode_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
File "/Users/admin/pinokio/api/comfy.git/app/execution.py", line 169, in mapnode_over_list
process_inputs(input_dict, i)
File "/Users/admin/pinokio/api/comfy.git/app/execution.py", line 158, in process_inputs
results.append(getattr(obj, func)(**inputs))
File "/Users/admin/pinokio/api/comfy.git/app/custom_nodes/ComfyUI-PuLID-Flux/pulidflux.py", line 282, in apply_pulid_flux
face_helper = FaceRestoreHelper(
File "/Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/facexlib/utils/face_restoration_helper.py", line 99, in init
self.face_det = init_detection_model(det_model, half=False, device=self.device, model_rootpath=model_rootpath)
File "/Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/facexlib/detection/__init__.py", line 22, in init_detection_model
load_net = torch.load(model_path, map_location=lambda storage, loc: storage)
File "/Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/torch/serialization.py", line 1040, in load
return legacyload(opened_file, map_location, pickle_module, **pickle_load_args)
File "/Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/torch/serialization.py", line 1281, in legacyload
typed_storage._untyped_storage._set_from_file(
RuntimeError: unexpected EOF, expected 1274965 more bytes. The file might be corrupted.
Prompt executed in 127.89 seconds
python(31221) MallocStackLogging: can't turn off malloc stack logging because it was not enabled.
got prompt
model weight dtype torch.bfloat16, manual cast: None
model_type FLUX
/Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/torchvision/models/_utils.py:208: UserWarning: The parameter 'pretrained' is deprecated since 0.13 and may be removed in the future, please use 'weights' instead.
warnings.warn(
/Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/torchvision/models/_utils.py:223: UserWarning: Arguments other than a weight enum or None for 'weights' are deprecated since 0.13 and may be removed in the future. The current behavior is equivalent to passing weights=None.
warnings.warn(msg)
!!! Exception during processing !!! unexpected EOF, expected 1274965 more bytes. The file might be corrupted.
Traceback (most recent call last):
File "/Users/admin/pinokio/api/comfy.git/app/execution.py", line 323, in execute
output_data, output_ui, has_subgraph = get_output_data(obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
File "/Users/admin/pinokio/api/comfy.git/app/execution.py", line 198, in get_output_data
return_values = mapnode_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
File "/Users/admin/pinokio/api/comfy.git/app/execution.py", line 169, in mapnode_over_list
process_inputs(input_dict, i)
File "/Users/admin/pinokio/api/comfy.git/app/execution.py", line 158, in process_inputs
results.append(getattr(obj, func)(**inputs))
File "/Users/admin/pinokio/api/comfy.git/app/custom_nodes/ComfyUI-PuLID-Flux/pulidflux.py", line 282, in apply_pulid_flux
face_helper = FaceRestoreHelper(
File "/Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/facexlib/utils/face_restoration_helper.py", line 99, in init
self.face_det = init_detection_model(det_model, half=False, device=self.device, model_rootpath=model_rootpath)
File "/Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/facexlib/detection/__init__.py", line 22, in init_detection_model
load_net = torch.load(model_path, map_location=lambda storage, loc: storage)
File "/Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/torch/serialization.py", line 1040, in load
return legacyload(opened_file, map_location, pickle_module, **pickle_load_args)
File "/Users/admin/pinokio/api/comfy.git/app/env/lib/python3.10/site-packages/torch/serialization.py", line 1281, in legacyload
typed_storage._untyped_storage._set_from_file(
RuntimeError: unexpected EOF, expected 1274965 more bytes. The file might be corrupted.
did you update your comfyui 2.0 to the latest version on pinokio?
We were able to fix this error using this: https://github.com/comfyanonymous/ComfyUI/issues/5601 just go to your E:\pinokio\api\comfyui.git\app\comfy\ldm\flux folder and edit the model file with notepad+ and search for "out = self.forward_orig" line 184 and remove ", transformer_options" at the end of that line and save changes this will fix this errors
i cant get the pulid model to load it comes as undefined, i have it in unet folder, ive updated comfy, i have the modules installed, do you know why its still coming up as undefined?
wait nevermind im dumb lol
@plus1 hope it worked eventually?
@plus1 hi, how did you solve it? Thank you
@tegav14617 I made a folder named "pulid" in the models folder (where unet and vae folders are also at) and then inside the pulid folder i put the pulid model inside.
@AIMotionStudio yes it did, i will say though, not the best at men, but great at women
@plus1 to get the best result for both men and women you need to increase the denoise 1 is the Maxium!
We were able to fix this error using this: https://github.com/comfyanonymous/ComfyUI/issues/5601 just go to your E:\pinokio\api\comfyui.git\app\comfy\ldm\flux folder and edit the model file with notepad+ and search for "out = self.forward_orig" line 184 and remove ", transformer_options" at the end of that line and save changes this will fix this errors
It seems like a good idea, but it doesn't work. The program doesn't load the Diffusion model, the dual clip loader, or the VAE. Additionally, the tutorial video doesn't list where to download these files or how to add them to the program.
i have included all the download link to the youtube video description, most people find it working after they installed the latest version of comfyui 2.0. i think the problem is with the old comfyui had not fixed the torch pip errors that usually comes with using comfyui. Try to check on the video again, follow all the steps and instal the latest Comfyui. hopefully it will fix the issues. Let me know if you have any other questions.
We were able to fix this error using this: https://github.com/comfyanonymous/ComfyUI/issues/5601 just go to your E:\pinokio\api\comfyui.git\app\comfy\ldm\flux folder and edit the model file with notepad+ and search for "out = self.forward_orig" line 184 and remove ", transformer_options" at the end of that line and save changes this will fix this errors
Make sure
1- ComfyUI is uptodate.
2 - Goto the "...ComfyUI\custom_nodes\ComfyUI-PuLID-Flux \" Directory.
3- On the address bar type "CMD" to go into Command prompt. (Black screen with current directory)
4 - On the prompt type "pip install -r requirements.txt" Make sure the python is installed.
5- After few minutes depending on the speed of the internet it will download everything and install the dependencies and create directories in COmfyUI.
6 - Type "pip list" and check the list if the items are listed in requirements.list
"facexlib, insightface, onnxruntime, onnxruntime-gpu, ftfy, timm"
A tutorial stated to put something similar. However, your feedback helped me greatly. Thank you. From what I've seen on at least two videos, they put the whole folder pathway and it gets confusing. This was simple and sweet. Thanks again!
Problem now is that the nodes won't load up. I tried fixing within the manger but no go..
Hey, I got an error
SamplerCustomAdvanced
forward_orig() takes from 7 to 9 positional arguments but 10 were given
Can you help me? I updated all notes and compfy is v0.2.7
i got this error too, you have to downgrade it back to v0.2.6.
@plus1I also got this error too. I'll try to downgrade comfy. Tks!
@plus1 Thank you. How can I downgrade it? I am using pinokio if that matters.
@Primaveri yes, it's works now. Thank you
@tegav14617 how did you downgrade? im getting the same exact error.
@lioncrud dont know if this helps but personally all i did was ask chat gpt how to do it, took a few asks but eventually it worked
@lioncrud in the comfyui folder, open the command line and type "git checkout v0.2.6"
We were able to fix this error using this: https://github.com/comfyanonymous/ComfyUI/issues/5601 just go to your E:\pinokio\api\comfyui.git\app\comfy\ldm\flux folder and edit the model file with notepad+ and search for "out = self.forward_orig" line 184 and remove ", transformer_options" at the end of that line and save changes this will fix this errors
@AIMotionStudio my hero!
I have downloaded the pulid model safetensors and placed it in the Pulid folder. But why does it always stop at the flux model Puled node?
Failed to validate the prompt for output 9:
* PulidFluxModelLoader 99:
- Value not in list: pulid_file: 'pulid_flux_v0.9.0.safetensors' not in []
it means it cant detect it, there are a few things I'd can check:
1. make sure the file is named exactly "pulid_flux_v0.9.0.safetensors".
2. Not sure if this is true but capitalization may matter, so if you named the folder Pulid maybe try lowercade pulid
Personally thats all i can think of besides making sure the pulid folder is in the models folder
@plus1 1. The name exactly correct (pulid_flux_v0.9.0.safetensors)
2. I have tried name folder by Pulid and pulid.
But, it still not work
Got it working. Found an obscure post that said "copy the insightface directory from the python site-packages folder, to the venv site-packages folder in comfyUI." So basically insightface is in the wrong place for non-portable comfy.
Having issues. Tried various fixes:
Missing Node Types
ApplyPulidFlux
PulidFluxEvaClipLoader
PulidFluxModelLoader
PulidFluxInsightFaceLoader
Please watch the video tutorial how to install Pulid correctly: https://youtu.be/xUduNl7-pE0
@AIMotionStudio That is the video I used to install. I followed the instructions to the letter.
I also ran the instructions at the bottom in case of having issues. They all said requirements already satisfied. I'm using comfyUI via StabilityMatrix, not portable.
wow! result is quite good!
P.S: to anyone that has a problem with their comfyui or node just use Pinokio and install your comyui from there
I got mixed result, the reference face is not enough present in the generated image (way less than the exemple) and this is when the image is'nt blurry (like really blurry).
do you have any tips on setting to use ?
It's so slow!
your workflow is amazing, but its possible to only use target image and writing prompt ? i don't want reference prompt if possible (workflow on video sound different) and what about had a lora ? (sorry if my question sound stupid im a new)
She is definitely Zendaya. Way too similar to use this.

