Your Name commited on
Commit
9a054ff
·
1 Parent(s): 6d85bdf

updated workflow

Browse files
FaceEnhancementProd.json DELETED
@@ -1,1675 +0,0 @@
1
- {
2
- "id": "ec1f729c-d164-435a-adb9-3a8e8f24a1e3",
3
- "revision": 0,
4
- "last_node_id": 134,
5
- "last_link_id": 222,
6
- "nodes": [
7
- {
8
- "id": 97,
9
- "type": "Reroute",
10
- "pos": [
11
- 621.4758911132812,
12
- 1410.3482666015625
13
- ],
14
- "size": [
15
- 75,
16
- 26
17
- ],
18
- "flags": {},
19
- "order": 17,
20
- "mode": 0,
21
- "inputs": [
22
- {
23
- "name": "",
24
- "type": "*",
25
- "link": 160
26
- }
27
- ],
28
- "outputs": [
29
- {
30
- "name": "",
31
- "type": "VAE",
32
- "slot_index": 0,
33
- "links": [
34
- 157,
35
- 158,
36
- 191
37
- ]
38
- }
39
- ],
40
- "properties": {
41
- "showOutputText": false,
42
- "horizontal": false
43
- }
44
- },
45
- {
46
- "id": 123,
47
- "type": "Image Comparer (rgthree)",
48
- "pos": [
49
- 2166.79833984375,
50
- 1418.202880859375
51
- ],
52
- "size": [
53
- 476.6938171386719,
54
- 546.7750854492188
55
- ],
56
- "flags": {},
57
- "order": 29,
58
- "mode": 0,
59
- "inputs": [
60
- {
61
- "dir": 3,
62
- "name": "image_a",
63
- "type": "IMAGE",
64
- "link": 206
65
- },
66
- {
67
- "dir": 3,
68
- "name": "image_b",
69
- "type": "IMAGE",
70
- "link": 208
71
- }
72
- ],
73
- "outputs": [],
74
- "properties": {
75
- "cnr_id": "rgthree-comfy",
76
- "ver": "b84f39c7c224de765de0b54c55b967329011819d",
77
- "comparer_mode": "Slide",
78
- "aux_id": "rgthree/rgthree-comfy"
79
- },
80
- "widgets_values": [
81
- [
82
- {
83
- "name": "A",
84
- "selected": true,
85
- "url": "/api/view?filename=rgthree.compare._temp_bikvi_00001_.png&type=temp&subfolder=&rand=0.3573763312590408"
86
- },
87
- {
88
- "name": "B",
89
- "selected": true,
90
- "url": "/api/view?filename=rgthree.compare._temp_bikvi_00002_.png&type=temp&subfolder=&rand=0.1379430430729296"
91
- }
92
- ]
93
- ]
94
- },
95
- {
96
- "id": 118,
97
- "type": "FaceAnalysisModels",
98
- "pos": [
99
- 1311.7503662109375,
100
- 2008.2781982421875
101
- ],
102
- "size": [
103
- 315,
104
- 82
105
- ],
106
- "flags": {},
107
- "order": 0,
108
- "mode": 0,
109
- "inputs": [],
110
- "outputs": [
111
- {
112
- "name": "ANALYSIS_MODELS",
113
- "type": "ANALYSIS_MODELS",
114
- "slot_index": 0,
115
- "links": [
116
- 196
117
- ]
118
- }
119
- ],
120
- "properties": {
121
- "cnr_id": "comfyui_faceanalysis",
122
- "ver": "8251fab13bf339eb389b1691153755118fd7a026",
123
- "Node name for S&R": "FaceAnalysisModels",
124
- "aux_id": "cubiq/ComfyUI_FaceAnalysis"
125
- },
126
- "widgets_values": [
127
- "insightface",
128
- "CUDA"
129
- ]
130
- },
131
- {
132
- "id": 98,
133
- "type": "Reroute",
134
- "pos": [
135
- 367.4774475097656,
136
- 728.5109252929688
137
- ],
138
- "size": [
139
- 75,
140
- 26
141
- ],
142
- "flags": {},
143
- "order": 16,
144
- "mode": 0,
145
- "inputs": [
146
- {
147
- "name": "",
148
- "type": "*",
149
- "link": 163
150
- }
151
- ],
152
- "outputs": [
153
- {
154
- "name": "",
155
- "type": "IMAGE",
156
- "slot_index": 0,
157
- "links": [
158
- 161,
159
- 162,
160
- 206
161
- ]
162
- }
163
- ],
164
- "properties": {
165
- "showOutputText": false,
166
- "horizontal": false
167
- }
168
- },
169
- {
170
- "id": 126,
171
- "type": "Note",
172
- "pos": [
173
- -596.5314331054688,
174
- 188.32418823242188
175
- ],
176
- "size": [
177
- 230.86343383789062,
178
- 88
179
- ],
180
- "flags": {},
181
- "order": 1,
182
- "mode": 0,
183
- "inputs": [],
184
- "outputs": [],
185
- "properties": {},
186
- "widgets_values": [
187
- "The target image to face enhance"
188
- ],
189
- "color": "#432",
190
- "bgcolor": "#653"
191
- },
192
- {
193
- "id": 125,
194
- "type": "Note",
195
- "pos": [
196
- -593.9556884765625,
197
- 772.0499877929688
198
- ],
199
- "size": [
200
- 230.86343383789062,
201
- 88
202
- ],
203
- "flags": {},
204
- "order": 2,
205
- "mode": 0,
206
- "inputs": [],
207
- "outputs": [],
208
- "properties": {},
209
- "widgets_values": [
210
- "The reference face image"
211
- ],
212
- "color": "#432",
213
- "bgcolor": "#653"
214
- },
215
- {
216
- "id": 127,
217
- "type": "Note",
218
- "pos": [
219
- -538.2857666015625,
220
- 1239.5035400390625
221
- ],
222
- "size": [
223
- 230.86343383789062,
224
- 88
225
- ],
226
- "flags": {},
227
- "order": 3,
228
- "mode": 0,
229
- "inputs": [],
230
- "outputs": [],
231
- "properties": {},
232
- "widgets_values": [
233
- "Positive/negative prompts are optional"
234
- ],
235
- "color": "#432",
236
- "bgcolor": "#653"
237
- },
238
- {
239
- "id": 124,
240
- "type": "Reroute",
241
- "pos": [
242
- 2035.27978515625,
243
- 1079.953125
244
- ],
245
- "size": [
246
- 75,
247
- 26
248
- ],
249
- "flags": {},
250
- "order": 28,
251
- "mode": 0,
252
- "inputs": [
253
- {
254
- "name": "",
255
- "type": "*",
256
- "link": 207
257
- }
258
- ],
259
- "outputs": [
260
- {
261
- "name": "",
262
- "type": "IMAGE",
263
- "slot_index": 0,
264
- "links": [
265
- 208,
266
- 210,
267
- 211
268
- ]
269
- }
270
- ],
271
- "properties": {
272
- "showOutputText": false,
273
- "horizontal": false
274
- }
275
- },
276
- {
277
- "id": 122,
278
- "type": "BasicGuider",
279
- "pos": [
280
- 1313.324462890625,
281
- 981.9154052734375
282
- ],
283
- "size": [
284
- 241.79998779296875,
285
- 46
286
- ],
287
- "flags": {},
288
- "order": 25,
289
- "mode": 0,
290
- "inputs": [
291
- {
292
- "name": "model",
293
- "type": "MODEL",
294
- "link": 217
295
- },
296
- {
297
- "name": "conditioning",
298
- "type": "CONDITIONING",
299
- "link": 203
300
- }
301
- ],
302
- "outputs": [
303
- {
304
- "name": "GUIDER",
305
- "type": "GUIDER",
306
- "slot_index": 0,
307
- "links": [
308
- 202
309
- ]
310
- }
311
- ],
312
- "properties": {
313
- "cnr_id": "comfy-core",
314
- "ver": "0.3.28",
315
- "Node name for S&R": "BasicGuider"
316
- },
317
- "widgets_values": []
318
- },
319
- {
320
- "id": 42,
321
- "type": "CLIPTextEncode",
322
- "pos": [
323
- 224.627685546875,
324
- 1002.7890014648438
325
- ],
326
- "size": [
327
- 400,
328
- 200
329
- ],
330
- "flags": {},
331
- "order": 18,
332
- "mode": 0,
333
- "inputs": [
334
- {
335
- "name": "clip",
336
- "type": "CLIP",
337
- "link": 172
338
- }
339
- ],
340
- "outputs": [
341
- {
342
- "name": "CONDITIONING",
343
- "type": "CONDITIONING",
344
- "links": [
345
- 87
346
- ]
347
- }
348
- ],
349
- "properties": {
350
- "cnr_id": "comfy-core",
351
- "ver": "0.3.28",
352
- "Node name for S&R": "CLIPTextEncode"
353
- },
354
- "widgets_values": [
355
- ""
356
- ]
357
- },
358
- {
359
- "id": 37,
360
- "type": "ControlNetApplyAdvanced",
361
- "pos": [
362
- 837.775634765625,
363
- 1001.7030029296875
364
- ],
365
- "size": [
366
- 315,
367
- 186
368
- ],
369
- "flags": {},
370
- "order": 23,
371
- "mode": 0,
372
- "inputs": [
373
- {
374
- "name": "positive",
375
- "type": "CONDITIONING",
376
- "link": 87
377
- },
378
- {
379
- "name": "negative",
380
- "type": "CONDITIONING",
381
- "link": 88
382
- },
383
- {
384
- "name": "control_net",
385
- "type": "CONTROL_NET",
386
- "link": 89
387
- },
388
- {
389
- "name": "image",
390
- "type": "IMAGE",
391
- "link": 162
392
- },
393
- {
394
- "name": "vae",
395
- "shape": 7,
396
- "type": "VAE",
397
- "link": 157
398
- }
399
- ],
400
- "outputs": [
401
- {
402
- "name": "positive",
403
- "type": "CONDITIONING",
404
- "slot_index": 0,
405
- "links": [
406
- 203
407
- ]
408
- },
409
- {
410
- "name": "negative",
411
- "type": "CONDITIONING",
412
- "links": []
413
- }
414
- ],
415
- "properties": {
416
- "cnr_id": "comfy-core",
417
- "ver": "0.3.28",
418
- "Node name for S&R": "ControlNetApplyAdvanced"
419
- },
420
- "widgets_values": [
421
- 1,
422
- 0.1,
423
- 0.8
424
- ]
425
- },
426
- {
427
- "id": 35,
428
- "type": "VAEEncode",
429
- "pos": [
430
- 1320.22705078125,
431
- 888.8261108398438
432
- ],
433
- "size": [
434
- 210,
435
- 46
436
- ],
437
- "flags": {},
438
- "order": 22,
439
- "mode": 0,
440
- "inputs": [
441
- {
442
- "name": "pixels",
443
- "type": "IMAGE",
444
- "link": 161
445
- },
446
- {
447
- "name": "vae",
448
- "type": "VAE",
449
- "link": 158
450
- }
451
- ],
452
- "outputs": [
453
- {
454
- "name": "LATENT",
455
- "type": "LATENT",
456
- "links": [
457
- 72
458
- ]
459
- }
460
- ],
461
- "properties": {
462
- "cnr_id": "comfy-core",
463
- "ver": "0.3.28",
464
- "Node name for S&R": "VAEEncode"
465
- },
466
- "widgets_values": []
467
- },
468
- {
469
- "id": 23,
470
- "type": "CLIPTextEncode",
471
- "pos": [
472
- 228.5153350830078,
473
- 1266.098388671875
474
- ],
475
- "size": [
476
- 400,
477
- 200
478
- ],
479
- "flags": {
480
- "collapsed": true
481
- },
482
- "order": 19,
483
- "mode": 0,
484
- "inputs": [
485
- {
486
- "name": "clip",
487
- "type": "CLIP",
488
- "link": 173
489
- }
490
- ],
491
- "outputs": [
492
- {
493
- "name": "CONDITIONING",
494
- "type": "CONDITIONING",
495
- "links": [
496
- 88
497
- ]
498
- }
499
- ],
500
- "properties": {
501
- "cnr_id": "comfy-core",
502
- "ver": "0.3.28",
503
- "Node name for S&R": "CLIPTextEncode"
504
- },
505
- "widgets_values": [
506
- ""
507
- ]
508
- },
509
- {
510
- "id": 128,
511
- "type": "SaveImage",
512
- "pos": [
513
- 2184.40869140625,
514
- 882.2232666015625
515
- ],
516
- "size": [
517
- 440.4703063964844,
518
- 463.7738952636719
519
- ],
520
- "flags": {},
521
- "order": 31,
522
- "mode": 0,
523
- "inputs": [
524
- {
525
- "name": "images",
526
- "type": "IMAGE",
527
- "link": 211
528
- }
529
- ],
530
- "outputs": [],
531
- "properties": {
532
- "cnr_id": "comfy-core",
533
- "ver": "0.3.28",
534
- "Node name for S&R": "SaveImage"
535
- },
536
- "widgets_values": [
537
- "FaceEnhanced",
538
- ""
539
- ]
540
- },
541
- {
542
- "id": 117,
543
- "type": "FaceEmbedDistance",
544
- "pos": [
545
- 1792.0877685546875,
546
- 2008.6629638671875
547
- ],
548
- "size": [
549
- 315,
550
- 170
551
- ],
552
- "flags": {},
553
- "order": 30,
554
- "mode": 0,
555
- "inputs": [
556
- {
557
- "name": "analysis_models",
558
- "type": "ANALYSIS_MODELS",
559
- "link": 196
560
- },
561
- {
562
- "name": "reference",
563
- "type": "IMAGE",
564
- "link": 199
565
- },
566
- {
567
- "name": "image",
568
- "type": "IMAGE",
569
- "link": 210
570
- }
571
- ],
572
- "outputs": [
573
- {
574
- "name": "IMAGE",
575
- "type": "IMAGE",
576
- "slot_index": 0,
577
- "links": [
578
- 212
579
- ]
580
- },
581
- {
582
- "name": "distance",
583
- "type": "FLOAT",
584
- "slot_index": 1,
585
- "links": [
586
- 201
587
- ]
588
- }
589
- ],
590
- "properties": {
591
- "cnr_id": "comfyui_faceanalysis",
592
- "ver": "8251fab13bf339eb389b1691153755118fd7a026",
593
- "Node name for S&R": "FaceEmbedDistance",
594
- "aux_id": "cubiq/ComfyUI_FaceAnalysis"
595
- },
596
- "widgets_values": [
597
- "cosine",
598
- 100,
599
- 0,
600
- true
601
- ]
602
- },
603
- {
604
- "id": 121,
605
- "type": "Display Any (rgthree)",
606
- "pos": [
607
- 2242.676513671875,
608
- 2028.4595947265625
609
- ],
610
- "size": [
611
- 264.5999755859375,
612
- 88
613
- ],
614
- "flags": {},
615
- "order": 33,
616
- "mode": 0,
617
- "inputs": [
618
- {
619
- "dir": 3,
620
- "name": "source",
621
- "type": "*",
622
- "link": 201
623
- }
624
- ],
625
- "outputs": [],
626
- "properties": {
627
- "cnr_id": "rgthree-comfy",
628
- "ver": "b84f39c7c224de765de0b54c55b967329011819d",
629
- "Node name for S&R": "Display Any (rgthree)",
630
- "aux_id": "rgthree/rgthree-comfy"
631
- },
632
- "widgets_values": [
633
- ""
634
- ]
635
- },
636
- {
637
- "id": 129,
638
- "type": "SaveImage",
639
- "pos": [
640
- 2185.483154296875,
641
- 2173.050537109375
642
- ],
643
- "size": [
644
- 440.4703063964844,
645
- 463.7738952636719
646
- ],
647
- "flags": {},
648
- "order": 32,
649
- "mode": 0,
650
- "inputs": [
651
- {
652
- "name": "images",
653
- "type": "IMAGE",
654
- "link": 212
655
- }
656
- ],
657
- "outputs": [],
658
- "properties": {
659
- "cnr_id": "comfy-core",
660
- "ver": "0.3.28",
661
- "Node name for S&R": "SaveImage"
662
- },
663
- "widgets_values": [
664
- "FaceEmbedDist",
665
- ""
666
- ]
667
- },
668
- {
669
- "id": 1,
670
- "type": "SamplerCustomAdvanced",
671
- "pos": [
672
- 1767.5123291015625,
673
- 874.9805908203125
674
- ],
675
- "size": [
676
- 355.20001220703125,
677
- 106
678
- ],
679
- "flags": {},
680
- "order": 26,
681
- "mode": 0,
682
- "inputs": [
683
- {
684
- "name": "noise",
685
- "type": "NOISE",
686
- "link": 68
687
- },
688
- {
689
- "name": "guider",
690
- "type": "GUIDER",
691
- "link": 202
692
- },
693
- {
694
- "name": "sampler",
695
- "type": "SAMPLER",
696
- "link": 70
697
- },
698
- {
699
- "name": "sigmas",
700
- "type": "SIGMAS",
701
- "link": 214
702
- },
703
- {
704
- "name": "latent_image",
705
- "type": "LATENT",
706
- "link": 72
707
- }
708
- ],
709
- "outputs": [
710
- {
711
- "name": "output",
712
- "type": "LATENT",
713
- "slot_index": 0,
714
- "links": [
715
- 190
716
- ]
717
- },
718
- {
719
- "name": "denoised_output",
720
- "type": "LATENT",
721
- "links": null
722
- }
723
- ],
724
- "properties": {
725
- "cnr_id": "comfy-core",
726
- "ver": "0.3.28",
727
- "Node name for S&R": "SamplerCustomAdvanced"
728
- },
729
- "widgets_values": []
730
- },
731
- {
732
- "id": 114,
733
- "type": "VAEDecode",
734
- "pos": [
735
- 1771.2335205078125,
736
- 1040.572021484375
737
- ],
738
- "size": [
739
- 210,
740
- 46
741
- ],
742
- "flags": {},
743
- "order": 27,
744
- "mode": 0,
745
- "inputs": [
746
- {
747
- "name": "samples",
748
- "type": "LATENT",
749
- "link": 190
750
- },
751
- {
752
- "name": "vae",
753
- "type": "VAE",
754
- "link": 191
755
- }
756
- ],
757
- "outputs": [
758
- {
759
- "name": "IMAGE",
760
- "type": "IMAGE",
761
- "slot_index": 0,
762
- "links": [
763
- 207
764
- ]
765
- }
766
- ],
767
- "properties": {
768
- "cnr_id": "comfy-core",
769
- "ver": "0.3.28",
770
- "Node name for S&R": "VAEDecode"
771
- },
772
- "widgets_values": []
773
- },
774
- {
775
- "id": 50,
776
- "type": "KSamplerSelect",
777
- "pos": [
778
- 1312.514404296875,
779
- 1212.9171142578125
780
- ],
781
- "size": [
782
- 315,
783
- 58
784
- ],
785
- "flags": {},
786
- "order": 4,
787
- "mode": 0,
788
- "inputs": [],
789
- "outputs": [
790
- {
791
- "name": "SAMPLER",
792
- "type": "SAMPLER",
793
- "links": [
794
- 70
795
- ]
796
- }
797
- ],
798
- "properties": {
799
- "cnr_id": "comfy-core",
800
- "ver": "0.3.28",
801
- "Node name for S&R": "KSamplerSelect"
802
- },
803
- "widgets_values": [
804
- "euler"
805
- ]
806
- },
807
- {
808
- "id": 131,
809
- "type": "BasicScheduler",
810
- "pos": [
811
- 1313.8270263671875,
812
- 1318.2603759765625
813
- ],
814
- "size": [
815
- 315,
816
- 106
817
- ],
818
- "flags": {},
819
- "order": 24,
820
- "mode": 0,
821
- "inputs": [
822
- {
823
- "name": "model",
824
- "type": "MODEL",
825
- "link": 216
826
- }
827
- ],
828
- "outputs": [
829
- {
830
- "name": "SIGMAS",
831
- "type": "SIGMAS",
832
- "slot_index": 0,
833
- "links": [
834
- 214
835
- ]
836
- }
837
- ],
838
- "properties": {
839
- "cnr_id": "comfy-core",
840
- "ver": "0.3.28",
841
- "Node name for S&R": "BasicScheduler"
842
- },
843
- "widgets_values": [
844
- "beta",
845
- 28,
846
- 0.75
847
- ]
848
- },
849
- {
850
- "id": 39,
851
- "type": "RandomNoise",
852
- "pos": [
853
- 1311.832763671875,
854
- 1088.896728515625
855
- ],
856
- "size": [
857
- 315,
858
- 82
859
- ],
860
- "flags": {},
861
- "order": 5,
862
- "mode": 0,
863
- "inputs": [],
864
- "outputs": [
865
- {
866
- "name": "NOISE",
867
- "type": "NOISE",
868
- "links": [
869
- 68
870
- ]
871
- }
872
- ],
873
- "properties": {
874
- "cnr_id": "comfy-core",
875
- "ver": "0.3.28",
876
- "Node name for S&R": "RandomNoise"
877
- },
878
- "widgets_values": [
879
- 1,
880
- "fixed"
881
- ]
882
- },
883
- {
884
- "id": 24,
885
- "type": "LoadImage",
886
- "pos": [
887
- -352.1936340332031,
888
- 770.800537109375
889
- ],
890
- "size": [
891
- 404.0055236816406,
892
- 404.2244567871094
893
- ],
894
- "flags": {},
895
- "order": 6,
896
- "mode": 0,
897
- "inputs": [],
898
- "outputs": [
899
- {
900
- "name": "IMAGE",
901
- "type": "IMAGE",
902
- "slot_index": 0,
903
- "links": [
904
- 176
905
- ]
906
- },
907
- {
908
- "name": "MASK",
909
- "type": "MASK",
910
- "links": null
911
- }
912
- ],
913
- "properties": {
914
- "cnr_id": "comfy-core",
915
- "ver": "0.3.28",
916
- "Node name for S&R": "LoadImage"
917
- },
918
- "widgets_values": [
919
- "woman_face.jpg",
920
- "image",
921
- ""
922
- ]
923
- },
924
- {
925
- "id": 40,
926
- "type": "LoadImage",
927
- "pos": [
928
- -351.87322998046875,
929
- 188.0283966064453
930
- ],
931
- "size": [
932
- 433.580322265625,
933
- 523.640869140625
934
- ],
935
- "flags": {},
936
- "order": 7,
937
- "mode": 0,
938
- "inputs": [],
939
- "outputs": [
940
- {
941
- "name": "IMAGE",
942
- "type": "IMAGE",
943
- "slot_index": 0,
944
- "links": [
945
- 163
946
- ]
947
- },
948
- {
949
- "name": "MASK",
950
- "type": "MASK",
951
- "links": null
952
- }
953
- ],
954
- "properties": {
955
- "cnr_id": "comfy-core",
956
- "ver": "0.3.28",
957
- "Node name for S&R": "LoadImage"
958
- },
959
- "widgets_values": [
960
- "woman1_gpt_2.png",
961
- "image",
962
- ""
963
- ]
964
- },
965
- {
966
- "id": 95,
967
- "type": "VAELoader",
968
- "pos": [
969
- -265.02642822265625,
970
- 1410.9061279296875
971
- ],
972
- "size": [
973
- 315,
974
- 58
975
- ],
976
- "flags": {},
977
- "order": 8,
978
- "mode": 0,
979
- "inputs": [],
980
- "outputs": [
981
- {
982
- "name": "VAE",
983
- "type": "VAE",
984
- "slot_index": 0,
985
- "links": [
986
- 160
987
- ]
988
- }
989
- ],
990
- "properties": {
991
- "cnr_id": "comfy-core",
992
- "ver": "0.3.28",
993
- "Node name for S&R": "VAELoader"
994
- },
995
- "widgets_values": [
996
- "ae.safetensors"
997
- ]
998
- },
999
- {
1000
- "id": 94,
1001
- "type": "DualCLIPLoader",
1002
- "pos": [
1003
- -274.0904235839844,
1004
- 1235.6214599609375
1005
- ],
1006
- "size": [
1007
- 315,
1008
- 130
1009
- ],
1010
- "flags": {},
1011
- "order": 9,
1012
- "mode": 0,
1013
- "inputs": [],
1014
- "outputs": [
1015
- {
1016
- "name": "CLIP",
1017
- "type": "CLIP",
1018
- "slot_index": 0,
1019
- "links": [
1020
- 172,
1021
- 173
1022
- ]
1023
- }
1024
- ],
1025
- "properties": {
1026
- "cnr_id": "comfy-core",
1027
- "ver": "0.3.28",
1028
- "Node name for S&R": "DualCLIPLoader"
1029
- },
1030
- "widgets_values": [
1031
- "t5xxl_fp16.safetensors",
1032
- "clip_l.safetensors",
1033
- "flux",
1034
- "default"
1035
- ]
1036
- },
1037
- {
1038
- "id": 46,
1039
- "type": "PulidFluxInsightFaceLoader",
1040
- "pos": [
1041
- -300.94317626953125,
1042
- 1863.1434326171875
1043
- ],
1044
- "size": [
1045
- 365.4000244140625,
1046
- 58
1047
- ],
1048
- "flags": {},
1049
- "order": 10,
1050
- "mode": 0,
1051
- "inputs": [],
1052
- "outputs": [
1053
- {
1054
- "name": "FACEANALYSIS",
1055
- "type": "FACEANALYSIS",
1056
- "links": [
1057
- 218
1058
- ]
1059
- }
1060
- ],
1061
- "properties": {
1062
- "aux_id": "balazik/ComfyUI-PuLID-Flux",
1063
- "ver": "a80912fc3435c358607bf4b43a58dbcbebdb09ff",
1064
- "Node name for S&R": "PulidFluxInsightFaceLoader"
1065
- },
1066
- "widgets_values": [
1067
- "CUDA"
1068
- ]
1069
- },
1070
- {
1071
- "id": 45,
1072
- "type": "PulidFluxEvaClipLoader",
1073
- "pos": [
1074
- -294.8002624511719,
1075
- 1774.585693359375
1076
- ],
1077
- "size": [
1078
- 362.79498291015625,
1079
- 38.76161575317383
1080
- ],
1081
- "flags": {},
1082
- "order": 11,
1083
- "mode": 0,
1084
- "inputs": [],
1085
- "outputs": [
1086
- {
1087
- "name": "EVA_CLIP",
1088
- "type": "EVA_CLIP",
1089
- "links": [
1090
- 219
1091
- ]
1092
- }
1093
- ],
1094
- "properties": {
1095
- "aux_id": "balazik/ComfyUI-PuLID-Flux",
1096
- "ver": "a80912fc3435c358607bf4b43a58dbcbebdb09ff",
1097
- "Node name for S&R": "PulidFluxEvaClipLoader"
1098
- },
1099
- "widgets_values": []
1100
- },
1101
- {
1102
- "id": 44,
1103
- "type": "PulidFluxModelLoader",
1104
- "pos": [
1105
- -262.90264892578125,
1106
- 1662.658447265625
1107
- ],
1108
- "size": [
1109
- 315,
1110
- 58
1111
- ],
1112
- "flags": {},
1113
- "order": 12,
1114
- "mode": 0,
1115
- "inputs": [],
1116
- "outputs": [
1117
- {
1118
- "name": "PULIDFLUX",
1119
- "type": "PULIDFLUX",
1120
- "links": [
1121
- 220
1122
- ]
1123
- }
1124
- ],
1125
- "properties": {
1126
- "aux_id": "balazik/ComfyUI-PuLID-Flux",
1127
- "ver": "a80912fc3435c358607bf4b43a58dbcbebdb09ff",
1128
- "Node name for S&R": "PulidFluxModelLoader"
1129
- },
1130
- "widgets_values": [
1131
- "pulid_flux_v0.9.1.safetensors"
1132
- ]
1133
- },
1134
- {
1135
- "id": 93,
1136
- "type": "UNETLoader",
1137
- "pos": [
1138
- -265.5894775390625,
1139
- 1531.7340087890625
1140
- ],
1141
- "size": [
1142
- 315,
1143
- 82
1144
- ],
1145
- "flags": {},
1146
- "order": 13,
1147
- "mode": 0,
1148
- "inputs": [],
1149
- "outputs": [
1150
- {
1151
- "name": "MODEL",
1152
- "type": "MODEL",
1153
- "slot_index": 0,
1154
- "links": [
1155
- 221
1156
- ]
1157
- }
1158
- ],
1159
- "properties": {
1160
- "cnr_id": "comfy-core",
1161
- "ver": "0.3.28",
1162
- "Node name for S&R": "UNETLoader"
1163
- },
1164
- "widgets_values": [
1165
- "flux1-dev.safetensors",
1166
- "default"
1167
- ]
1168
- },
1169
- {
1170
- "id": 105,
1171
- "type": "Reroute",
1172
- "pos": [
1173
- 81.75617980957031,
1174
- 771.7276611328125
1175
- ],
1176
- "size": [
1177
- 75,
1178
- 26
1179
- ],
1180
- "flags": {},
1181
- "order": 15,
1182
- "mode": 0,
1183
- "inputs": [
1184
- {
1185
- "name": "",
1186
- "type": "*",
1187
- "link": 176
1188
- }
1189
- ],
1190
- "outputs": [
1191
- {
1192
- "name": "",
1193
- "type": "IMAGE",
1194
- "slot_index": 0,
1195
- "links": [
1196
- 199,
1197
- 222
1198
- ]
1199
- }
1200
- ],
1201
- "properties": {
1202
- "showOutputText": false,
1203
- "horizontal": false
1204
- }
1205
- },
1206
- {
1207
- "id": 41,
1208
- "type": "SetUnionControlNetType",
1209
- "pos": [
1210
- 200.7367706298828,
1211
- 1973.8323974609375
1212
- ],
1213
- "size": [
1214
- 315,
1215
- 58
1216
- ],
1217
- "flags": {},
1218
- "order": 20,
1219
- "mode": 0,
1220
- "inputs": [
1221
- {
1222
- "name": "control_net",
1223
- "type": "CONTROL_NET",
1224
- "link": 94
1225
- }
1226
- ],
1227
- "outputs": [
1228
- {
1229
- "name": "CONTROL_NET",
1230
- "type": "CONTROL_NET",
1231
- "links": [
1232
- 89
1233
- ]
1234
- }
1235
- ],
1236
- "properties": {
1237
- "cnr_id": "comfy-core",
1238
- "ver": "0.3.28",
1239
- "Node name for S&R": "SetUnionControlNetType"
1240
- },
1241
- "widgets_values": [
1242
- "tile"
1243
- ]
1244
- },
1245
- {
1246
- "id": 49,
1247
- "type": "ControlNetLoader",
1248
- "pos": [
1249
- -299.92938232421875,
1250
- 1973.3970947265625
1251
- ],
1252
- "size": [
1253
- 370.503173828125,
1254
- 62.10068130493164
1255
- ],
1256
- "flags": {},
1257
- "order": 14,
1258
- "mode": 0,
1259
- "inputs": [],
1260
- "outputs": [
1261
- {
1262
- "name": "CONTROL_NET",
1263
- "type": "CONTROL_NET",
1264
- "links": [
1265
- 94
1266
- ]
1267
- }
1268
- ],
1269
- "properties": {
1270
- "cnr_id": "comfy-core",
1271
- "ver": "0.3.28",
1272
- "Node name for S&R": "ControlNetLoader"
1273
- },
1274
- "widgets_values": [
1275
- "Flux_Dev_ControlNet_Union_Pro_ShakkerLabs.safetensors"
1276
- ]
1277
- },
1278
- {
1279
- "id": 133,
1280
- "type": "ApplyPulidFlux",
1281
- "pos": [
1282
- 205.47418212890625,
1283
- 1556.73681640625
1284
- ],
1285
- "size": [
1286
- 315,
1287
- 346
1288
- ],
1289
- "flags": {},
1290
- "order": 21,
1291
- "mode": 0,
1292
- "inputs": [
1293
- {
1294
- "name": "model",
1295
- "type": "MODEL",
1296
- "link": 221
1297
- },
1298
- {
1299
- "name": "pulid_flux",
1300
- "type": "PULIDFLUX",
1301
- "link": 220
1302
- },
1303
- {
1304
- "name": "eva_clip",
1305
- "type": "EVA_CLIP",
1306
- "link": 219
1307
- },
1308
- {
1309
- "name": "face_analysis",
1310
- "type": "FACEANALYSIS",
1311
- "link": 218
1312
- },
1313
- {
1314
- "name": "image",
1315
- "type": "IMAGE",
1316
- "link": 222
1317
- },
1318
- {
1319
- "name": "attn_mask",
1320
- "shape": 7,
1321
- "type": "MASK",
1322
- "link": null
1323
- },
1324
- {
1325
- "name": "prior_image",
1326
- "shape": 7,
1327
- "type": "IMAGE",
1328
- "link": null
1329
- }
1330
- ],
1331
- "outputs": [
1332
- {
1333
- "name": "MODEL",
1334
- "type": "MODEL",
1335
- "links": [
1336
- 216,
1337
- 217
1338
- ]
1339
- }
1340
- ],
1341
- "properties": {
1342
- "aux_id": "balazik/ComfyUI-PuLID-Flux",
1343
- "ver": "a80912fc3435c358607bf4b43a58dbcbebdb09ff",
1344
- "Node name for S&R": "ApplyPulidFlux"
1345
- },
1346
- "widgets_values": [
1347
- 0.7500000000000001,
1348
- 0.10000000000000002,
1349
- 1,
1350
- "mean",
1351
- 1,
1352
- 0,
1353
- 1000,
1354
- true
1355
- ]
1356
- }
1357
- ],
1358
- "links": [
1359
- [
1360
- 68,
1361
- 39,
1362
- 0,
1363
- 1,
1364
- 0,
1365
- "NOISE"
1366
- ],
1367
- [
1368
- 70,
1369
- 50,
1370
- 0,
1371
- 1,
1372
- 2,
1373
- "SAMPLER"
1374
- ],
1375
- [
1376
- 72,
1377
- 35,
1378
- 0,
1379
- 1,
1380
- 4,
1381
- "LATENT"
1382
- ],
1383
- [
1384
- 87,
1385
- 42,
1386
- 0,
1387
- 37,
1388
- 0,
1389
- "CONDITIONING"
1390
- ],
1391
- [
1392
- 88,
1393
- 23,
1394
- 0,
1395
- 37,
1396
- 1,
1397
- "CONDITIONING"
1398
- ],
1399
- [
1400
- 89,
1401
- 41,
1402
- 0,
1403
- 37,
1404
- 2,
1405
- "CONTROL_NET"
1406
- ],
1407
- [
1408
- 94,
1409
- 49,
1410
- 0,
1411
- 41,
1412
- 0,
1413
- "CONTROL_NET"
1414
- ],
1415
- [
1416
- 157,
1417
- 97,
1418
- 0,
1419
- 37,
1420
- 4,
1421
- "VAE"
1422
- ],
1423
- [
1424
- 158,
1425
- 97,
1426
- 0,
1427
- 35,
1428
- 1,
1429
- "VAE"
1430
- ],
1431
- [
1432
- 160,
1433
- 95,
1434
- 0,
1435
- 97,
1436
- 0,
1437
- "*"
1438
- ],
1439
- [
1440
- 161,
1441
- 98,
1442
- 0,
1443
- 35,
1444
- 0,
1445
- "IMAGE"
1446
- ],
1447
- [
1448
- 162,
1449
- 98,
1450
- 0,
1451
- 37,
1452
- 3,
1453
- "IMAGE"
1454
- ],
1455
- [
1456
- 163,
1457
- 40,
1458
- 0,
1459
- 98,
1460
- 0,
1461
- "*"
1462
- ],
1463
- [
1464
- 172,
1465
- 94,
1466
- 0,
1467
- 42,
1468
- 0,
1469
- "CLIP"
1470
- ],
1471
- [
1472
- 173,
1473
- 94,
1474
- 0,
1475
- 23,
1476
- 0,
1477
- "CLIP"
1478
- ],
1479
- [
1480
- 176,
1481
- 24,
1482
- 0,
1483
- 105,
1484
- 0,
1485
- "*"
1486
- ],
1487
- [
1488
- 190,
1489
- 1,
1490
- 0,
1491
- 114,
1492
- 0,
1493
- "LATENT"
1494
- ],
1495
- [
1496
- 191,
1497
- 97,
1498
- 0,
1499
- 114,
1500
- 1,
1501
- "VAE"
1502
- ],
1503
- [
1504
- 196,
1505
- 118,
1506
- 0,
1507
- 117,
1508
- 0,
1509
- "ANALYSIS_MODELS"
1510
- ],
1511
- [
1512
- 199,
1513
- 105,
1514
- 0,
1515
- 117,
1516
- 1,
1517
- "IMAGE"
1518
- ],
1519
- [
1520
- 201,
1521
- 117,
1522
- 1,
1523
- 121,
1524
- 0,
1525
- "*"
1526
- ],
1527
- [
1528
- 202,
1529
- 122,
1530
- 0,
1531
- 1,
1532
- 1,
1533
- "GUIDER"
1534
- ],
1535
- [
1536
- 203,
1537
- 37,
1538
- 0,
1539
- 122,
1540
- 1,
1541
- "CONDITIONING"
1542
- ],
1543
- [
1544
- 206,
1545
- 98,
1546
- 0,
1547
- 123,
1548
- 0,
1549
- "IMAGE"
1550
- ],
1551
- [
1552
- 207,
1553
- 114,
1554
- 0,
1555
- 124,
1556
- 0,
1557
- "*"
1558
- ],
1559
- [
1560
- 208,
1561
- 124,
1562
- 0,
1563
- 123,
1564
- 1,
1565
- "IMAGE"
1566
- ],
1567
- [
1568
- 210,
1569
- 124,
1570
- 0,
1571
- 117,
1572
- 2,
1573
- "IMAGE"
1574
- ],
1575
- [
1576
- 211,
1577
- 124,
1578
- 0,
1579
- 128,
1580
- 0,
1581
- "IMAGE"
1582
- ],
1583
- [
1584
- 212,
1585
- 117,
1586
- 0,
1587
- 129,
1588
- 0,
1589
- "IMAGE"
1590
- ],
1591
- [
1592
- 214,
1593
- 131,
1594
- 0,
1595
- 1,
1596
- 3,
1597
- "SIGMAS"
1598
- ],
1599
- [
1600
- 216,
1601
- 133,
1602
- 0,
1603
- 131,
1604
- 0,
1605
- "MODEL"
1606
- ],
1607
- [
1608
- 217,
1609
- 133,
1610
- 0,
1611
- 122,
1612
- 0,
1613
- "MODEL"
1614
- ],
1615
- [
1616
- 218,
1617
- 46,
1618
- 0,
1619
- 133,
1620
- 3,
1621
- "FACEANALYSIS"
1622
- ],
1623
- [
1624
- 219,
1625
- 45,
1626
- 0,
1627
- 133,
1628
- 2,
1629
- "EVA_CLIP"
1630
- ],
1631
- [
1632
- 220,
1633
- 44,
1634
- 0,
1635
- 133,
1636
- 1,
1637
- "PULIDFLUX"
1638
- ],
1639
- [
1640
- 221,
1641
- 93,
1642
- 0,
1643
- 133,
1644
- 0,
1645
- "MODEL"
1646
- ],
1647
- [
1648
- 222,
1649
- 105,
1650
- 0,
1651
- 133,
1652
- 4,
1653
- "IMAGE"
1654
- ]
1655
- ],
1656
- "groups": [],
1657
- "config": {},
1658
- "extra": {
1659
- "ds": {
1660
- "scale": 0.7400249944258384,
1661
- "offset": [
1662
- 594.5480724259465,
1663
- -120.04367935349859
1664
- ]
1665
- },
1666
- "node_versions": {
1667
- "comfy-core": "0.3.26",
1668
- "ComfyUI-PuLID-Flux-Enhanced": "04e1b52320f1f14383afe18959349703623c5b88",
1669
- "rgthree-comfy": "1.0.0",
1670
- "comfyui_faceanalysis": "4919e4e931db0edb219ba5086b3c10b8af750631"
1671
- },
1672
- "ue_links": []
1673
- },
1674
- "version": 0.4
1675
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
FaceEnhancementProdApi.json ADDED
@@ -0,0 +1,403 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "1": {
3
+ "inputs": {
4
+ "noise": [
5
+ "39",
6
+ 0
7
+ ],
8
+ "guider": [
9
+ "122",
10
+ 0
11
+ ],
12
+ "sampler": [
13
+ "50",
14
+ 0
15
+ ],
16
+ "sigmas": [
17
+ "131",
18
+ 0
19
+ ],
20
+ "latent_image": [
21
+ "35",
22
+ 0
23
+ ]
24
+ },
25
+ "class_type": "SamplerCustomAdvanced",
26
+ "_meta": {
27
+ "title": "SamplerCustomAdvanced"
28
+ }
29
+ },
30
+ "23": {
31
+ "inputs": {
32
+ "text": "",
33
+ "clip": [
34
+ "94",
35
+ 0
36
+ ]
37
+ },
38
+ "class_type": "CLIPTextEncode",
39
+ "_meta": {
40
+ "title": "CLIP Text Encode (Prompt)"
41
+ }
42
+ },
43
+ "24": {
44
+ "inputs": {
45
+ "image": "woman_face.jpg"
46
+ },
47
+ "class_type": "LoadImage",
48
+ "_meta": {
49
+ "title": "Load Image"
50
+ }
51
+ },
52
+ "35": {
53
+ "inputs": {
54
+ "pixels": [
55
+ "40",
56
+ 0
57
+ ],
58
+ "vae": [
59
+ "95",
60
+ 0
61
+ ]
62
+ },
63
+ "class_type": "VAEEncode",
64
+ "_meta": {
65
+ "title": "VAE Encode"
66
+ }
67
+ },
68
+ "37": {
69
+ "inputs": {
70
+ "strength": 1,
71
+ "start_percent": 0.1,
72
+ "end_percent": 0.8,
73
+ "positive": [
74
+ "42",
75
+ 0
76
+ ],
77
+ "negative": [
78
+ "23",
79
+ 0
80
+ ],
81
+ "control_net": [
82
+ "41",
83
+ 0
84
+ ],
85
+ "image": [
86
+ "40",
87
+ 0
88
+ ],
89
+ "vae": [
90
+ "95",
91
+ 0
92
+ ]
93
+ },
94
+ "class_type": "ControlNetApplyAdvanced",
95
+ "_meta": {
96
+ "title": "Apply ControlNet"
97
+ }
98
+ },
99
+ "39": {
100
+ "inputs": {
101
+ "noise_seed": 1
102
+ },
103
+ "class_type": "RandomNoise",
104
+ "_meta": {
105
+ "title": "RandomNoise"
106
+ }
107
+ },
108
+ "40": {
109
+ "inputs": {
110
+ "image": "woman1_gpt_2.png"
111
+ },
112
+ "class_type": "LoadImage",
113
+ "_meta": {
114
+ "title": "Load Image"
115
+ }
116
+ },
117
+ "41": {
118
+ "inputs": {
119
+ "type": "tile",
120
+ "control_net": [
121
+ "49",
122
+ 0
123
+ ]
124
+ },
125
+ "class_type": "SetUnionControlNetType",
126
+ "_meta": {
127
+ "title": "SetUnionControlNetType"
128
+ }
129
+ },
130
+ "42": {
131
+ "inputs": {
132
+ "text": "",
133
+ "clip": [
134
+ "94",
135
+ 0
136
+ ]
137
+ },
138
+ "class_type": "CLIPTextEncode",
139
+ "_meta": {
140
+ "title": "CLIP Text Encode (Prompt)"
141
+ }
142
+ },
143
+ "44": {
144
+ "inputs": {
145
+ "pulid_file": "pulid_flux_v0.9.1.safetensors"
146
+ },
147
+ "class_type": "PulidFluxModelLoader",
148
+ "_meta": {
149
+ "title": "Load PuLID Flux Model"
150
+ }
151
+ },
152
+ "45": {
153
+ "inputs": {},
154
+ "class_type": "PulidFluxEvaClipLoader",
155
+ "_meta": {
156
+ "title": "Load Eva Clip (PuLID Flux)"
157
+ }
158
+ },
159
+ "46": {
160
+ "inputs": {
161
+ "provider": "CUDA"
162
+ },
163
+ "class_type": "PulidFluxInsightFaceLoader",
164
+ "_meta": {
165
+ "title": "Load InsightFace (PuLID Flux)"
166
+ }
167
+ },
168
+ "49": {
169
+ "inputs": {
170
+ "control_net_name": "Flux_Dev_ControlNet_Union_Pro_ShakkerLabs.safetensors"
171
+ },
172
+ "class_type": "ControlNetLoader",
173
+ "_meta": {
174
+ "title": "Load ControlNet Model"
175
+ }
176
+ },
177
+ "50": {
178
+ "inputs": {
179
+ "sampler_name": "euler"
180
+ },
181
+ "class_type": "KSamplerSelect",
182
+ "_meta": {
183
+ "title": "KSamplerSelect"
184
+ }
185
+ },
186
+ "93": {
187
+ "inputs": {
188
+ "unet_name": "flux1-dev.safetensors",
189
+ "weight_dtype": "default"
190
+ },
191
+ "class_type": "UNETLoader",
192
+ "_meta": {
193
+ "title": "Load Diffusion Model"
194
+ }
195
+ },
196
+ "94": {
197
+ "inputs": {
198
+ "clip_name1": "t5xxl_fp16.safetensors",
199
+ "clip_name2": "clip_l.safetensors",
200
+ "type": "flux",
201
+ "device": "default"
202
+ },
203
+ "class_type": "DualCLIPLoader",
204
+ "_meta": {
205
+ "title": "DualCLIPLoader"
206
+ }
207
+ },
208
+ "95": {
209
+ "inputs": {
210
+ "vae_name": "ae.safetensors"
211
+ },
212
+ "class_type": "VAELoader",
213
+ "_meta": {
214
+ "title": "Load VAE"
215
+ }
216
+ },
217
+ "114": {
218
+ "inputs": {
219
+ "samples": [
220
+ "1",
221
+ 0
222
+ ],
223
+ "vae": [
224
+ "95",
225
+ 0
226
+ ]
227
+ },
228
+ "class_type": "VAEDecode",
229
+ "_meta": {
230
+ "title": "VAE Decode"
231
+ }
232
+ },
233
+ "117": {
234
+ "inputs": {
235
+ "similarity_metric": "cosine",
236
+ "filter_thresh": 100,
237
+ "filter_best": 0,
238
+ "generate_image_overlay": true,
239
+ "analysis_models": [
240
+ "118",
241
+ 0
242
+ ],
243
+ "reference": [
244
+ "24",
245
+ 0
246
+ ],
247
+ "image": [
248
+ "114",
249
+ 0
250
+ ]
251
+ },
252
+ "class_type": "FaceEmbedDistance",
253
+ "_meta": {
254
+ "title": "Face Embeds Distance"
255
+ }
256
+ },
257
+ "118": {
258
+ "inputs": {
259
+ "library": "insightface",
260
+ "provider": "CUDA"
261
+ },
262
+ "class_type": "FaceAnalysisModels",
263
+ "_meta": {
264
+ "title": "Face Analysis Models"
265
+ }
266
+ },
267
+ "121": {
268
+ "inputs": {
269
+ "output": "",
270
+ "source": [
271
+ "117",
272
+ 1
273
+ ]
274
+ },
275
+ "class_type": "Display Any (rgthree)",
276
+ "_meta": {
277
+ "title": "Display Any (rgthree)"
278
+ }
279
+ },
280
+ "122": {
281
+ "inputs": {
282
+ "model": [
283
+ "133",
284
+ 0
285
+ ],
286
+ "conditioning": [
287
+ "37",
288
+ 0
289
+ ]
290
+ },
291
+ "class_type": "BasicGuider",
292
+ "_meta": {
293
+ "title": "BasicGuider"
294
+ }
295
+ },
296
+ "123": {
297
+ "inputs": {
298
+ "rgthree_comparer": {
299
+ "images": [
300
+ {
301
+ "name": "A",
302
+ "selected": true,
303
+ "url": "/api/view?filename=rgthree.compare._temp_bikvi_00001_.png&type=temp&subfolder=&rand=0.3573763312590408"
304
+ },
305
+ {
306
+ "name": "B",
307
+ "selected": true,
308
+ "url": "/api/view?filename=rgthree.compare._temp_bikvi_00002_.png&type=temp&subfolder=&rand=0.1379430430729296"
309
+ }
310
+ ]
311
+ },
312
+ "image_a": [
313
+ "40",
314
+ 0
315
+ ],
316
+ "image_b": [
317
+ "114",
318
+ 0
319
+ ]
320
+ },
321
+ "class_type": "Image Comparer (rgthree)",
322
+ "_meta": {
323
+ "title": "Image Comparer (rgthree)"
324
+ }
325
+ },
326
+ "128": {
327
+ "inputs": {
328
+ "filename_prefix": "FaceEnhanced",
329
+ "images": [
330
+ "114",
331
+ 0
332
+ ]
333
+ },
334
+ "class_type": "SaveImage",
335
+ "_meta": {
336
+ "title": "Save Image"
337
+ }
338
+ },
339
+ "129": {
340
+ "inputs": {
341
+ "filename_prefix": "FaceEmbedDist",
342
+ "images": [
343
+ "117",
344
+ 0
345
+ ]
346
+ },
347
+ "class_type": "SaveImage",
348
+ "_meta": {
349
+ "title": "Save Image"
350
+ }
351
+ },
352
+ "131": {
353
+ "inputs": {
354
+ "scheduler": "beta",
355
+ "steps": 28,
356
+ "denoise": 0.75,
357
+ "model": [
358
+ "133",
359
+ 0
360
+ ]
361
+ },
362
+ "class_type": "BasicScheduler",
363
+ "_meta": {
364
+ "title": "BasicScheduler"
365
+ }
366
+ },
367
+ "133": {
368
+ "inputs": {
369
+ "weight": 0.7500000000000001,
370
+ "start_at": 0.10000000000000002,
371
+ "end_at": 1,
372
+ "fusion": "mean",
373
+ "fusion_weight_max": 1,
374
+ "fusion_weight_min": 0,
375
+ "train_step": 1000,
376
+ "use_gray": true,
377
+ "model": [
378
+ "93",
379
+ 0
380
+ ],
381
+ "pulid_flux": [
382
+ "44",
383
+ 0
384
+ ],
385
+ "eva_clip": [
386
+ "45",
387
+ 0
388
+ ],
389
+ "face_analysis": [
390
+ "46",
391
+ 0
392
+ ],
393
+ "image": [
394
+ "24",
395
+ 0
396
+ ]
397
+ },
398
+ "class_type": "ApplyPulidFlux",
399
+ "_meta": {
400
+ "title": "Apply PuLID Flux"
401
+ }
402
+ }
403
+ }
FaceEnhancementProdApi.py DELETED
@@ -1,287 +0,0 @@
1
- import os
2
- import random
3
- import sys
4
- from typing import Sequence, Mapping, Any, Union
5
- import torch
6
-
7
-
8
- def get_value_at_index(obj: Union[Sequence, Mapping], index: int) -> Any:
9
- """Returns the value at the given index of a sequence or mapping.
10
-
11
- If the object is a sequence (like list or string), returns the value at the given index.
12
- If the object is a mapping (like a dictionary), returns the value at the index-th key.
13
-
14
- Some return a dictionary, in these cases, we look for the "results" key
15
-
16
- Args:
17
- obj (Union[Sequence, Mapping]): The object to retrieve the value from.
18
- index (int): The index of the value to retrieve.
19
-
20
- Returns:
21
- Any: The value at the given index.
22
-
23
- Raises:
24
- IndexError: If the index is out of bounds for the object and the object is not a mapping.
25
- """
26
- try:
27
- return obj[index]
28
- except KeyError:
29
- return obj["result"][index]
30
-
31
-
32
- def find_path(name: str, path: str = None) -> str:
33
- """
34
- Recursively looks at parent folders starting from the given path until it finds the given name.
35
- Returns the path as a Path object if found, or None otherwise.
36
- """
37
- # If no path is given, use the current working directory
38
- if path is None:
39
- path = os.getcwd()
40
-
41
- # Check if the current directory contains the name
42
- if name in os.listdir(path):
43
- path_name = os.path.join(path, name)
44
- print(f"{name} found: {path_name}")
45
- return path_name
46
-
47
- # Get the parent directory
48
- parent_directory = os.path.dirname(path)
49
-
50
- # If the parent directory is the same as the current directory, we've reached the root and stop the search
51
- if parent_directory == path:
52
- return None
53
-
54
- # Recursively call the function with the parent directory
55
- return find_path(name, parent_directory)
56
-
57
-
58
- def add_comfyui_directory_to_sys_path() -> None:
59
- """
60
- Add 'ComfyUI' to the sys.path
61
- """
62
- comfyui_path = find_path("ComfyUI")
63
- if comfyui_path is not None and os.path.isdir(comfyui_path):
64
- sys.path.append(comfyui_path)
65
- print(f"'{comfyui_path}' added to sys.path")
66
-
67
-
68
- def add_extra_model_paths() -> None:
69
- """
70
- Parse the optional extra_model_paths.yaml file and add the parsed paths to the sys.path.
71
- """
72
- try:
73
- from main import load_extra_path_config
74
- except ImportError:
75
- print(
76
- "Could not import load_extra_path_config from main.py. Looking in utils.extra_config instead."
77
- )
78
- from utils.extra_config import load_extra_path_config
79
-
80
- extra_model_paths = find_path("extra_model_paths.yaml")
81
-
82
- if extra_model_paths is not None:
83
- load_extra_path_config(extra_model_paths)
84
- else:
85
- print("Could not find the extra_model_paths config file.")
86
-
87
-
88
- add_comfyui_directory_to_sys_path()
89
- add_extra_model_paths()
90
-
91
-
92
- def import_custom_nodes() -> None:
93
- """Find all custom nodes in the custom_nodes folder and add those node objects to NODE_CLASS_MAPPINGS
94
-
95
- This function sets up a new asyncio event loop, initializes the PromptServer,
96
- creates a PromptQueue, and initializes the custom nodes.
97
- """
98
- import asyncio
99
- import execution
100
- from nodes import init_extra_nodes
101
- import server
102
-
103
- # Creating a new event loop and setting it as the default loop
104
- loop = asyncio.new_event_loop()
105
- asyncio.set_event_loop(loop)
106
-
107
- # Creating an instance of PromptServer with the loop
108
- server_instance = server.PromptServer(loop)
109
- execution.PromptQueue(server_instance)
110
-
111
- # Initializing custom nodes
112
- init_extra_nodes()
113
-
114
-
115
- from nodes import (
116
- VAELoader,
117
- ControlNetLoader,
118
- ControlNetApplyAdvanced,
119
- LoadImage,
120
- NODE_CLASS_MAPPINGS,
121
- UNETLoader,
122
- CLIPTextEncode,
123
- VAEEncode,
124
- SaveImage,
125
- VAEDecode,
126
- DualCLIPLoader,
127
- )
128
-
129
-
130
- def main():
131
- import_custom_nodes()
132
- with torch.inference_mode():
133
- dualcliploader = DualCLIPLoader()
134
- dualcliploader_94 = dualcliploader.load_clip(
135
- clip_name1="t5xxl_fp16.safetensors",
136
- clip_name2="clip_l.safetensors",
137
- type="flux",
138
- device="default",
139
- )
140
-
141
- cliptextencode = CLIPTextEncode()
142
- cliptextencode_23 = cliptextencode.encode(
143
- text="", clip=get_value_at_index(dualcliploader_94, 0)
144
- )
145
-
146
- loadimage = LoadImage()
147
- loadimage_24 = loadimage.load_image(image="elon (1).jpg")
148
-
149
- loadimage_40 = loadimage.load_image(image="chatgpt_elon.png")
150
-
151
- vaeloader = VAELoader()
152
- vaeloader_95 = vaeloader.load_vae(vae_name="FLUX1/ae.safetensors")
153
-
154
- vaeencode = VAEEncode()
155
- vaeencode_35 = vaeencode.encode(
156
- pixels=get_value_at_index(loadimage_40, 0),
157
- vae=get_value_at_index(vaeloader_95, 0),
158
- )
159
-
160
- randomnoise = NODE_CLASS_MAPPINGS["RandomNoise"]()
161
- randomnoise_39 = randomnoise.get_noise(noise_seed=random.randint(1, 2**64))
162
-
163
- cliptextencode_42 = cliptextencode.encode(
164
- text="", clip=get_value_at_index(dualcliploader_94, 0)
165
- )
166
-
167
- pulidfluxmodelloader = NODE_CLASS_MAPPINGS["PulidFluxModelLoader"]()
168
- pulidfluxmodelloader_44 = pulidfluxmodelloader.load_model(
169
- pulid_file="pulid_flux_v0.9.1.safetensors"
170
- )
171
-
172
- pulidfluxevacliploader = NODE_CLASS_MAPPINGS["PulidFluxEvaClipLoader"]()
173
- pulidfluxevacliploader_45 = pulidfluxevacliploader.load_eva_clip()
174
-
175
- pulidfluxinsightfaceloader = NODE_CLASS_MAPPINGS["PulidFluxInsightFaceLoader"]()
176
- pulidfluxinsightfaceloader_46 = pulidfluxinsightfaceloader.load_insightface(
177
- provider="CUDA"
178
- )
179
-
180
- controlnetloader = ControlNetLoader()
181
- controlnetloader_49 = controlnetloader.load_controlnet(
182
- control_net_name="Flux_Dev_ControlNet_Union_Pro_ShakkerLabs.safetensors"
183
- )
184
-
185
- ksamplerselect = NODE_CLASS_MAPPINGS["KSamplerSelect"]()
186
- ksamplerselect_50 = ksamplerselect.get_sampler(sampler_name="euler")
187
-
188
- unetloader = UNETLoader()
189
- unetloader_93 = unetloader.load_unet(
190
- unet_name="flux1-dev.safetensors", weight_dtype="default"
191
- )
192
-
193
- faceanalysismodels = NODE_CLASS_MAPPINGS["FaceAnalysisModels"]()
194
- faceanalysismodels_118 = faceanalysismodels.load_models(
195
- library="insightface", provider="CUDA"
196
- )
197
-
198
- applypulidflux = NODE_CLASS_MAPPINGS["ApplyPulidFlux"]()
199
- setunioncontrolnettype = NODE_CLASS_MAPPINGS["SetUnionControlNetType"]()
200
- controlnetapplyadvanced = ControlNetApplyAdvanced()
201
- basicguider = NODE_CLASS_MAPPINGS["BasicGuider"]()
202
- basicscheduler = NODE_CLASS_MAPPINGS["BasicScheduler"]()
203
- samplercustomadvanced = NODE_CLASS_MAPPINGS["SamplerCustomAdvanced"]()
204
- vaedecode = VAEDecode()
205
- faceembeddistance = NODE_CLASS_MAPPINGS["FaceEmbedDistance"]()
206
- saveimage = SaveImage()
207
-
208
- applypulidflux_31 = applypulidflux.apply_pulid_flux(
209
- weight=0.75,
210
- start_at=0.1,
211
- end_at=1,
212
- fusion="mean",
213
- fusion_weight_max=1,
214
- fusion_weight_min=0,
215
- train_step=1000,
216
- use_gray=True,
217
- model=get_value_at_index(unetloader_93, 0),
218
- pulid_flux=get_value_at_index(pulidfluxmodelloader_44, 0),
219
- eva_clip=get_value_at_index(pulidfluxevacliploader_45, 0),
220
- face_analysis=get_value_at_index(pulidfluxinsightfaceloader_46, 0),
221
- image=get_value_at_index(loadimage_24, 0),
222
- unique_id=17601617597548643515,
223
- )
224
-
225
- setunioncontrolnettype_41 = setunioncontrolnettype.set_controlnet_type(
226
- type="tile", control_net=get_value_at_index(controlnetloader_49, 0)
227
- )
228
-
229
- controlnetapplyadvanced_37 = controlnetapplyadvanced.apply_controlnet(
230
- strength=1,
231
- start_percent=0.1,
232
- end_percent=0.8,
233
- positive=get_value_at_index(cliptextencode_42, 0),
234
- negative=get_value_at_index(cliptextencode_23, 0),
235
- control_net=get_value_at_index(setunioncontrolnettype_41, 0),
236
- image=get_value_at_index(loadimage_40, 0),
237
- vae=get_value_at_index(vaeloader_95, 0),
238
- )
239
-
240
- basicguider_122 = basicguider.get_guider(
241
- model=get_value_at_index(applypulidflux_31, 0),
242
- conditioning=get_value_at_index(controlnetapplyadvanced_37, 0),
243
- )
244
-
245
- basicscheduler_131 = basicscheduler.get_sigmas(
246
- scheduler="beta",
247
- steps=28,
248
- denoise=0.75,
249
- model=get_value_at_index(applypulidflux_31, 0),
250
- )
251
-
252
- samplercustomadvanced_1 = samplercustomadvanced.sample(
253
- noise=get_value_at_index(randomnoise_39, 0),
254
- guider=get_value_at_index(basicguider_122, 0),
255
- sampler=get_value_at_index(ksamplerselect_50, 0),
256
- sigmas=get_value_at_index(basicscheduler_131, 0),
257
- latent_image=get_value_at_index(vaeencode_35, 0),
258
- )
259
-
260
- vaedecode_114 = vaedecode.decode(
261
- samples=get_value_at_index(samplercustomadvanced_1, 0),
262
- vae=get_value_at_index(vaeloader_95, 0),
263
- )
264
-
265
- faceembeddistance_117 = faceembeddistance.analize(
266
- similarity_metric="cosine",
267
- filter_thresh=100,
268
- filter_best=0,
269
- generate_image_overlay=True,
270
- analysis_models=get_value_at_index(faceanalysismodels_118, 0),
271
- reference=get_value_at_index(loadimage_24, 0),
272
- image=get_value_at_index(vaedecode_114, 0),
273
- )
274
-
275
- saveimage_128 = saveimage.save_images(
276
- filename_prefix="FaceEnhanced",
277
- images=get_value_at_index(vaedecode_114, 0),
278
- )
279
-
280
- saveimage_129 = saveimage.save_images(
281
- filename_prefix="FaceEmbedDist",
282
- images=get_value_at_index(faceembeddistance_117, 0),
283
- )
284
-
285
-
286
- if __name__ == "__main__":
287
- main()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
README.md CHANGED
@@ -35,5 +35,5 @@ Enhancing faces in AI generated images.
35
 
