工作流 /
图像 /
FLUX 3 Image Klein:文生图

FLUX 3 Image Klein:文生图
FLUX 3 Image Klein: Text to Image
使用 FLUX 3 Image Klein 从文本提示生成图像,生成一张保存的图像,无需文件输入。非常适合概念艺术、营销视觉以及根据文字描述快速制作场景创意原型。
图像
8 个节点 1,113 次使用 ComfyUI ≥ 0.41.0 ComfyUI 56 KB
需要的权重
这个工作流引用了 4 个权重文件,其中 2 个能在本站模型库里找到。
flux2-vae.safetensors
在模型库查看
flux3-image-klein-base-int8-convrot.safetensors
模型库暂未收录
qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors
模型库暂未收录
qwen3vl_4b_int8_convrot.safetensors
在模型库查看
节点构成
MarkdownNote
× 2
SaveImage
× 1
3301b744-2960-415a-83b0-fe8a89d99fdb
× 1
ResolutionSelector
× 1
CreateBoundingBoxes
× 1
PreviewAny
× 1
Flux3LayoutPrompt
× 1
官方标注的模型
FLUX 3 Image
工作流 JSON
和上面「下载工作流 JSON」是同一份文件。
1{
2 "id": "e8f30439-267f-45de-b260-db0d114b2c85",
3 "revision": 0,
4 "last_node_id": 27,
5 "last_link_id": 47,
6 "nodes": [
7 {
8 "id": 9,
9 "type": "SaveImage",
10 "pos": [
11 720,
12 -130
13 ],
14 "size": [
15 570,
16 620
17 ],
18 "flags": [],
19 "order": 6,
20 "mode": 0,
21 "inputs": [
22 {
23 "name": "images",
24 "type": "IMAGE",
25 "link": 22
26 }
27 ],
28 "outputs": [
29 {
30 "name": "images",
31 "type": "IMAGE",
32 "links": null
33 }
34 ],
35 "properties": {
36 "Node name for S&R": "SaveImage"
37 },
38 "widgets_values": [
39 "image_flux3_klein_base_t2i"
40 ],
41 "widgets_values_named": {
42 "filename_prefix": "image_flux3_klein_base_t2i"
43 }
44 },
45 {
46 "id": 18,
47 "type": "3301b744-2960-415a-83b0-fe8a89d99fdb",
48 "pos": [
49 260,
50 -130
51 ],
52 "size": [
53 420,
54 620
55 ],
56 "flags": [],
57 "order": 4,
58 "mode": 0,
59 "inputs": [
60 {
61 "label": "positive_prompt",
62 "name": "value",
63 "type": "STRING",
64 "widget": {
65 "name": "value"
66 },
67 "link": null
68 },
69 {
70 "label": "enable_prompt_upsampler",
71 "name": "switch",
72 "type": "BOOLEAN",
73 "widget": {
74 "name": "switch"
75 },
76 "link": null
77 },
78 {
79 "label": "negative_prompt",
80 "name": "text",
81 "type": "STRING",
82 "widget": {
83 "name": "text"
84 },
85 "link": null
86 },
87 {
88 "name": "width",
89 "type": "INT",
90 "widget": {
91 "name": "width"
92 },
93 "link": 40
94 },
95 {
96 "name": "height",
97 "type": "INT",
98 "widget": {
99 "name": "height"
100 },
101 "link": 41
102 },
103 {
104 "label": "unet_model",
105 "name": "unet_name",
106 "type": "COMBO",
107 "widget": {
108 "name": "unet_name"
109 },
110 "link": null
111 },
112 {
113 "label": "clip_model",
114 "name": "clip_name",
115 "type": "COMBO",
116 "widget": {
117 "name": "clip_name"
118 },
119 "link": null
120 },
121 {
122 "label": "vae_model",
123 "name": "vae_name",
124 "type": "COMBO",
125 "widget": {
126 "name": "vae_name"
127 },
128 "link": null
129 },
130 {
131 "label": "PE_model",
132 "name": "clip_name_1",
133 "type": "COMBO",
134 "widget": {
135 "name": "clip_name_1"
136 },
137 "link": null
138 }
139 ],
140 "outputs": [
141 {
142 "name": "IMAGE",
143 "type": "IMAGE",
144 "links": [
145 22
146 ]
147 }
148 ],
149 "properties": {
150 "previewExposures": []
151 },
152 "widgets_values": [
153 "close up profile of a young male athlete with closed eyes pressing his sweaty forehead against a soccer ball, right hand gripping the ball, stark white background, athletic jacket, white ball with jagged red graphic patterns, high contrast studio lighting, highly detailed skin texture, sharp focus Absolutely no text, no typography, no letters, no words, no numbers, no logos, no watermark, no captions, pure imagery only.",
154 true,
155 "",
156 1024,
157 1024,
158 758781618552631,
159 3.5,
160 50,
161 "euler",
162 "simple",
163 "flux3-image-klein-base-int8-convrot.safetensors",
164 "qwen3vl_4b_int8_convrot.safetensors",
165 "flux2-vae.safetensors",
166 "qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors"
167 ],
168 "widgets_values_named": {
169 "value": "close up profile of a young male athlete with closed eyes pressing his sweaty forehead against a soccer ball, right hand gripping the ball, stark white background, athletic jacket, white ball with jagged red graphic patterns, high contrast studio lighting, highly detailed skin texture, sharp focus Absolutely no text, no typography, no letters, no words, no numbers, no logos, no watermark, no captions, pure imagery only.",
170 "switch": true,
171 "text": "",
172 "width": 1024,
173 "height": 1024,
174 "seed": 758781618552631,
175 "cfg": 3.5,
176 "steps": 50,
177 "sampler_name": "euler",
178 "scheduler": "simple",
179 "unet_name": "flux3-image-klein-base-int8-convrot.safetensors",
180 "clip_name": "qwen3vl_4b_int8_convrot.safetensors",
181 "vae_name": "flux2-vae.safetensors",
182 "clip_name_1": "qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors"
183 }
184 },
185 {
186 "id": 19,
187 "type": "ResolutionSelector",
188 "pos": [
189 -70,
190 160
191 ],
192 "size": [
193 270,
194 150
195 ],
196 "flags": [],
197 "order": 0,
198 "mode": 0,
199 "showAdvanced": true,
200 "inputs": [],
201 "outputs": [
202 {
203 "name": "width",
204 "type": "INT",
205 "links": [
206 40
207 ]
208 },
209 {
210 "name": "height",
211 "type": "INT",
212 "links": [
213 41
214 ]
215 }
216 ],
217 "properties": {
218 "Node name for S&R": "ResolutionSelector"
219 },
220 "widgets_values": [
221 "1:1 (Square)",
222 1,
223 16
224 ],
225 "widgets_values_named": {
226 "aspect_ratio": "1:1 (Square)",
227 "megapixels": 1,
228 "multiple": 16
229 }
230 },
231 {
232 "id": 20,
233 "type": "MarkdownNote",
234 "pos": [
235 -570,
236 -130
237 ],
238 "size": [
239 470,
240 660
241 ],
242 "flags": [],
243 "order": 1,
244 "mode": 0,
245 "inputs": [],
246 "outputs": [],
247 "properties": [],
248 "widgets_values": [
249 "Guide: [Subgraph](https://docs.comfy.org/interface/features/subgraph)\n\n## Model Links\n\n- [Hugging Face:black-forest-labs/flux-3-image-klein-comfy](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy)\n\n**text_encoders**\n\n- [qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/text_encoders/qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors)\n- [qwen3vl_4b_int8_convrot.safetensors](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/text_encoders/qwen3vl_4b_int8_convrot.safetensors)\n\n> **VRAM tip** — this template ships the quantised base checkpoint to keep the footprint small. With more than 24 GB of VRAM, use the bf16 weights instead: [`flux3-image-klein-base-bf16.safetensors`](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/diffusion_models/flux3-image-klein-base-bf16.safetensors).\n\n**diffusion_models**\n\n- [flux3-image-klein-base-int8-convrot.safetensors](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/diffusion_models/flux3-image-klein-base-int8-convrot.safetensors)\n\n**vae**\n\n- [flux2-vae.safetensors](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/vae/flux2-vae.safetensors)\n\n\n## Model Storage Location\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│ ├── 📂 text_encoders/\n│ │ ├── qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors\n│ │ └── qwen3vl_4b_int8_convrot.safetensors\n│ ├── 📂 diffusion_models/\n│ │ └── flux3-image-klein-base-int8-convrot.safetensors\n│ └── 📂 vae/\n│ └── flux2-vae.safetensors\n```\n\n## Report Issue\n\nNote: Please update ComfyUI first ([guide](https://docs.comfy.org/installation/update_comfyui)) and prepare required models. Desktop/Cloud updates follow stable releases, so some nightly-supported models may not be available yet.\n\n- Cannot run / runtime errors: [ComfyUI/issues](https://github.com/comfyanonymous/ComfyUI/issues)\n- UI / frontend issues: [ComfyUI_frontend/issues](https://github.com/Comfy-Org/ComfyUI_frontend/issues)\n- Workflow issues: [workflow_templates/issues](https://github.com/Comfy-Org/workflow_templates/issues)\n"
250 ],
251 "widgets_values_named": {
252 "text": "Guide: [Subgraph](https://docs.comfy.org/interface/features/subgraph)\n\n## Model Links\n\n- [Hugging Face:black-forest-labs/flux-3-image-klein-comfy](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy)\n\n**text_encoders**\n\n- [qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/text_encoders/qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors)\n- [qwen3vl_4b_int8_convrot.safetensors](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/text_encoders/qwen3vl_4b_int8_convrot.safetensors)\n\n> **VRAM tip** — this template ships the quantised base checkpoint to keep the footprint small. With more than 24 GB of VRAM, use the bf16 weights instead: [`flux3-image-klein-base-bf16.safetensors`](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/diffusion_models/flux3-image-klein-base-bf16.safetensors).\n\n**diffusion_models**\n\n- [flux3-image-klein-base-int8-convrot.safetensors](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/diffusion_models/flux3-image-klein-base-int8-convrot.safetensors)\n\n**vae**\n\n- [flux2-vae.safetensors](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/vae/flux2-vae.safetensors)\n\n\n## Model Storage Location\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│ ├── 📂 text_encoders/\n│ │ ├── qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors\n│ │ └── qwen3vl_4b_int8_convrot.safetensors\n│ ├── 📂 diffusion_models/\n│ │ └── flux3-image-klein-base-int8-convrot.safetensors\n│ └── 📂 vae/\n│ └── flux2-vae.safetensors\n```\n\n## Report Issue\n\nNote: Please update ComfyUI first ([guide](https://docs.comfy.org/installation/update_comfyui)) and prepare required models. Desktop/Cloud updates follow stable releases, so some nightly-supported models may not be available yet.\n\n- Cannot run / runtime errors: [ComfyUI/issues](https://github.com/comfyanonymous/ComfyUI/issues)\n- UI / frontend issues: [ComfyUI_frontend/issues](https://github.com/Comfy-Org/ComfyUI_frontend/issues)\n- Workflow issues: [workflow_templates/issues](https://github.com/Comfy-Org/workflow_templates/issues)\n"
253 },
254 "color": "#222",
255 "bgcolor": "#000"
256 },
257 {
258 "id": 24,
259 "type": "MarkdownNote",
260 "pos": [
261 -10,
262 1130
263 ],
264 "size": [
265 210,
266 90
267 ],
268 "flags": [],
269 "order": 2,
270 "mode": 0,
271 "inputs": [],
272 "outputs": [],
273 "properties": [],
274 "widgets_values": [
275 "Plug the `STRING` output into the `prompt` input of the `Text to Image (FLUX 3 Image Klein SD)` node when you want to use bounding box\n"
276 ],
277 "widgets_values_named": {
278 "text": "Plug the `STRING` output into the `prompt` input of the `Text to Image (FLUX 3 Image Klein SD)` node when you want to use bounding box\n"
279 },
280 "color": "#222",
281 "bgcolor": "#000"
282 },
283 {
284 "id": 25,
285 "type": "CreateBoundingBoxes",
286 "pos": [
287 -550,
288 630
289 ],
290 "size": [
291 420,
292 560
293 ],
294 "flags": [],
295 "order": 3,
296 "mode": 0,
297 "inputs": [
298 {
299 "name": "background",
300 "shape": 7,
301 "type": "IMAGE",
302 "link": null
303 },
304 {
305 "name": "bboxes",
306 "shape": 7,
307 "type": "BOUNDING_BOX,ARRAY,STRING",
308 "link": null
309 }
310 ],
311 "outputs": [
312 {
313 "name": "preview",
314 "type": "IMAGE",
315 "links": []
316 },
317 {
318 "name": "bboxes",
319 "type": "BOUNDING_BOX",
320 "links": []
321 },
322 {
323 "name": "elements",
324 "type": "ARRAY",
325 "links": [
326 47
327 ]
328 }
329 ],
330 "properties": {
331 "Node name for S&R": "CreateBoundingBoxes"
332 },
333 "widgets_values": [
334 1024,
335 1024,
336 [],
337 []
338 ],
339 "widgets_values_named": {
340 "width": 1024,
341 "height": 1024,
342 "editor_state": [],
343 "last_incoming": []
344 }
345 },
346 {
347 "id": 26,
348 "type": "PreviewAny",
349 "pos": [
350 -90,
351 900
352 ],
353 "size": [
354 390,
355 180
356 ],
357 "flags": [],
358 "order": 7,
359 "mode": 0,
360 "inputs": [
361 {
362 "name": "source",
363 "type": "*",
364 "link": 46
365 }
366 ],
367 "outputs": [
368 {
369 "name": "STRING",
370 "type": "STRING",
371 "links": []
372 }
373 ],
374 "properties": {
375 "Node name for S&R": "PreviewAny"
376 },
377 "widgets_values": [],
378 "widgets_values_named": []
379 },
380 {
381 "id": 27,
382 "type": "Flux3LayoutPrompt",
383 "pos": [
384 -100,
385 640
386 ],
387 "size": [
388 400,
389 200
390 ],
391 "flags": [],
392 "order": 5,
393 "mode": 0,
394 "inputs": [
395 {
396 "name": "element",
397 "type": "ARRAY",
398 "link": 47
399 }
400 ],
401 "outputs": [
402 {
403 "name": "prompt",
404 "type": "STRING",
405 "links": [
406 46
407 ]
408 }
409 ],
410 "properties": {
411 "Node name for S&R": "Flux3LayoutPrompt"
412 },
413 "widgets_values": [
414 ""
415 ],
416 "widgets_values_named": {
417 "prompt": ""
418 }
419 }
420 ],
421 "links": [
422 [
423 22,
424 18,
425 0,
426 9,
427 0,
428 "IMAGE"
429 ],
430 [
431 40,
432 19,
433 0,
434 18,
435 3,
436 "INT"
437 ],
438 [
439 41,
440 19,
441 1,
442 18,
443 4,
444 "INT"
445 ],
446 [
447 46,
448 27,
449 0,
450 26,
451 0,
452 "STRING"
453 ],
454 [
455 47,
456 25,
457 2,
458 27,
459 0,
460 "ARRAY"
461 ]
462 ],
463 "groups": [
464 {
465 "id": 5,
466 "title": "Create bounding boxes for precise control",
467 "bounding": [
468 -560,
469 560,
470 868.5829359476047,
471 670
472 ],
473 "color": "#444",
474 "flags": []
475 }
476 ],
477 "definitions": {
478 "subgraphs": [
479 {
480 "id": "3301b744-2960-415a-83b0-fe8a89d99fdb",
481 "version": 1,
482 "state": {
483 "lastGroupId": 5,
484 "lastNodeId": 27,
485 "lastLinkId": 47,
486 "lastRerouteId": 0
487 },
488 "revision": 0,
489 "config": [],
490 "name": "Text to Image (FLUX 3 Image Klein)",
491 "inputNode": {
492 "id": -10,
493 "bounding": [
494 -1020,
495 -120,
496 197.865234375,
497 328
498 ]
499 },
500 "outputNode": {
501 "id": -20,
502 "bounding": [
503 1390,
504 -163.32889918205035,
505 128,
506 68
507 ]
508 },
509 "inputs": [
510 {
511 "id": "35437e31-565b-4d42-bc06-d95c5929e7d8",
512 "name": "value",
513 "type": "STRING",
514 "linkIds": [
515 25
516 ],
517 "label": "positive_prompt",
518 "pos": [
519 -846.134765625,
520 -96
521 ]
522 },
523 {
524 "id": "853a4192-ebce-42de-bdff-77c36b59cc1a",
525 "name": "switch",
526 "type": "BOOLEAN",
527 "linkIds": [
528 26
529 ],
530 "label": "enable_prompt_upsampler",
531 "pos": [
532 -846.134765625,
533 -76
534 ]
535 },
536 {
537 "id": "c11f1876-7b42-4679-a736-8deaa8f21fd7",
538 "name": "text",
539 "type": "STRING",
540 "linkIds": [
541 43
542 ],
543 "label": "negative_prompt",
544 "pos": [
545 -846.134765625,
546 -56
547 ]
548 },
549 {
550 "id": "1514590b-7a78-450b-82b4-cfbe7820a9db",
551 "name": "width",
552 "type": "INT",
553 "linkIds": [
554 27
555 ],
556 "pos": [
557 -846.134765625,
558 -36
559 ]
560 },
561 {
562 "id": "f2e18bfe-65b0-4d24-9c78-bec0b9573e97",
563 "name": "height",
564 "type": "INT",
565 "linkIds": [
566 28
567 ],
568 "pos": [
569 -846.134765625,
570 -16
571 ]
572 },
573 {
574 "id": "32c26da2-7e60-44bf-851a-72690937b4b4",
575 "name": "seed",
576 "type": "INT",
577 "linkIds": [
578 30
579 ],
580 "pos": [
581 -846.134765625,
582 4
583 ]
584 },
585 {
586 "id": "6c064d6f-9925-4808-83cc-7e3409190ca7",
587 "name": "cfg",
588 "type": "FLOAT",
589 "linkIds": [
590 44
591 ],
592 "pos": [
593 -846.134765625,
594 24
595 ]
596 },
597 {
598 "id": "dae5d571-ced0-46d6-8a0a-5a71b8ca945a",
599 "name": "steps",
600 "type": "INT",
601 "linkIds": [
602 42
603 ],
604 "pos": [
605 -846.134765625,
606 44
607 ]
608 },
609 {
610 "id": "46e71c72-9f95-4c32-89d2-2dab4b63b284",
611 "name": "sampler_name",
612 "type": "COMBO",
613 "linkIds": [
614 33
615 ],
616 "pos": [
617 -846.134765625,
618 64
619 ]
620 },
621 {
622 "id": "8ba10fc2-8e73-4ece-8f77-27515bbe2698",
623 "name": "scheduler",
624 "type": "COMBO",
625 "linkIds": [
626 34
627 ],
628 "pos": [
629 -846.134765625,
630 84
631 ]
632 },
633 {
634 "id": "bc8e2627-1b51-4333-9d88-0cb6307f7545",
635 "name": "unet_name",
636 "type": "COMBO",
637 "linkIds": [
638 35
639 ],
640 "label": "unet_model",
641 "pos": [
642 -846.134765625,
643 104
644 ]
645 },
646 {
647 "id": "fe422dee-acbe-4c34-898b-62bb878ddb83",
648 "name": "clip_name",
649 "type": "COMBO",
650 "linkIds": [
651 36
652 ],
653 "label": "clip_model",
654 "pos": [
655 -846.134765625,
656 124
657 ]
658 },
659 {
660 "id": "29a73fdf-7b55-4612-8966-bba0b4cab854",
661 "name": "vae_name",
662 "type": "COMBO",
663 "linkIds": [
664 37
665 ],
666 "label": "vae_model",
667 "pos": [
668 -846.134765625,
669 144
670 ]
671 },
672 {
673 "id": "b9c679d9-c634-4fa8-92e7-b2921ad34dd0",
674 "name": "clip_name_1",
675 "type": "COMBO",
676 "linkIds": [
677 38
678 ],
679 "label": "PE_model",
680 "pos": [
681 -846.134765625,
682 164
683 ]
684 }
685 ],
686 "outputs": [
687 {
688 "id": "fa9fefe4-677e-4f8b-aba5-35459b097c37",
689 "name": "IMAGE",
690 "type": "IMAGE",
691 "linkIds": [
692 6
693 ],
694 "localized_name": "IMAGE",
695 "pos": [
696 1414,
697 -139.32889918205035
698 ]
699 }
700 ],
701 "widgets": [],
702 "nodes": [
703 {
704 "id": 17,
705 "type": "PrimitiveStringMultiline",
706 "pos": [
707 -680,
708 -950
709 ],
710 "size": [
711 490,
712 450
713 ],
714 "flags": [],
715 "order": 13,
716 "mode": 0,
717 "inputs": [
718 {
719 "localized_name": "value",
720 "name": "value",
721 "type": "STRING",
722 "widget": {
723 "name": "value"
724 },
725 "link": 25
726 }
727 ],
728 "outputs": [
729 {
730 "localized_name": "STRING",
731 "name": "STRING",
732 "type": "STRING",
733 "links": [
734 15,
735 17
736 ]
737 }
738 ],
739 "properties": {
740 "Node name for S&R": "PrimitiveStringMultiline"
741 },
742 "widgets_values": [
743 ""
744 ],
745 "widgets_values_named": {
746 "value": ""
747 }
748 },
749 {
750 "id": 12,
751 "type": "CLIPLoader",
752 "pos": [
753 -140,
754 -930
755 ],
756 "size": [
757 500,
758 110
759 ],
760 "flags": [],
761 "order": 10,
762 "mode": 0,
763 "inputs": [
764 {
765 "localized_name": "clip_name",
766 "name": "clip_name",
767 "type": "COMBO",
768 "widget": {
769 "name": "clip_name"
770 },
771 "link": 38
772 }
773 ],
774 "outputs": [
775 {
776 "localized_name": "CLIP",
777 "name": "CLIP",
778 "type": "CLIP",
779 "links": [
780 10
781 ]
782 }
783 ],
784 "properties": {
785 "Node name for S&R": "CLIPLoader",
786 "models": [
787 {
788 "name": "qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors",
789 "url": "https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/text_encoders/qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors",
790 "directory": "text_encoders"
791 }
792 ]
793 },
794 "widgets_values": [
795 "qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors",
796 "flux3",
797 "default"
798 ],
799 "widgets_values_named": {
800 "clip_name": "qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors",
801 "type": "flux3",
802 "device": "default"
803 }
804 },
805 {
806 "id": 14,
807 "type": "PrimitiveStringMultiline",
808 "pos": [
809 -150,
810 -750
811 ],
812 "size": [
813 530,
814 700
815 ],
816 "flags": [],
817 "order": 0,
818 "mode": 0,
819 "inputs": [],
820 "outputs": [
821 {
822 "localized_name": "STRING",
823 "name": "STRING",
824 "type": "STRING",
825 "links": [
826 13
827 ]
828 }
829 ],
830 "title": "Text (System prompt)",
831 "properties": {
832 "Node name for S&R": "PrimitiveStringMultiline"
833 },
834 "widgets_values": [
835 "You are the prompt upsampler of a text-to-image model. Expand the user's short request into ONE detailed, self-contained caption: the exact text the image model receives. Output only the caption, with no greetings, explanations, refusals, questions, Markdown, headings, JSON, coordinates, ids or angle-bracket tokens, and no quotes around it. If the input is not clearly an image request, caption a visualization of its concept. The request may begin with a \"TARGET CANVAS: W:H\" line: compose for that canvas (wide spreads content sideways, tall stacks it) and never mention the ratio or the canvas.\n\nFidelity and planning: keep every explicit subject, attribute, count, spatial constraint, style cue and piece of wording; never contradict, substitute, drop or narrow the request, and keep an abstract concept abstract. Decide everything left open as ONE concrete, consistent plan; never offer alternatives or hedge. Never re-express a stated constraint through another mechanism; add camera optics (depth of field, bokeh, blur) only when asked for or implied. Without a stated style, plan an actual photograph and open with the medium convention (\"Full-color outdoor photograph, ...\", \"Full-color indoor photograph, ...\", \"Studio photograph, ...\", \"Close-up photograph, ...\"); keep \"Photorealistic\" for renders, and turn \"photorealistic\" or \"realistic\" requests for photos into the photograph convention. Give a photograph a few ordinary, non-ideal specifics drawn from the scene's own objects instead of the stock-photo ideal. Do not invent names, brands, logos or celebrities; keep user-named ones. A long request keeps its content but not its wording: drop appraisal and sales vocabulary, turn moods into observable physical facts, and add only new concrete content with positions. Time of day is lighting, not rendered text.\n\nCaption format: one continuous prose block in the generative voice, never \"this image shows\", \"we can see\" or \"is visible\". Lead with medium and style, then scene, lighting and camera, then the subjects with concrete colors, materials and state. Every person in focus gets an observable profile: ethnicity, gender, age range, skin tone (\"fair skin\", \"brown skin\"), hair and clothing. Make the layout reconstructable from words: frame-relative positions (frame-left, frame-right, upper, lower, foreground, midground, background), sentence-initial anchors (\"On the left, ...\", \"In the background, ...\"), relations (holds, faces, behind) and a consistent order; describe up to about ten instances one by one, beyond that give the exact count and arrangement. Out-of-focus or distant planes are shapes, colors and silhouettes, never identities or readable text, and the background takes about a sixth of the caption. Be definite: no hedging adverbs, no quality or emotion judgments, no closing sentence about mood; state negations as what is present. Rendered text: transcribe every wording verbatim inside double quotes in its original language and script, keep the line breaks of multi-line text, and give its typography, color and placement; author concrete, domain-correct wording when the request needs text it does not supply, and name canonical structures (calendar, keyboard, periodic table) exactly with their full layout. All prose is English; only quoted text keeps its language. Typical length is 100 to 350 words, more for complex scenes.\n\nOutput only the caption.\n"
836 ],
837 "widgets_values_named": {
838 "value": "You are the prompt upsampler of a text-to-image model. Expand the user's short request into ONE detailed, self-contained caption: the exact text the image model receives. Output only the caption, with no greetings, explanations, refusals, questions, Markdown, headings, JSON, coordinates, ids or angle-bracket tokens, and no quotes around it. If the input is not clearly an image request, caption a visualization of its concept. The request may begin with a \"TARGET CANVAS: W:H\" line: compose for that canvas (wide spreads content sideways, tall stacks it) and never mention the ratio or the canvas.\n\nFidelity and planning: keep every explicit subject, attribute, count, spatial constraint, style cue and piece of wording; never contradict, substitute, drop or narrow the request, and keep an abstract concept abstract. Decide everything left open as ONE concrete, consistent plan; never offer alternatives or hedge. Never re-express a stated constraint through another mechanism; add camera optics (depth of field, bokeh, blur) only when asked for or implied. Without a stated style, plan an actual photograph and open with the medium convention (\"Full-color outdoor photograph, ...\", \"Full-color indoor photograph, ...\", \"Studio photograph, ...\", \"Close-up photograph, ...\"); keep \"Photorealistic\" for renders, and turn \"photorealistic\" or \"realistic\" requests for photos into the photograph convention. Give a photograph a few ordinary, non-ideal specifics drawn from the scene's own objects instead of the stock-photo ideal. Do not invent names, brands, logos or celebrities; keep user-named ones. A long request keeps its content but not its wording: drop appraisal and sales vocabulary, turn moods into observable physical facts, and add only new concrete content with positions. Time of day is lighting, not rendered text.\n\nCaption format: one continuous prose block in the generative voice, never \"this image shows\", \"we can see\" or \"is visible\". Lead with medium and style, then scene, lighting and camera, then the subjects with concrete colors, materials and state. Every person in focus gets an observable profile: ethnicity, gender, age range, skin tone (\"fair skin\", \"brown skin\"), hair and clothing. Make the layout reconstructable from words: frame-relative positions (frame-left, frame-right, upper, lower, foreground, midground, background), sentence-initial anchors (\"On the left, ...\", \"In the background, ...\"), relations (holds, faces, behind) and a consistent order; describe up to about ten instances one by one, beyond that give the exact count and arrangement. Out-of-focus or distant planes are shapes, colors and silhouettes, never identities or readable text, and the background takes about a sixth of the caption. Be definite: no hedging adverbs, no quality or emotion judgments, no closing sentence about mood; state negations as what is present. Rendered text: transcribe every wording verbatim inside double quotes in its original language and script, keep the line breaks of multi-line text, and give its typography, color and placement; author concrete, domain-correct wording when the request needs text it does not supply, and name canonical structures (calendar, keyboard, periodic table) exactly with their full layout. All prose is English; only quoted text keeps its language. Typical length is 100 to 350 words, more for complex scenes.\n\nOutput only the caption.\n"
839 }
840 },
841 {
842 "id": 11,
843 "type": "TextGenerate",
844 "pos": [
845 400,
846 -930
847 ],
848 "size": [
849 400,
850 460
851 ],
852 "flags": [],
853 "order": 9,
854 "mode": 0,
855 "inputs": [
856 {
857 "localized_name": "clip",
858 "name": "clip",
859 "type": "CLIP",
860 "link": 10
861 },
862 {
863 "localized_name": "image",
864 "name": "image",
865 "shape": 7,
866 "type": "IMAGE",
867 "link": null
868 },
869 {
870 "localized_name": "video",
871 "name": "video",
872 "shape": 7,
873 "type": "IMAGE",
874 "link": null
875 },
876 {
877 "localized_name": "audio",
878 "name": "audio",
879 "shape": 7,
880 "type": "AUDIO",
881 "link": null
882 },
883 {
884 "localized_name": "system_prompt",
885 "name": "system_prompt",
886 "shape": 7,
887 "type": "STRING",
888 "link": 13
889 },
890 {
891 "localized_name": "prompt",
892 "name": "prompt",
893 "type": "STRING",
894 "widget": {
895 "name": "prompt"
896 },
897 "link": 17
898 }
899 ],
900 "outputs": [
901 {
902 "localized_name": "generated_text",
903 "name": "generated_text",
904 "type": "STRING",
905 "links": [
906 19
907 ]
908 },
909 {
910 "localized_name": "thinking",
911 "name": "thinking",
912 "type": "STRING",
913 "links": null
914 }
915 ],
916 "properties": {
917 "Node name for S&R": "TextGenerate"
918 },
919 "widgets_values": [
920 "",
921 3584,
922 "on",
923 1,
924 1,
925 0.95,
926 0,
927 1,
928 0,
929 1.5,
930 false,
931 true,
932 "off"
933 ],
934 "widgets_values_named": {
935 "prompt": "",
936 "max_length": 3584,
937 "sampling_mode": "on",
938 "sampling_mode.temperature": 1,
939 "sampling_mode.top_k": 1,
940 "sampling_mode.top_p": 0.95,
941 "sampling_mode.min_p": 0,
942 "sampling_mode.repetition_penalty": 1,
943 "sampling_mode.seed": 0,
944 "sampling_mode.presence_penalty": 1.5,
945 "thinking": false,
946 "use_default_template": true,
947 "mtp": "off"
948 }
949 },
950 {
951 "id": 1,
952 "type": "UNETLoader",
953 "pos": [
954 -150,
955 60
956 ],
957 "size": [
958 340,
959 90
960 ],
961 "flags": [],
962 "order": 1,
963 "mode": 0,
964 "inputs": [
965 {
966 "localized_name": "unet_name",
967 "name": "unet_name",
968 "type": "COMBO",
969 "widget": {
970 "name": "unet_name"
971 },
972 "link": 35
973 }
974 ],
975 "outputs": [
976 {
977 "localized_name": "MODEL",
978 "name": "MODEL",
979 "type": "MODEL",
980 "slot_index": 0,
981 "links": [
982 1
983 ]
984 }
985 ],
986 "properties": {
987 "Node name for S&R": "UNETLoader",
988 "models": [
989 {
990 "name": "flux3-image-klein-base-int8-convrot.safetensors",
991 "url": "https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/diffusion_models/flux3-image-klein-base-int8-convrot.safetensors",
992 "directory": "diffusion_models"
993 }
994 ]
995 },
996 "widgets_values": [
997 "flux3-image-klein-base-int8-convrot.safetensors",
998 "default"
999 ],
1000 "widgets_values_named": {
1001 "unet_name": "flux3-image-klein-base-int8-convrot.safetensors",
1002 "weight_dtype": "default"
1003 },
1004 "color": "#223",
1005 "bgcolor": "#335"
1006 },
1007 {
1008 "id": 4,
1009 "type": "CLIPTextEncode",
1010 "pos": [
1011 250,
1012 90
1013 ],
1014 "size": [
1015 450,
1016 460
1017 ],
1018 "flags": [],
1019 "order": 4,
1020 "mode": 0,
1021 "inputs": [
1022 {
1023 "localized_name": "clip",
1024 "name": "clip",
1025 "type": "CLIP",
1026 "link": 2
1027 },
1028 {
1029 "localized_name": "text",
1030 "name": "text",
1031 "type": "STRING",
1032 "widget": {
1033 "name": "text"
1034 },
1035 "link": 20
1036 }
1037 ],
1038 "outputs": [
1039 {
1040 "localized_name": "CONDITIONING",
1041 "name": "CONDITIONING",
1042 "type": "CONDITIONING",
1043 "slot_index": 0,
1044 "links": [
1045 8
1046 ]
1047 }
1048 ],
1049 "title": "Positive Prompt",
1050 "properties": {
1051 "Node name for S&R": "CLIPTextEncode"
1052 },
1053 "widgets_values": [
1054 "A close-up photograph of a red fox standing in fresh snow at sunrise. The fox faces the camera with alert ears and amber eyes, its thick orange fur dusted with snowflakes. Soft golden light comes from the left, the background is a blurred line of snow-covered pine trees, shallow depth of field."
1055 ],
1056 "widgets_values_named": {
1057 "text": "A close-up photograph of a red fox standing in fresh snow at sunrise. The fox faces the camera with alert ears and amber eyes, its thick orange fur dusted with snowflakes. Soft golden light comes from the left, the background is a blurred line of snow-covered pine trees, shallow depth of field."
1058 },
1059 "color": "#232",
1060 "bgcolor": "#353"
1061 },
1062 {
1063 "id": 2,
1064 "type": "CLIPLoader",
1065 "pos": [
1066 -150,
1067 220
1068 ],
1069 "size": [
1070 340,
1071 110
1072 ],
1073 "flags": [],
1074 "order": 2,
1075 "mode": 0,
1076 "inputs": [
1077 {
1078 "localized_name": "clip_name",
1079 "name": "clip_name",
1080 "type": "COMBO",
1081 "widget": {
1082 "name": "clip_name"
1083 },
1084 "link": 36
1085 }
1086 ],
1087 "outputs": [
1088 {
1089 "localized_name": "CLIP",
1090 "name": "CLIP",
1091 "type": "CLIP",
1092 "slot_index": 0,
1093 "links": [
1094 2,
1095 3
1096 ]
1097 }
1098 ],
1099 "properties": {
1100 "Node name for S&R": "CLIPLoader",
1101 "models": [
1102 {
1103 "name": "qwen3vl_4b_int8_convrot.safetensors",
1104 "url": "https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/text_encoders/qwen3vl_4b_int8_convrot.safetensors",
1105 "directory": "text_encoders"
1106 }
1107 ]
1108 },
1109 "widgets_values": [
1110 "qwen3vl_4b_int8_convrot.safetensors",
1111 "flux3",
1112 "default"
1113 ],
1114 "widgets_values_named": {
1115 "clip_name": "qwen3vl_4b_int8_convrot.safetensors",
1116 "type": "flux3",
1117 "device": "default"
1118 },
1119 "color": "#432",
1120 "bgcolor": "#653"
1121 },
1122 {
1123 "id": 7,
1124 "type": "KSampler",
1125 "pos": [
1126 760,
1127 30
1128 ],
1129 "size": [
1130 320,
1131 480
1132 ],
1133 "flags": [],
1134 "order": 7,
1135 "mode": 0,
1136 "inputs": [
1137 {
1138 "localized_name": "model",
1139 "name": "model",
1140 "type": "MODEL",
1141 "link": 1
1142 },
1143 {
1144 "localized_name": "positive",
1145 "name": "positive",
1146 "type": "CONDITIONING",
1147 "link": 8
1148 },
1149 {
1150 "localized_name": "negative",
1151 "name": "negative",
1152 "type": "CONDITIONING",
1153 "link": 9
1154 },
1155 {
1156 "localized_name": "latent_image",
1157 "name": "latent_image",
1158 "type": "LATENT",
1159 "link": 39
1160 },
1161 {
1162 "localized_name": "seed",
1163 "name": "seed",
1164 "type": "INT",
1165 "widget": {
1166 "name": "seed"
1167 },
1168 "link": 30
1169 },
1170 {
1171 "localized_name": "steps",
1172 "name": "steps",
1173 "type": "INT",
1174 "widget": {
1175 "name": "steps"
1176 },
1177 "link": 42
1178 },
1179 {
1180 "localized_name": "cfg",
1181 "name": "cfg",
1182 "type": "FLOAT",
1183 "widget": {
1184 "name": "cfg"
1185 },
1186 "link": 44
1187 },
1188 {
1189 "localized_name": "sampler_name",
1190 "name": "sampler_name",
1191 "type": "COMBO",
1192 "widget": {
1193 "name": "sampler_name"
1194 },
1195 "link": 33
1196 },
1197 {
1198 "localized_name": "scheduler",
1199 "name": "scheduler",
1200 "type": "COMBO",
1201 "widget": {
1202 "name": "scheduler"
1203 },
1204 "link": 34
1205 }
1206 ],
1207 "outputs": [
1208 {
1209 "localized_name": "LATENT",
1210 "name": "LATENT",
1211 "type": "LATENT",
1212 "slot_index": 0,
1213 "links": [
1214 4
1215 ]
1216 }
1217 ],
1218 "properties": {
1219 "Node name for S&R": "KSampler"
1220 },
1221 "widgets_values": [
1222 3,
1223 "randomize",
1224 15,
1225 1,
1226 "er_sde",
1227 "simple",
1228 1
1229 ],
1230 "widgets_values_named": {
1231 "seed": 3,
1232 "control_after_generate": "randomize",
1233 "steps": 15,
1234 "cfg": 1,
1235 "sampler_name": "er_sde",
1236 "scheduler": "simple",
1237 "denoise": 1
1238 }
1239 },
1240 {
1241 "id": 3,
1242 "type": "VAELoader",
1243 "pos": [
1244 -150,
1245 400
1246 ],
1247 "size": [
1248 340,
1249 60
1250 ],
1251 "flags": [],
1252 "order": 3,
1253 "mode": 0,
1254 "inputs": [
1255 {
1256 "localized_name": "vae_name",
1257 "name": "vae_name",
1258 "type": "COMBO",
1259 "widget": {
1260 "name": "vae_name"
1261 },
1262 "link": 37
1263 }
1264 ],
1265 "outputs": [
1266 {
1267 "localized_name": "VAE",
1268 "name": "VAE",
1269 "type": "VAE",
1270 "slot_index": 0,
1271 "links": [
1272 5
1273 ]
1274 }
1275 ],
1276 "properties": {
1277 "Node name for S&R": "VAELoader",
1278 "models": [
1279 {
1280 "name": "flux2-vae.safetensors",
1281 "url": "https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/vae/flux2-vae.safetensors",
1282 "directory": "vae"
1283 }
1284 ]
1285 },
1286 "widgets_values": [
1287 "flux2-vae.safetensors"
1288 ],
1289 "widgets_values_named": {
1290 "vae_name": "flux2-vae.safetensors"
1291 },
1292 "color": "#323",
1293 "bgcolor": "#535"
1294 },
1295 {
1296 "id": 13,
1297 "type": "PreviewAny",
1298 "pos": [
1299 830,
1300 -660
1301 ],
1302 "size": [
1303 350,
1304 490
1305 ],
1306 "flags": [],
1307 "order": 11,
1308 "mode": 0,
1309 "inputs": [
1310 {
1311 "localized_name": "source",
1312 "name": "source",
1313 "type": "*",
1314 "link": 21
1315 }
1316 ],
1317 "outputs": [
1318 {
1319 "localized_name": "STRING",
1320 "name": "STRING",
1321 "type": "STRING",
1322 "links": [
1323 20
1324 ]
1325 }
1326 ],
1327 "properties": {
1328 "Node name for S&R": "PreviewAny"
1329 },
1330 "widgets_values": [],
1331 "widgets_values_named": []
1332 },
1333 {
1334 "id": 16,
1335 "type": "ComfySwitchNode",
1336 "pos": [
1337 860,
1338 -910
1339 ],
1340 "size": [
1341 270,
1342 80
1343 ],
1344 "flags": [],
1345 "order": 12,
1346 "mode": 0,
1347 "inputs": [
1348 {
1349 "localized_name": "on_false",
1350 "name": "on_false",
1351 "shape": 7,
1352 "type": "STRING",
1353 "link": 15
1354 },
1355 {
1356 "localized_name": "on_true",
1357 "name": "on_true",
1358 "shape": 7,
1359 "type": "STRING",
1360 "link": 19
1361 },
1362 {
1363 "localized_name": "switch",
1364 "name": "switch",
1365 "type": "BOOLEAN",
1366 "widget": {
1367 "name": "switch"
1368 },
1369 "link": 26
1370 }
1371 ],
1372 "outputs": [
1373 {
1374 "localized_name": "output",
1375 "name": "output",
1376 "type": "STRING",
1377 "links": [
1378 21
1379 ]
1380 }
1381 ],
1382 "properties": {
1383 "Node name for S&R": "ComfySwitchNode"
1384 },
1385 "widgets_values": [
1386 false
1387 ],
1388 "widgets_values_named": {
1389 "switch": false
1390 }
1391 },
1392 {
1393 "id": 6,
1394 "type": "EmptyFlux2LatentImage",
1395 "pos": [
1396 -120,
1397 590
1398 ],
1399 "size": [
1400 300,
1401 110
1402 ],
1403 "flags": [],
1404 "order": 6,
1405 "mode": 0,
1406 "inputs": [
1407 {
1408 "localized_name": "width",
1409 "name": "width",
1410 "type": "INT",
1411 "widget": {
1412 "name": "width"
1413 },
1414 "link": 27
1415 },
1416 {
1417 "localized_name": "height",
1418 "name": "height",
1419 "type": "INT",
1420 "widget": {
1421 "name": "height"
1422 },
1423 "link": 28
1424 }
1425 ],
1426 "outputs": [
1427 {
1428 "localized_name": "LATENT",
1429 "name": "LATENT",
1430 "type": "LATENT",
1431 "slot_index": 0,
1432 "links": [
1433 39
1434 ]
1435 }
1436 ],
1437 "properties": {
1438 "Node name for S&R": "EmptyFlux2LatentImage"
1439 },
1440 "widgets_values": [
1441 1024,
1442 1024,
1443 1
1444 ],
1445 "widgets_values_named": {
1446 "width": 1024,
1447 "height": 1024,
1448 "batch_size": 1
1449 },
1450 "color": "#323",
1451 "bgcolor": "#535"
1452 },
1453 {
1454 "id": 5,
1455 "type": "CLIPTextEncode",
1456 "pos": [
1457 250,
1458 610
1459 ],
1460 "size": [
1461 460,
1462 110
1463 ],
1464 "flags": [],
1465 "order": 5,
1466 "mode": 0,
1467 "inputs": [
1468 {
1469 "localized_name": "clip",
1470 "name": "clip",
1471 "type": "CLIP",
1472 "link": 3
1473 },
1474 {
1475 "localized_name": "text",
1476 "name": "text",
1477 "type": "STRING",
1478 "widget": {
1479 "name": "text"
1480 },
1481 "link": 43
1482 }
1483 ],
1484 "outputs": [
1485 {
1486 "localized_name": "CONDITIONING",
1487 "name": "CONDITIONING",
1488 "type": "CONDITIONING",
1489 "slot_index": 0,
1490 "links": [
1491 9
1492 ]
1493 }
1494 ],
1495 "title": "Negative Prompt (empty = reference default)",
1496 "properties": {
1497 "Node name for S&R": "CLIPTextEncode"
1498 },
1499 "widgets_values": [
1500 ""
1501 ],
1502 "widgets_values_named": {
1503 "text": ""
1504 },
1505 "color": "#223",
1506 "bgcolor": "#335"
1507 },
1508 {
1509 "id": 8,
1510 "type": "VAEDecode",
1511 "pos": [
1512 1120,
1513 30
1514 ],
1515 "size": [
1516 210,
1517 50
1518 ],
1519 "flags": [],
1520 "order": 8,
1521 "mode": 0,
1522 "inputs": [
1523 {
1524 "localized_name": "samples",
1525 "name": "samples",
1526 "type": "LATENT",
1527 "link": 4
1528 },
1529 {
1530 "localized_name": "vae",
1531 "name": "vae",
1532 "type": "VAE",
1533 "link": 5
1534 }
1535 ],
1536 "outputs": [
1537 {
1538 "localized_name": "IMAGE",
1539 "name": "IMAGE",
1540 "type": "IMAGE",
1541 "slot_index": 0,
1542 "links": [
1543 6
1544 ]
1545 }
1546 ],
1547 "properties": {
1548 "Node name for S&R": "VAEDecode"
1549 }
1550 }
1551 ],
1552 "groups": [
1553 {
1554 "id": 1,
1555 "title": "Models",
1556 "bounding": [
1557 -160,
1558 -10,
1559 360,
1560 482
1561 ],
1562 "color": "#3f789e",
1563 "flags": []
1564 },
1565 {
1566 "id": 2,
1567 "title": "Prompt",
1568 "bounding": [
1569 230,
1570 -10,
1571 490,
1572 750
1573 ],
1574 "color": "#3f789e",
1575 "flags": []
1576 },
1577 {
1578 "id": 3,
1579 "title": "Image Size",
1580 "bounding": [
1581 -160,
1582 490,
1583 360,
1584 250
1585 ],
1586 "color": "#3f789e",
1587 "flags": []
1588 },
1589 {
1590 "id": 4,
1591 "title": "Prompt Enhancer",
1592 "bounding": [
1593 -160,
1594 -1000,
1595 1365.0910478071733,
1596 956.2122136896305
1597 ],
1598 "color": "#444",
1599 "flags": []
1600 }
1601 ],
1602 "links": [
1603 {
1604 "id": 2,
1605 "origin_id": 2,
1606 "origin_slot": 0,
1607 "target_id": 4,
1608 "target_slot": 0,
1609 "type": "CLIP"
1610 },
1611 {
1612 "id": 20,
1613 "origin_id": 13,
1614 "origin_slot": 0,
1615 "target_id": 4,
1616 "target_slot": 1,
1617 "type": "STRING"
1618 },
1619 {
1620 "id": 1,
1621 "origin_id": 1,
1622 "origin_slot": 0,
1623 "target_id": 7,
1624 "target_slot": 0,
1625 "type": "MODEL"
1626 },
1627 {
1628 "id": 8,
1629 "origin_id": 4,
1630 "origin_slot": 0,
1631 "target_id": 7,
1632 "target_slot": 1,
1633 "type": "CONDITIONING"
1634 },
1635 {
1636 "id": 9,
1637 "origin_id": 5,
1638 "origin_slot": 0,
1639 "target_id": 7,
1640 "target_slot": 2,
1641 "type": "CONDITIONING"
1642 },
1643 {
1644 "id": 21,
1645 "origin_id": 16,
1646 "origin_slot": 0,
1647 "target_id": 13,
1648 "target_slot": 0,
1649 "type": "STRING"
1650 },
1651 {
1652 "id": 15,
1653 "origin_id": 17,
1654 "origin_slot": 0,
1655 "target_id": 16,
1656 "target_slot": 0,
1657 "type": "STRING"
1658 },
1659 {
1660 "id": 19,
1661 "origin_id": 11,
1662 "origin_slot": 0,
1663 "target_id": 16,
1664 "target_slot": 1,
1665 "type": "STRING"
1666 },
1667 {
1668 "id": 3,
1669 "origin_id": 2,
1670 "origin_slot": 0,
1671 "target_id": 5,
1672 "target_slot": 0,
1673 "type": "CLIP"
1674 },
1675 {
1676 "id": 4,
1677 "origin_id": 7,
1678 "origin_slot": 0,
1679 "target_id": 8,
1680 "target_slot": 0,
1681 "type": "LATENT"
1682 },
1683 {
1684 "id": 5,
1685 "origin_id": 3,
1686 "origin_slot": 0,
1687 "target_id": 8,
1688 "target_slot": 1,
1689 "type": "VAE"
1690 },
1691 {
1692 "id": 6,
1693 "origin_id": 8,
1694 "origin_slot": 0,
1695 "target_id": -20,
1696 "target_slot": 0,
1697 "type": "IMAGE"
1698 },
1699 {
1700 "id": 39,
1701 "origin_id": 6,
1702 "origin_slot": 0,
1703 "target_id": 7,
1704 "target_slot": 3,
1705 "type": "LATENT"
1706 },
1707 {
1708 "id": 25,
1709 "origin_id": -10,
1710 "origin_slot": 0,
1711 "target_id": 17,
1712 "target_slot": 0,
1713 "type": "STRING"
1714 },
1715 {
1716 "id": 26,
1717 "origin_id": -10,
1718 "origin_slot": 1,
1719 "target_id": 16,
1720 "target_slot": 2,
1721 "type": "BOOLEAN"
1722 },
1723 {
1724 "id": 43,
1725 "origin_id": -10,
1726 "origin_slot": 2,
1727 "target_id": 5,
1728 "target_slot": 1,
1729 "type": "STRING"
1730 },
1731 {
1732 "id": 27,
1733 "origin_id": -10,
1734 "origin_slot": 3,
1735 "target_id": 6,
1736 "target_slot": 0,
1737 "type": "INT"
1738 },
1739 {
1740 "id": 28,
1741 "origin_id": -10,
1742 "origin_slot": 4,
1743 "target_id": 6,
1744 "target_slot": 1,
1745 "type": "INT"
1746 },
1747 {
1748 "id": 30,
1749 "origin_id": -10,
1750 "origin_slot": 5,
1751 "target_id": 7,
1752 "target_slot": 4,
1753 "type": "INT"
1754 },
1755 {
1756 "id": 44,
1757 "origin_id": -10,
1758 "origin_slot": 6,
1759 "target_id": 7,
1760 "target_slot": 6,
1761 "type": "FLOAT"
1762 },
1763 {
1764 "id": 42,
1765 "origin_id": -10,
1766 "origin_slot": 7,
1767 "target_id": 7,
1768 "target_slot": 5,
1769 "type": "INT"
1770 },
1771 {
1772 "id": 33,
1773 "origin_id": -10,
1774 "origin_slot": 8,
1775 "target_id": 7,
1776 "target_slot": 7,
1777 "type": "COMBO"
1778 },
1779 {
1780 "id": 34,
1781 "origin_id": -10,
1782 "origin_slot": 9,
1783 "target_id": 7,
1784 "target_slot": 8,
1785 "type": "COMBO"
1786 },
1787 {
1788 "id": 35,
1789 "origin_id": -10,
1790 "origin_slot": 10,
1791 "target_id": 1,
1792 "target_slot": 0,
1793 "type": "COMBO"
1794 },
1795 {
1796 "id": 36,
1797 "origin_id": -10,
1798 "origin_slot": 11,
1799 "target_id": 2,
1800 "target_slot": 0,
1801 "type": "COMBO"
1802 },
1803 {
1804 "id": 37,
1805 "origin_id": -10,
1806 "origin_slot": 12,
1807 "target_id": 3,
1808 "target_slot": 0,
1809 "type": "COMBO"
1810 },
1811 {
1812 "id": 38,
1813 "origin_id": -10,
1814 "origin_slot": 13,
1815 "target_id": 12,
1816 "target_slot": 0,
1817 "type": "COMBO"
1818 },
1819 {
1820 "id": 10,
1821 "origin_id": 12,
1822 "origin_slot": 0,
1823 "target_id": 11,
1824 "target_slot": 0,
1825 "type": "CLIP"
1826 },
1827 {
1828 "id": 13,
1829 "origin_id": 14,
1830 "origin_slot": 0,
1831 "target_id": 11,
1832 "target_slot": 4,
1833 "type": "STRING"
1834 },
1835 {
1836 "id": 17,
1837 "origin_id": 17,
1838 "origin_slot": 0,
1839 "target_id": 11,
1840 "target_slot": 5,
1841 "type": "STRING"
1842 }
1843 ],
1844 "extra": []
1845 }
1846 ]
1847 },
1848 "config": [],
1849 "extra": {
1850 "ds": {
1851 "scale": 0.5624065968240171,
1852 "offset": [
1853 1143.256985152046,
1854 514.1439330090332
1855 ]
1856 },
1857 "frontendVersion": "1.55.17"
1858 },
1859 "version": 0.4
1860}