diff --git a/.gitattributes b/.gitattributes index 886ac0c..d08a1ef 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,38 +1,81 @@ *.7z filter=lfs diff=lfs merge=lfs -text *.arrow filter=lfs diff=lfs merge=lfs -text *.bin filter=lfs diff=lfs merge=lfs -text -*.bin.* filter=lfs diff=lfs merge=lfs -text *.bz2 filter=lfs diff=lfs merge=lfs -text +*.ckpt filter=lfs diff=lfs merge=lfs -text *.ftz filter=lfs diff=lfs merge=lfs -text *.gz filter=lfs diff=lfs merge=lfs -text *.h5 filter=lfs diff=lfs merge=lfs -text *.joblib filter=lfs diff=lfs merge=lfs -text *.lfs.* filter=lfs diff=lfs merge=lfs -text +*.mlmodel filter=lfs diff=lfs merge=lfs -text *.model filter=lfs diff=lfs merge=lfs -text *.msgpack filter=lfs diff=lfs merge=lfs -text +*.npy filter=lfs diff=lfs merge=lfs -text +*.npz filter=lfs diff=lfs merge=lfs -text *.onnx filter=lfs diff=lfs merge=lfs -text *.ot filter=lfs diff=lfs merge=lfs -text *.parquet filter=lfs diff=lfs merge=lfs -text *.pb filter=lfs diff=lfs merge=lfs -text +*.pickle filter=lfs diff=lfs merge=lfs -text +*.pkl filter=lfs diff=lfs merge=lfs -text *.pt filter=lfs diff=lfs merge=lfs -text *.pth filter=lfs diff=lfs merge=lfs -text *.rar filter=lfs diff=lfs merge=lfs -text +*.safetensors filter=lfs diff=lfs merge=lfs -text saved_model/**/* filter=lfs diff=lfs merge=lfs -text *.tar.* filter=lfs diff=lfs merge=lfs -text +*.tar filter=lfs diff=lfs merge=lfs -text *.tflite filter=lfs diff=lfs merge=lfs -text *.tgz filter=lfs diff=lfs merge=lfs -text +*.wasm filter=lfs diff=lfs merge=lfs -text *.xz filter=lfs diff=lfs merge=lfs -text *.zip filter=lfs diff=lfs merge=lfs -text -*.zstandard filter=lfs diff=lfs merge=lfs -text -*.tfevents* filter=lfs diff=lfs merge=lfs -text -*.db* filter=lfs diff=lfs merge=lfs -text -*.ark* filter=lfs diff=lfs merge=lfs -text -**/*ckpt*data* filter=lfs diff=lfs merge=lfs -text -**/*ckpt*.meta filter=lfs diff=lfs merge=lfs -text -**/*ckpt*.index filter=lfs diff=lfs merge=lfs -text -*.safetensors filter=lfs diff=lfs merge=lfs -text -*.ckpt filter=lfs diff=lfs merge=lfs -text -*.gguf* filter=lfs diff=lfs merge=lfs -text -*.ggml filter=lfs diff=lfs merge=lfs -text -*.llamafile* filter=lfs diff=lfs merge=lfs -text -*.pt2 filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text +*tfevents* filter=lfs diff=lfs merge=lfs -text +images/overflow.png filter=lfs diff=lfs merge=lfs -text +images/show_case/1.png filter=lfs diff=lfs merge=lfs -text +images/show_case/10.png filter=lfs diff=lfs merge=lfs -text +images/show_case/11.png filter=lfs diff=lfs merge=lfs -text +images/show_case/12.png filter=lfs diff=lfs merge=lfs -text +images/show_case/14.png filter=lfs diff=lfs merge=lfs -text +images/show_case/15.png filter=lfs diff=lfs merge=lfs -text +images/show_case/16.png filter=lfs diff=lfs merge=lfs -text +images/show_case/17.png filter=lfs diff=lfs merge=lfs -text +images/show_case/18.png filter=lfs diff=lfs merge=lfs -text +images/show_case/19.png filter=lfs diff=lfs merge=lfs -text +images/show_case/2.png filter=lfs diff=lfs merge=lfs -text +images/show_case/21.png filter=lfs diff=lfs merge=lfs -text +images/show_case/22.png filter=lfs diff=lfs merge=lfs -text +images/show_case/23.png filter=lfs diff=lfs merge=lfs -text +images/show_case/24.png filter=lfs diff=lfs merge=lfs -text +images/show_case/26.png filter=lfs diff=lfs merge=lfs -text +images/show_case/27.png filter=lfs diff=lfs merge=lfs -text +images/show_case/28.png filter=lfs diff=lfs merge=lfs -text +images/show_case/29.png filter=lfs diff=lfs merge=lfs -text +images/show_case/3.png filter=lfs diff=lfs merge=lfs -text +images/show_case/30.png filter=lfs diff=lfs merge=lfs -text +images/show_case/31.png filter=lfs diff=lfs merge=lfs -text +images/show_case/32.png filter=lfs diff=lfs merge=lfs -text +images/show_case/34.png filter=lfs diff=lfs merge=lfs -text +images/show_case/35.png filter=lfs diff=lfs merge=lfs -text +images/show_case/36.png filter=lfs diff=lfs merge=lfs -text +images/show_case/38.png filter=lfs diff=lfs merge=lfs -text +images/show_case/39.png filter=lfs diff=lfs merge=lfs -text +images/show_case/4.png filter=lfs diff=lfs merge=lfs -text +images/show_case/40.png filter=lfs diff=lfs merge=lfs -text +images/show_case/41.png filter=lfs diff=lfs merge=lfs -text +images/show_case/42.png filter=lfs diff=lfs merge=lfs -text +images/show_case/43.png filter=lfs diff=lfs merge=lfs -text +images/show_case/44.png filter=lfs diff=lfs merge=lfs -text +images/show_case/45.png filter=lfs diff=lfs merge=lfs -text +images/show_case/46.png filter=lfs diff=lfs merge=lfs -text +images/show_case/47.png filter=lfs diff=lfs merge=lfs -text +images/show_case/48.png filter=lfs diff=lfs merge=lfs -text +images/show_case/49.png filter=lfs diff=lfs merge=lfs -text +images/show_case/50.png filter=lfs diff=lfs merge=lfs -text +images/show_case/6.png filter=lfs diff=lfs merge=lfs -text +images/show_case/7.png filter=lfs diff=lfs merge=lfs -text +images/show_case/8.png filter=lfs diff=lfs merge=lfs -text +images/show_case/9.png filter=lfs diff=lfs merge=lfs -text +diffusion_pytorch_model.safetensors filter=lfs diff=lfs merge=lfs -text diff --git a/README.md b/README.md index fb1c19f..e2adc62 100644 --- a/README.md +++ b/README.md @@ -1,47 +1,187 @@ --- -license: Apache License 2.0 - -#model-type: -##如 gpt、phi、llama、chatglm、baichuan 等 -#- gpt - -#domain: -##如 nlp、cv、audio、multi-modal -#- nlp - -#language: -##语言代码列表 https://help.aliyun.com/document_detail/215387.html?spm=a2c4g.11186623.0.0.9f8d7467kni6Aa -#- cn - -#metrics: -##如 CIDEr、Blue、ROUGE 等 -#- CIDEr - -#tags: -##各种自定义,包括 pretrained、fine-tuned、instruction-tuned、RL-tuned 等训练方法和其他 -#- pretrained - -#tools: -##如 vllm、fastchat、llamacpp、AdaSeq 等 -#- vllm +license: apache-2.0 --- -### 当前模型的贡献者未提供更加详细的模型介绍。模型文件和权重,可浏览“模型文件”页面获取。 -#### 您可以通过如下git clone命令,或者ModelScope SDK来下载模型 +
+ alibaba + alimama +
-SDK下载 -```bash -#安装ModelScope -pip install modelscope -``` -```python -#SDK模型下载 -from modelscope import snapshot_download -model_dir = snapshot_download('alimama-creative/SDXL-EcomID') -``` -Git下载 -``` -#Git模型下载 -git clone https://www.modelscope.cn/alimama-creative/SDXL-EcomID.git -``` +[中文版Readme](./README_ZH.md) -

如果您是本模型的贡献者,我们邀请您根据模型贡献文档,及时完善模型卡片内容。

\ No newline at end of file +EcomID aims to generate customized images from a single reference ID image, ensuring strong semantic consistency while being controlled by keypoints. + +This repository provides the EcomID method and model, combining the strengths of [PuLID](https://github.com/ToTheBeginning/PuLID) and [InstantID](https://github.com/instantX-research/InstantID) for better background consistency, facial keypoint control, and realistic facial representation with improved similarity. + +# EcomID Overview + +## EcomID Structure + alibaba + + +- **IP-Adapter of PuLID**: EcomID incorporates the ID-Encoder and cross-attention components from PuLID, trained with alignment loss. +This method effectively reduces the interference of ID embeddings on text embeddings within the cross-attention part, minimizing disruption to the underlying model's text-to-image capabilities. +- **InstantID’s IdentityNet Architecture**: Utilizing **a dataset of 2 million aesthetically pleasing portrait images**, IdentityNet enhances keypoint control, improving ID consistency and facial realism. During training, the IP-adapter is frozen, and only the IdentityNet is trained. Facial landmarks are used as conditional inputs, while face embeddings are integrated into IdentityNet via cross-attention. + +# Show Cases +## Comparison with Other Methods +### 1、Preserved Text-to-Image Capability + + + + + + + + + + + + + + +
PromptReference ImageEcomIDInstantID
girl, white skin, black hair, long wavy hair, in European style living room, Retro tone, decorations, depth of field.参考图像EcomID图像InstantID图像
+ +As shown above, EcomID ***preserves background generation abilities while minimizing stylization, greatly enhancing realism***. +The visualizations highlight more authentic portraits with improved background semantic consistency, showcasing EcomID's advantage in generating realistic images. + +### 2、Improved Facial Control and Consistency +
+ + + + + + + + + + + + + + +
PromptReference ImageEcomIDInstantIDPuLID
A close-up portrait of a man standing in the library, holding two smiling toddlers next to him.参考图像EcomID图像InstantID图像PuLID图像
+ +As shown above, EcomID employs keypoints as conditional inputs for training, ***allowing for precise adjustments of facial positions, sizes, and orientations***. This capability ensures that the generated portraits are more controllable while further enhancing facial similarity and the overall quality of the images. + +### More showcases +EcomID enhances portrait representation, delivering a more authentic and aesthetically pleasing appearance while ensuring semantic consistency and greater internal ID similarity (i.e., traits that do not vary with age, hairstyle, glasses, or other physical changes). + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PromptReference ImageEcomIDInstantIDPuLID
A close-up portrait of a little girl with double braids, wearing a white dress, standing on the beach during sunset.参考图像EcomID图像InstantID图像PuLID图像
A close-up portrait of a very little girl with double braids, wearing a hat and white dress, standing on the beach during sunset.参考图像EcomID图像InstantID图像PuLID图像
Agrizzled detective, fedora casting a shadow over his square jaw, a cigar dangling from his lips, his trench coat evocative of film noir, in a rainy alley.参考图像EcomID图像InstantID图像PuLID图像
A smiling girl with bangs and long hair in a school uniform stands under cherry trees, holding a book.参考图像EcomID图像InstantID图像PuLID图像
A very old witch, wearing a black cloak, with a pointed hat, holding a magic wand, against a background of a misty forest.参考图像EcomID图像InstantID图像PuLID图像
A man clad in cyberpunk fashion: neon accents, reflective sunglasses, and a leather jacket with glowing circuit patterns. He stands stoically amidst a soaked cityscape.参考图像EcomID图像InstantID图像PuLID图像
+ +### More Base Models, Resolutions, and Styles + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SDXL modelsPromptReference ImageEcomIDInstantIDPuLID
sd-xl-base-1.0girl, solo, brown hair, holding a little teddy bear on her hands, wearing a school uniform, standing in the library, cartoon style.参考图像EcomID图像InstantID图像PuLID图像
EcomXLA close-up portrait of a very little girl with double braids, wearing a hat and white dress, standing on the beach during sunset.参考图像EcomID图像InstantID图像PuLID图像
DreamShaperXLsolo, looking_at_viewer, smile, brown_hair, upper_body, open_clothes, teeth, open_jacket, black_jacket, blurry_background, realistic参考图像EcomID图像InstantID图像PuLID图像
leosam_xl_v7A close-up portrait of a girl, solo, dress, jewelry, beach and sea, pink_dress, realistic.参考图像EcomID图像InstantID图像PuLID图像
+ +### Notes +- Unless otherwise specified, the showcases are generated using the base model EcomXL, which is also highly compatible with various other SDXL-based models, such as [leosams-helloworld-xl](https://civitai.com/models/43977/leosams-helloworld-xl), [dreamshaper-xl](https://civitai.com/models/112902/dreamshaper-xl), [stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0) and so on. +- It works very well with SDXL Turbo/Lighting, [EcomXL Inpainting ControlNet](https://huggingface.co/alimama-creative/EcomXL_controlnet_inpaint) and [EcomXL Softedge ControlNet](https://huggingface.co/alimama-creative/EcomXL_controlnet_softedge). + +# How to use + +## ComfyUI + +- The EcomID_ComfyUI node has been released: [click here](https://github.com/alimama-creative/SDXL_EcomID_ComfyUI) + +# Training Details + +The model is trained on 2M Taobao images, where the proportion of human faces is greater than 3%. The images have a resolution greater than 800, and the aesthetic score is above 5.5. + +Mixed precision: fp16 + +Learning rate: 1e-4 + +Batch size: 2 + +Image size: 1024x1024 \ No newline at end of file diff --git a/README_ZH.md b/README_ZH.md new file mode 100644 index 0000000..ec3349a --- /dev/null +++ b/README_ZH.md @@ -0,0 +1,172 @@ +
+ alibaba + alimama +
+EcomID 旨在从单个ID参考图像生成定制的保ID图像,优势在于很强的语义一致性,同时受人脸关键点控制。 + +此仓库提供了 EcomID 方法和模型,方法上结合了 [PuLID](https://github.com/ToTheBeginning/PuLID) 和 [InstantID](https://github.com/instantX-research/InstantID) 的优点,以获得更好的背景一致性、面部关键点控制、更真实的面部以及更高的相似度。 + +# EcomID 概述 +## EcomID 结构 + alibaba + +- **PuLID 的 IP-Adapter**:EcomID 借鉴了 PuLID 的 ID-Encoder 和交叉注意力组件,其使用对齐损失训练而成。 +故而该方法有效减少了 ID embedding 对交叉注意力部分的文本 embedding的干扰,最小化对底层模型文本到图像能力的干扰。 + +- **InstantID 的 IdentityNet 架构**:利用 *200 万张美观的人像图像数据集*,训练了IdentityNet,增强了关键点控制,提高了 ID 一致性和面部真实感。在训练过程中,IP-adapter 被冻结,只有 IdentityNet 被训练。面部Keypoint用作条件输入,同时面部嵌入通过交叉注意力集成到 IdentityNet 中。 + +# 展示案例 +## 与其他方法的比较 +### 1、保留文本到图像能力 + + + + + + + + + + + + + +
Prompt参考图像EcomIDInstantID
女孩,白皮肤,黑头发,长卷发,在欧洲风格的客厅,复古色调,装饰品,景深。参考图像EcomID图像InstantID图像
+ +如上所示,EcomID ***保留了背景生成能力,同时最大限度地减少了风格化,从而大大增强了真实感***。 +如图可见,EcomID的背景语义一致性得到了改善,且在生成真实图像方面格外有优势。 + +### 2、改善面部控制和相似度 +
+ + + + + + + + + + + + + + +
Prompt参考图像EcomIDInstantIDPuLID
在图书馆前站着的男人的特写肖像,抱着两个微笑的幼儿参考图像EcomID图像InstantID图像PuLID图像
+ +如上所示,EcomID 使用关键点作为训练的条件输入,***允许精确调整面部位置、大小和方向***。这种能力确保生成的人像更加可控,同时进一步增强了面部相似性和图像的整体质量。 + +### 更多案例 +EcomID 提高了人像表现,提供了更真实和美观的外观,同时确保语义一致性和更好的内部 ID 相似性(即,不随年龄、发型、眼镜或其他身体变化而变化的特征)。 +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Prompt参考图像EcomIDInstantIDPuLID
一个双辫小女孩的特写肖像,穿着白色裙子,傍晚在海滩上。参考图像EcomID图像InstantID图像PuLID图像
一个非常小的女孩,双辫,带着帽子和白色裙子,傍晚在海滩上。参考图像EcomID图像InstantID图像PuLID图像
一个满脸胡茬的侦探,戴着帽子,阴影投在他方形的下巴上,嘴里叼着一根香烟,他的风衣唤起了电影黑色风格,在一个阴雨小巷里。参考图像EcomID图像InstantID图像PuLID图像
一个微笑的女孩,齐刘海和长发,穿着校服,站在樱花树下,手里拿着一本书。参考图像EcomID图像InstantID图像PuLID图像
一个非常老的女巫,穿着黑色斗篷,戴着尖顶帽,手握魔杖,在雾气缭绕的森林背景下。参考图像EcomID图像InstantID图像PuLID图像
一个身穿赛博朋克风格的男人:霓虹配件,反光太阳镜,和带有发光电路图案的皮夹克。他在湿润的城市风貌中冷静地站着。参考图像EcomID图像InstantID图像PuLID图像
+ +### 更多基础模型、分辨率和风格 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SDXL 模型Prompt参考图像EcomIDInstantIDPuLID
sd-xl-base-1.0女孩,单独,棕色头发,手里抱着一个小泰迪熊,穿着校服,站在图书馆里,卡通风格参考图像EcomID图像InstantID图像PuLID图像
EcomXL一个非常小的女孩的特写肖像,双辫,带着帽子和白色裙子,傍晚在海滩上。参考图像EcomID图像InstantID图像PuLID图像
DreamShaperXL单独,面向观众,微笑,棕色头发,上半身,开衫,牙齿,打开的外套,黑色夹克,模糊背景,真实感参考图像EcomID图像InstantID图像PuLID图像
leosam_xl_v7一个特写肖像,女孩,单独,裙子,珠宝,海滩和大海,粉色裙子,真实感。参考图像EcomID图像InstantID图像PuLID图像
+ +### 注意事项 +- 除非特别说明,大部分展示案例使用基础模型 EcomXL 生成;同时EcomID与其他基于 SDXL 的模型也高度兼容,例如 [leosams-helloworld-xl](https://civitai.com/models/43977/leosams-helloworld-xl)、[dreamshaper-xl](https://civitai.com/models/112902/dreamshaper-xl)、[stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0) 等。 +- 它与 SDXL Turbo/Lighting、[EcomXL Inpainting ControlNet](https://huggingface.co/alimama-creative/EcomXL_controlnet_inpaint) 和 [EcomXL Softedge ControlNet](https://huggingface.co/alimama-creative/EcomXL_controlnet_softedge) 的兼容性非常好。 +# 如何使用 +## ComfyUI +- 已发布 EcomID_ComfyUI 节点:[点击这里](https://github.com/alimama-creative/SDXL_EcomID_ComfyUI) +# 训练细节 +该模型在 200 万张淘宝图像上进行训练,其中人脸比例大于 3%。图像分辨率大于800,且美学评分超过 5.5。 + +混合精度:fp16 + +学习率:1e-4 + +批量大小:2 + +图像大小:1024x1024 diff --git a/configuration.json b/configuration.json new file mode 100644 index 0000000..159097f --- /dev/null +++ b/configuration.json @@ -0,0 +1 @@ +{"framework": "pytorch", "task": "others", "allow_remote": true} \ No newline at end of file diff --git a/diffusion_pytorch_model.safetensors b/diffusion_pytorch_model.safetensors new file mode 100644 index 0000000..9fa81d2 --- /dev/null +++ b/diffusion_pytorch_model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f21e607c9582b1df7a14f6b99597c4a6dda4cb37e4f6675db8985971e4b1cf2 +size 5004167864 diff --git a/images/images_alibaba.png b/images/images_alibaba.png new file mode 100644 index 0000000..244e9cc Binary files /dev/null and b/images/images_alibaba.png differ diff --git a/images/images_alimama.png b/images/images_alimama.png new file mode 100644 index 0000000..99a2c98 Binary files /dev/null and b/images/images_alimama.png differ diff --git a/images/overflow.png b/images/overflow.png new file mode 100644 index 0000000..a1e8776 --- /dev/null +++ b/images/overflow.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebaa7c5cbf9c4195f7d93972f09135ea4c334e25e33dee1802ef3ed81255f9d6 +size 5224531 diff --git a/images/show_case/1.png b/images/show_case/1.png new file mode 100644 index 0000000..89ef2d6 --- /dev/null +++ b/images/show_case/1.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e43d2b20a4de602e9c1000ce7c330a17adb605d1230756aeccb4b1b68f63ed5 +size 1571406 diff --git a/images/show_case/10.png b/images/show_case/10.png new file mode 100644 index 0000000..c62025f --- /dev/null +++ b/images/show_case/10.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:300f1693ea9b6cb150331580fc2645b4c1a418112f157504d65885e23f258560 +size 1338326 diff --git a/images/show_case/11.png b/images/show_case/11.png new file mode 100644 index 0000000..152214f --- /dev/null +++ b/images/show_case/11.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c300c4541401389b77a93837b7ba64fc46e68bd2e4404e76b51c29a92fd6353b +size 1456492 diff --git a/images/show_case/12.png b/images/show_case/12.png new file mode 100644 index 0000000..8c17f88 --- /dev/null +++ b/images/show_case/12.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ff5b4630526ccd739353a7bed75e851372d8c1f748eed524cb0ffbf0969f493 +size 1693087 diff --git a/images/show_case/14.png b/images/show_case/14.png new file mode 100644 index 0000000..562fa2a --- /dev/null +++ b/images/show_case/14.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f70fb76eb29b03c1a066723dbf1d936ebc0cce62043f903b531afe7454d8ec5 +size 1265039 diff --git a/images/show_case/15.png b/images/show_case/15.png new file mode 100644 index 0000000..791e4ea --- /dev/null +++ b/images/show_case/15.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:335ffa65763ca191eb7de2d4cb940c17a03b44103087558e06a436df2619fdd1 +size 1176956 diff --git a/images/show_case/16.png b/images/show_case/16.png new file mode 100644 index 0000000..7c367fa --- /dev/null +++ b/images/show_case/16.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:225d15087d256c11180a99e0406075d5a71a5b3d2321c409202a2a6af9f9cd7c +size 1253843 diff --git a/images/show_case/17.png b/images/show_case/17.png new file mode 100644 index 0000000..75867eb --- /dev/null +++ b/images/show_case/17.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:093788456e97328ee4d65b16a36a34e00412de38347e137c80ac660799e09e24 +size 1326580 diff --git a/images/show_case/18.png b/images/show_case/18.png new file mode 100644 index 0000000..84a1da2 --- /dev/null +++ b/images/show_case/18.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9547551c498048852002ade420dadc23576b53715607d2d936a0ba5dbc0856f +size 1283430 diff --git a/images/show_case/19.png b/images/show_case/19.png new file mode 100644 index 0000000..ff1b7d4 --- /dev/null +++ b/images/show_case/19.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6e14eb2b6cfcc5798febd9c6d1a13407faa20897c9d136cb8aab72b49b750cd +size 1311337 diff --git a/images/show_case/2.png b/images/show_case/2.png new file mode 100644 index 0000000..c68bf30 --- /dev/null +++ b/images/show_case/2.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3c5e42d215596440b6dbe332f7b677bd4c91733cca07f27baa4106b431c7d07 +size 1433573 diff --git a/images/show_case/20.png b/images/show_case/20.png new file mode 100644 index 0000000..1308b4c Binary files /dev/null and b/images/show_case/20.png differ diff --git a/images/show_case/21.png b/images/show_case/21.png new file mode 100644 index 0000000..cae2cbb --- /dev/null +++ b/images/show_case/21.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a45885e05b3448288ebdfe8e32450d76a5f91920c18b21ac957209b141c0be5 +size 1238537 diff --git a/images/show_case/22.png b/images/show_case/22.png new file mode 100644 index 0000000..70f54fd --- /dev/null +++ b/images/show_case/22.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c58103554408e11971e0e362a5faa900c76098ee400741e0703f55c596319b1 +size 1290336 diff --git a/images/show_case/23.png b/images/show_case/23.png new file mode 100644 index 0000000..564ac73 --- /dev/null +++ b/images/show_case/23.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9da88811d9a9c90c0e1111a5104ca5a71e15c422438d14123ae5667070dac4ea +size 1205266 diff --git a/images/show_case/24.png b/images/show_case/24.png new file mode 100644 index 0000000..02dd950 --- /dev/null +++ b/images/show_case/24.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be2ba25490d50ed1020d5465354060bdaf4751399d3fc88690e40473b7e8d261 +size 1294434 diff --git a/images/show_case/25.png b/images/show_case/25.png new file mode 100644 index 0000000..753eecf Binary files /dev/null and b/images/show_case/25.png differ diff --git a/images/show_case/26.png b/images/show_case/26.png new file mode 100644 index 0000000..38111c4 --- /dev/null +++ b/images/show_case/26.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f228c5404e9d70b118838c25796e7efb3db293f21a248769e59b79c575107c7d +size 1345775 diff --git a/images/show_case/27.png b/images/show_case/27.png new file mode 100644 index 0000000..313dd86 --- /dev/null +++ b/images/show_case/27.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9b824cb467e68d402c609f17e25e900681ca956c1470c8f9aead838f8bb92b2 +size 1339514 diff --git a/images/show_case/28.png b/images/show_case/28.png new file mode 100644 index 0000000..d35602a --- /dev/null +++ b/images/show_case/28.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52056e55861a952d707ba33ab44e98d21fb1d22cc45bef08d68fd12a11484c9f +size 1392162 diff --git a/images/show_case/29.png b/images/show_case/29.png new file mode 100644 index 0000000..9009d5c --- /dev/null +++ b/images/show_case/29.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69d1a0a595ff28ed8f5f4eb149f53f01b3a350de7cc41b62a134916bb0e499a7 +size 1237319 diff --git a/images/show_case/3.png b/images/show_case/3.png new file mode 100644 index 0000000..074aacb --- /dev/null +++ b/images/show_case/3.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7debe370cca0677c6e35284b7dee66ba72d0bb6efbd594e6249d0d6c7187c596 +size 1426849 diff --git a/images/show_case/30.png b/images/show_case/30.png new file mode 100644 index 0000000..f69d5fc --- /dev/null +++ b/images/show_case/30.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbb57ee015b2405e2b14a75f5357f547ce304eed6a416cf57657ce365af8fc96 +size 1300682 diff --git a/images/show_case/31.png b/images/show_case/31.png new file mode 100644 index 0000000..d7a209f --- /dev/null +++ b/images/show_case/31.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6872b83fea21f9d4111440fbc9ee0feef9a93be5743148a82eb3eb36ad6bdd7f +size 1340355 diff --git a/images/show_case/32.png b/images/show_case/32.png new file mode 100644 index 0000000..17d30fa --- /dev/null +++ b/images/show_case/32.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ebd55e792473686fdef75c7694a432bafc868c6e76c50a0e1e4d5717dd3f7de +size 1359122 diff --git a/images/show_case/33.png b/images/show_case/33.png new file mode 100644 index 0000000..9d79a52 Binary files /dev/null and b/images/show_case/33.png differ diff --git a/images/show_case/34.png b/images/show_case/34.png new file mode 100644 index 0000000..969b2ce --- /dev/null +++ b/images/show_case/34.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c5a0f918a602879df930c9b6d601232591084d7243c147b6b13c288d3e0dac9 +size 1193513 diff --git a/images/show_case/35.png b/images/show_case/35.png new file mode 100644 index 0000000..cf92ded --- /dev/null +++ b/images/show_case/35.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c22bb03215ae14261c605eced891d5aacd2c01237116639031bd287c9d7b7d70 +size 1082979 diff --git a/images/show_case/36.png b/images/show_case/36.png new file mode 100644 index 0000000..00e50b0 --- /dev/null +++ b/images/show_case/36.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:126d7181272c31de0d25b67b74ea20f43f98c3bd58a4eaea4e9c40237ce029c4 +size 1153798 diff --git a/images/show_case/37.png b/images/show_case/37.png new file mode 100644 index 0000000..e55d411 Binary files /dev/null and b/images/show_case/37.png differ diff --git a/images/show_case/38.png b/images/show_case/38.png new file mode 100644 index 0000000..77427bd --- /dev/null +++ b/images/show_case/38.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7a8e60781c8c94d7652fcbaf728216268a07ae3eed8c39020419edf7e27a0a5 +size 1264669 diff --git a/images/show_case/39.png b/images/show_case/39.png new file mode 100644 index 0000000..30ecd24 --- /dev/null +++ b/images/show_case/39.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c449ecd070bfb89864a974c6577d0bfceac82bd0c17389d3db793f1500600e1f +size 1205154 diff --git a/images/show_case/4.png b/images/show_case/4.png new file mode 100644 index 0000000..55cb40d --- /dev/null +++ b/images/show_case/4.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:521c17e25c2bb0efe546dce542ae58b11430262a2e3291c1e2a25ada117f8c2c +size 1321659 diff --git a/images/show_case/40.png b/images/show_case/40.png new file mode 100644 index 0000000..c3efe50 --- /dev/null +++ b/images/show_case/40.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a02e68816bea8d35c8315388cac4ec259543cc62e29320008b6c0924cf7ac596 +size 1367543 diff --git a/images/show_case/41.png b/images/show_case/41.png new file mode 100644 index 0000000..475d863 --- /dev/null +++ b/images/show_case/41.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28181e8aed89f5c030ea33b5942aa37e129274447290a442c5edd309ad85b869 +size 1131241 diff --git a/images/show_case/42.png b/images/show_case/42.png new file mode 100644 index 0000000..365f908 --- /dev/null +++ b/images/show_case/42.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ccf66aed8c63931138d9d0c3440460742730eb1e25bfa47c00852718c04a0cc +size 1123194 diff --git a/images/show_case/43.png b/images/show_case/43.png new file mode 100644 index 0000000..8beedc5 --- /dev/null +++ b/images/show_case/43.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:169718b1de6b7607e765de3149865fab13cd8abc1de5d4c8e4ffb98c03ecc1e8 +size 1195329 diff --git a/images/show_case/44.png b/images/show_case/44.png new file mode 100644 index 0000000..a99315d --- /dev/null +++ b/images/show_case/44.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b18f48306c0506085120fd3b98d3640f4737498393187c4afbe81dd6dfd839a +size 1437651 diff --git a/images/show_case/45.png b/images/show_case/45.png new file mode 100644 index 0000000..4a63255 --- /dev/null +++ b/images/show_case/45.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:223891bd58b91e8d105f75f4c795ef1a45f3bc04b59ae1355d682a065db53256 +size 1116152 diff --git a/images/show_case/46.png b/images/show_case/46.png new file mode 100644 index 0000000..e13ae96 --- /dev/null +++ b/images/show_case/46.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f51185ffbd9d1d49d8eec9d77711c736f5efc25fe27a85e8ab50696126c605a +size 1267921 diff --git a/images/show_case/47.png b/images/show_case/47.png new file mode 100644 index 0000000..621c13e --- /dev/null +++ b/images/show_case/47.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80c2c87ed58041c863ad5c3a684e1d4ea65bc879f9b618dfd6ce3d9894f400e5 +size 1427811 diff --git a/images/show_case/48.png b/images/show_case/48.png new file mode 100644 index 0000000..6c70942 --- /dev/null +++ b/images/show_case/48.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b61a0d0fe85f3ba63a3937187f55e09e84084cdd45d5c378fcc50379f9856ac +size 1203164 diff --git a/images/show_case/49.png b/images/show_case/49.png new file mode 100644 index 0000000..944737d --- /dev/null +++ b/images/show_case/49.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b489325adaa34c7bb61604162aa6713116219757a5d9c8286f5d0ed255ef1924 +size 1184421 diff --git a/images/show_case/50.png b/images/show_case/50.png new file mode 100644 index 0000000..4c794f8 --- /dev/null +++ b/images/show_case/50.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd19dee3122c1d017ea4584fa8fcedcb319a94bca00df0107ed8654609fae67d +size 2177944 diff --git a/images/show_case/6.png b/images/show_case/6.png new file mode 100644 index 0000000..807ac56 --- /dev/null +++ b/images/show_case/6.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13e561a8b2cde60ab816296d3cba8d79995130544d9de2cf3f99a2981837e5f8 +size 1412932 diff --git a/images/show_case/7.png b/images/show_case/7.png new file mode 100644 index 0000000..f900446 --- /dev/null +++ b/images/show_case/7.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bea1494a844192b22643bc3c6174a2ea41a71d561a4f501f03fdd95ab71324e +size 1386609 diff --git a/images/show_case/8.png b/images/show_case/8.png new file mode 100644 index 0000000..313ed9c --- /dev/null +++ b/images/show_case/8.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01c8e12cdead150bdba22e4fd11dd017a7c565496bdb7e0d87865ff4f67dc756 +size 1295382 diff --git a/images/show_case/9.png b/images/show_case/9.png new file mode 100644 index 0000000..b38644f --- /dev/null +++ b/images/show_case/9.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f2c0900d13b21d69671cab7ded81a61ae915fbd9e8b9cb26b5aab1da0d25f3d +size 1618499 diff --git a/workflows/ecomid_basic_workflow.json b/workflows/ecomid_basic_workflow.json new file mode 100644 index 0000000..2c4b8a7 --- /dev/null +++ b/workflows/ecomid_basic_workflow.json @@ -0,0 +1,800 @@ +{ + "last_node_id": 15, + "last_link_id": 18, + "nodes": [ + { + "id": 1, + "type": "InstantIDModelLoader", + "pos": [ + 1009.44140625, + 227.6875 + ], + "size": { + "0": 315, + "1": 58 + }, + "flags": {}, + "order": 0, + "mode": 0, + "outputs": [ + { + "name": "INSTANTID", + "type": "INSTANTID", + "links": [ + 3 + ], + "shape": 3, + "label": "INSTANTID", + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "InstantIDModelLoader" + }, + "widgets_values": [ + "ip-adapter.bin" + ] + }, + { + "id": 9, + "type": "EcomID_PulidModelLoader", + "pos": [ + 999, + 320 + ], + "size": { + "0": 315, + "1": 58 + }, + "flags": {}, + "order": 1, + "mode": 0, + "outputs": [ + { + "name": "PULID", + "type": "PULID", + "links": [ + 4 + ], + "shape": 3, + "label": "PULID", + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "EcomID_PulidModelLoader" + }, + "widgets_values": [ + "ip-adapter_pulid_sdxl_fp16.safetensors" + ] + }, + { + "id": 3, + "type": "PulidEvaClipLoader", + "pos": [ + 1101, + 421 + ], + "size": { + "0": 210, + "1": 26 + }, + "flags": {}, + "order": 2, + "mode": 0, + "outputs": [ + { + "name": "EVA_CLIP", + "type": "EVA_CLIP", + "links": [ + 5 + ], + "shape": 3, + "label": "EVA_CLIP", + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "PulidEvaClipLoader" + } + }, + { + "id": 10, + "type": "EcomIDFaceAnalysis", + "pos": [ + 999, + 488 + ], + "size": { + "0": 315, + "1": 58 + }, + "flags": {}, + "order": 3, + "mode": 0, + "outputs": [ + { + "name": "FACEANALYSIS", + "type": "FACEANALYSIS", + "links": [ + 6 + ], + "shape": 3, + "label": "FACEANALYSIS", + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "EcomIDFaceAnalysis" + }, + "widgets_values": [ + "CPU" + ] + }, + { + "id": 2, + "type": "ControlNetLoader", + "pos": [ + 999, + 589 + ], + "size": { + "0": 315, + "1": 58 + }, + "flags": {}, + "order": 4, + "mode": 0, + "outputs": [ + { + "name": "CONTROL_NET", + "type": "CONTROL_NET", + "links": [ + 7 + ], + "shape": 3, + "label": "CONTROL_NET", + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "ControlNetLoader" + }, + "widgets_values": [ + "yinu_instantid.safetensors" + ] + }, + { + "id": 5, + "type": "CLIPTextEncode", + "pos": [ + 975, + 689 + ], + "size": { + "0": 380, + "1": 160 + }, + "flags": {}, + "order": 8, + "mode": 0, + "inputs": [ + { + "name": "clip", + "type": "CLIP", + "link": 1, + "label": "clip" + } + ], + "outputs": [ + { + "name": "CONDITIONING", + "type": "CONDITIONING", + "links": [ + 9 + ], + "slot_index": 0, + "label": "CONDITIONING" + } + ], + "properties": { + "Node name for S&R": "CLIPTextEncode" + }, + "widgets_values": [ + "1girl, solo, dress, jewelry, beach, pink_dress, realistic" + ] + }, + { + "id": 6, + "type": "CLIPTextEncode", + "pos": [ + 975, + 893 + ], + "size": { + "0": 380, + "1": 160 + }, + "flags": {}, + "order": 9, + "mode": 0, + "inputs": [ + { + "name": "clip", + "type": "CLIP", + "link": 2, + "label": "clip" + } + ], + "outputs": [ + { + "name": "CONDITIONING", + "type": "CONDITIONING", + "links": [ + 10 + ], + "slot_index": 0, + "label": "CONDITIONING" + } + ], + "properties": { + "Node name for S&R": "CLIPTextEncode" + }, + "widgets_values": [ + "bad hand, (worst quality, low quality, nevus, normal quality:1.6), blur skin,nevus,signature, logo, watermark,username,text" + ] + }, + { + "id": 13, + "type": "VAEDecode", + "pos": [ + 2113, + 437 + ], + "size": { + "0": 210, + "1": 46 + }, + "flags": {}, + "order": 12, + "mode": 0, + "inputs": [ + { + "name": "samples", + "type": "LATENT", + "link": 14, + "label": "samples" + }, + { + "name": "vae", + "type": "VAE", + "link": 15, + "label": "vae" + } + ], + "outputs": [ + { + "name": "IMAGE", + "type": "IMAGE", + "links": [ + 16 + ], + "shape": 3, + "label": "IMAGE", + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "VAEDecode" + } + }, + { + "id": 8, + "type": "ApplyEcomIDAdvanced", + "pos": [ + 1411, + 437 + ], + "size": { + "0": 315, + "1": 402 + }, + "flags": {}, + "order": 10, + "mode": 0, + "inputs": [ + { + "name": "instantid_ipa", + "type": "INSTANTID", + "link": 3, + "label": "instantid_ipa" + }, + { + "name": "pulid", + "type": "PULID", + "link": 4, + "label": "pulid" + }, + { + "name": "eva_clip", + "type": "EVA_CLIP", + "link": 5, + "label": "eva_clip" + }, + { + "name": "insightface", + "type": "FACEANALYSIS", + "link": 6, + "label": "insightface" + }, + { + "name": "control_net", + "type": "CONTROL_NET", + "link": 7, + "label": "control_net" + }, + { + "name": "image", + "type": "IMAGE", + "link": 8, + "label": "image" + }, + { + "name": "model", + "type": "MODEL", + "link": 17, + "label": "model" + }, + { + "name": "positive", + "type": "CONDITIONING", + "link": 9, + "label": "positive" + }, + { + "name": "negative", + "type": "CONDITIONING", + "link": 10, + "label": "negative" + }, + { + "name": "image_kps", + "type": "IMAGE", + "link": null, + "label": "image_kps" + }, + { + "name": "mask", + "type": "MASK", + "link": null, + "label": "mask" + } + ], + "outputs": [ + { + "name": "MODEL", + "type": "MODEL", + "links": [ + 11 + ], + "shape": 3, + "label": "MODEL", + "slot_index": 0 + }, + { + "name": "positive", + "type": "CONDITIONING", + "links": [ + 12 + ], + "shape": 3, + "label": "positive", + "slot_index": 1 + }, + { + "name": "negative", + "type": "CONDITIONING", + "links": [ + 13 + ], + "shape": 3, + "label": "negative", + "slot_index": 2 + } + ], + "properties": { + "Node name for S&R": "ApplyEcomIDAdvanced" + }, + "widgets_values": [ + "fidelity", + 0, + 1, + 0.3, + 0.8, + 0, + "average" + ] + }, + { + "id": 15, + "type": "EmptyLatentImage", + "pos": [ + 1407, + 902 + ], + "size": { + "0": 315, + "1": 106 + }, + "flags": {}, + "order": 5, + "mode": 0, + "outputs": [ + { + "name": "LATENT", + "type": "LATENT", + "links": [ + 18 + ], + "shape": 3, + "label": "LATENT", + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "EmptyLatentImage" + }, + "widgets_values": [ + 1024, + 1024, + 1 + ] + }, + { + "id": 11, + "type": "LoadImage", + "pos": [ + 573, + 329 + ], + "size": [ + 315, + 314 + ], + "flags": {}, + "order": 6, + "mode": 0, + "outputs": [ + { + "name": "IMAGE", + "type": "IMAGE", + "links": [ + 8 + ], + "shape": 3, + "label": "IMAGE", + "slot_index": 0 + }, + { + "name": "MASK", + "type": "MASK", + "links": null, + "shape": 3, + "label": "MASK" + } + ], + "properties": { + "Node name for S&R": "LoadImage" + }, + "widgets_values": [ + "4 (2).png", + "image" + ] + }, + { + "id": 4, + "type": "CheckpointLoaderSimple", + "pos": [ + 564, + 739 + ], + "size": { + "0": 315, + "1": 98 + }, + "flags": {}, + "order": 7, + "mode": 0, + "outputs": [ + { + "name": "MODEL", + "type": "MODEL", + "links": [ + 17 + ], + "slot_index": 0, + "label": "MODEL" + }, + { + "name": "CLIP", + "type": "CLIP", + "links": [ + 1, + 2 + ], + "slot_index": 1, + "label": "CLIP" + }, + { + "name": "VAE", + "type": "VAE", + "links": [ + 15 + ], + "slot_index": 2, + "label": "VAE" + } + ], + "properties": { + "Node name for S&R": "CheckpointLoaderSimple" + }, + "widgets_values": [ + "ecomxl.safetensors" + ] + }, + { + "id": 12, + "type": "KSampler", + "pos": [ + 1763, + 436 + ], + "size": { + "0": 315, + "1": 262 + }, + "flags": {}, + "order": 11, + "mode": 0, + "inputs": [ + { + "name": "model", + "type": "MODEL", + "link": 11, + "label": "model" + }, + { + "name": "positive", + "type": "CONDITIONING", + "link": 12, + "label": "positive" + }, + { + "name": "negative", + "type": "CONDITIONING", + "link": 13, + "label": "negative" + }, + { + "name": "latent_image", + "type": "LATENT", + "link": 18, + "label": "latent_image" + } + ], + "outputs": [ + { + "name": "LATENT", + "type": "LATENT", + "links": [ + 14 + ], + "shape": 3, + "label": "LATENT", + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "KSampler" + }, + "widgets_values": [ + 730401293336759, + "randomize", + 25, + 3.5, + "dpm_2", + "karras", + 1 + ] + }, + { + "id": 14, + "type": "PreviewImage", + "pos": [ + 2110, + 532 + ], + "size": [ + 428.19834675017046, + 539.6653026265071 + ], + "flags": {}, + "order": 13, + "mode": 0, + "inputs": [ + { + "name": "images", + "type": "IMAGE", + "link": 16, + "label": "images" + } + ], + "properties": { + "Node name for S&R": "PreviewImage" + }, + "widgets_values": [ + "0", + "0", + "0" + ] + } + ], + "links": [ + [ + 1, + 4, + 1, + 5, + 0, + "CLIP" + ], + [ + 2, + 4, + 1, + 6, + 0, + "CLIP" + ], + [ + 3, + 1, + 0, + 8, + 0, + "INSTANTID" + ], + [ + 4, + 9, + 0, + 8, + 1, + "PULID" + ], + [ + 5, + 3, + 0, + 8, + 2, + "EVA_CLIP" + ], + [ + 6, + 10, + 0, + 8, + 3, + "FACEANALYSIS" + ], + [ + 7, + 2, + 0, + 8, + 4, + "CONTROL_NET" + ], + [ + 8, + 11, + 0, + 8, + 5, + "IMAGE" + ], + [ + 9, + 5, + 0, + 8, + 7, + "CONDITIONING" + ], + [ + 10, + 6, + 0, + 8, + 8, + "CONDITIONING" + ], + [ + 11, + 8, + 0, + 12, + 0, + "MODEL" + ], + [ + 12, + 8, + 1, + 12, + 1, + "CONDITIONING" + ], + [ + 13, + 8, + 2, + 12, + 2, + "CONDITIONING" + ], + [ + 14, + 12, + 0, + 13, + 0, + "LATENT" + ], + [ + 15, + 4, + 2, + 13, + 1, + "VAE" + ], + [ + 16, + 13, + 0, + 14, + 0, + "IMAGE" + ], + [ + 17, + 4, + 0, + 8, + 6, + "MODEL" + ], + [ + 18, + 15, + 0, + 12, + 3, + "LATENT" + ] + ], + "groups": [], + "config": {}, + "extra": { + "ds": { + "scale": 0.6830134553650709, + "offset": [ + -260.1114479220462, + -82.98489012650744 + ] + } + }, + "version": 0.4 +} \ No newline at end of file