36
  This script will:
37
  - Install all required dependencies to your virtual environment
38
- - Set up ComfyUI and necessary components
39
- - Download and install all required models (FLUX, ControlNet, text encoders, and more)
 
35
 
36
  This script will:
37
  - Install all required dependencies to your virtual environment
38
+ - Install ComfyUI and necessary custom nodes
39
+ - Download and install all required models (FLUX, ControlNet, text encoders, PuLID, and more)
install.py CHANGED
@@ -191,7 +191,12 @@ def install_custom_nodes():
191
  "repo": "https://github.com/cubiq/ComfyUI_FaceAnalysis",
192
  "name": "ComfyUI_FaceAnalysis",
193
  "requirements": False
194
- }
 
 
 
 
 
195
  ]
196
 
197
  for node in custom_nodes_git:
 
191
  "repo": "https://github.com/cubiq/ComfyUI_FaceAnalysis",
192
  "name": "ComfyUI_FaceAnalysis",
193
  "requirements": False
194
+ },
195
+ # {
196
+ # "repo": "https://github.com/pydn/ComfyUI-to-Python-Extension",
197
+ # "name": "ComfyUI-to-Python-Extension",
198
+ # "requirements": True
199
+ # },
200
  ]
201
 
202
  for node in custom_nodes_git: