comfyanonymous / ComfyUI

The most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.
https://www.comfy.org/
GNU General Public License v3.0
57.79k stars 6.13k forks source link

Support for PhotoMaker-V2 #4089

Open Remember2015 opened 4 months ago

Remember2015 commented 4 months ago

Feature Idea

PhotoMaker had version v2 now, according to readme: "If the ID fidelity is not enough for you, please try our PhotoMaker V2 or stylization application, you may be pleasantly surprised." I found codes in comfy_extras/nodes_photomaker.py need to be updated, thanks

Existing Solutions

No response

Other

No response

KINGLIFER commented 4 months ago

Here here

bigcat88 commented 3 months ago

Can we ask at least about the approximate time of adding this to the ComfyUI repository?

To know that if this is not planned in the near future - then we will make workflows based on the ComfyUI-PhotoMaker-Plus node

Thanks.

pandayummy commented 1 month ago

Yes, need support for https://huggingface.co/TencentARC/PhotoMaker-V2

photomaker nodes https://github.com/comfyanonymous/ComfyUI/commit/d1533d9c0f1dde192f738ef1b745b15f49f41e02#diff-c643357dddaaba10bd1db84e4adeff0b2fdcc10be320aa52df892ed67fff0befR8

image

PhotoMakerLoader

Error(s) in loading state_dict for PhotoMakerIDEncoder: Unexpected key(s) in state_dict: "qformer_perceiver.perceiver_resampler.layers.0.0.norm1.bias", "qformer_perceiver.perceiver_resampler.layers.0.0.norm1.weight", "qformer_perceiver.perceiver_resampler.layers.0.0.norm2.bias", "qformer_perceiver.perceiver_resampler.layers.0.0.norm2.weight", "qformer_perceiver.perceiver_resampler.layers.0.0.to_kv.weight", "qformer_perceiver.perceiver_resampler.layers.0.0.to_out.weight", "qformer_perceiver.perceiver_resampler.layers.0.0.to_q.weight", "qformer_perceiver.perceiver_resampler.layers.0.1.0.bias", "qformer_perceiver.perceiver_resampler.layers.0.1.0.weight", "qformer_perceiver.perceiver_resampler.layers.0.1.1.weight", "qformer_perceiver.perceiver_resampler.layers.0.1.3.weight", "qformer_perceiver.perceiver_resampler.layers.1.0.norm1.bias", "qformer_perceiver.perceiver_resampler.layers.1.0.norm1.weight", "qformer_perceiver.perceiver_resampler.layers.1.0.norm2.bias", "qformer_perceiver.perceiver_resampler.layers.1.0.norm2.weight", "qformer_perceiver.perceiver_resampler.layers.1.0.to_kv.weight", "qformer_perceiver.perceiver_resampler.layers.1.0.to_out.weight", "qformer_perceiver.perceiver_resampler.layers.1.0.to_q.weight", "qformer_perceiver.perceiver_resampler.layers.1.1.0.bias", "qformer_perceiver.perceiver_resampler.layers.1.1.0.weight", "qformer_perceiver.perceiver_resampler.layers.1.1.1.weight", "qformer_perceiver.perceiver_resampler.layers.1.1.3.weight", "qformer_perceiver.perceiver_resampler.layers.2.0.norm1.bias", "qformer_perceiver.perceiver_resampler.layers.2.0.norm1.weight", "qformer_perceiver.perceiver_resampler.layers.2.0.norm2.bias", "qformer_perceiver.perceiver_resampler.layers.2.0.norm2.weight", "qformer_perceiver.perceiver_resampler.layers.2.0.to_kv.weight", "qformer_perceiver.perceiver_resampler.layers.2.0.to_out.weight", "qformer_perceiver.perceiver_resampler.layers.2.0.to_q.weight", "qformer_perceiver.perceiver_resampler.layers.2.1.0.bias", "qformer_perceiver.perceiver_resampler.layers.2.1.0.weight", "qformer_perceiver.perceiver_resampler.layers.2.1.1.weight", "qformer_perceiver.perceiver_resampler.layers.2.1.3.weight", "qformer_perceiver.perceiver_resampler.layers.3.0.norm1.bias", "qformer_perceiver.perceiver_resampler.layers.3.0.norm1.weight", "qformer_perceiver.perceiver_resampler.layers.3.0.norm2.bias", "qformer_perceiver.perceiver_resampler.layers.3.0.norm2.weight", "qformer_perceiver.perceiver_resampler.layers.3.0.to_kv.weight", "qformer_perceiver.perceiver_resampler.layers.3.0.to_out.weight", "qformer_perceiver.perceiver_resampler.layers.3.0.to_q.weight", "qformer_perceiver.perceiver_resampler.layers.3.1.0.bias", "qformer_perceiver.perceiver_resampler.layers.3.1.0.weight", "qformer_perceiver.perceiver_resampler.layers.3.1.1.weight", "qformer_perceiver.perceiver_resampler.layers.3.1.3.weight", "qformer_perceiver.perceiver_resampler.norm_out.bias", "qformer_perceiver.perceiver_resampler.norm_out.weight", "qformer_perceiver.perceiver_resampler.proj_in.bias", "qformer_perceiver.perceiver_resampler.proj_in.weight", "qformer_perceiver.perceiver_resampler.proj_out.bias", "qformer_perceiver.perceiver_resampler.proj_out.weight", "qformer_perceiver.token_norm.bias", "qformer_perceiver.token_norm.weight", "qformer_perceiver.token_proj.0.bias", "qformer_perceiver.token_proj.0.weight", "qformer_perceiver.token_proj.2.bias", "qformer_perceiver.token_proj.2.weight".

ltdrdata commented 1 month ago

photomaker-v2 relies on insightface, and including this dependency in ComfyUI is considered very risky, so it is deemed appropriate to keep it as a custom node.

JorgeR81 commented 1 month ago

The ComfyUI-PhotoMaker-Plus node, mentioned above, also supports, PhotoMaker-V2.

pandayummy commented 1 month ago

Just found IPAdapter FaceID easier to setup and use, so will forget about photomaker.