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

FLUX 3 Image Klein Distilled:文生图
FLUX 3 Image Klein Distilled: Text to Image
使用蒸馏版 FLUX 3 Image Klein 模型,通过文本提示生成图像,该模型可在 15 个采样步骤中高效运行,无需无分类器引导。只需描述您想要的内容,即可获得一张已完成图像。非常适合快速概念艺术、营销视觉以及速度至上的日常创意构思。
图像
8 个节点 177 次使用 ComfyUI ≥ 0.41.0 ComfyUI 54 KB
需要的权重
这个工作流引用了 4 个权重文件,其中 2 个能在本站模型库里找到。
flux2-vae.safetensors
在模型库查看
flux3-image-klein-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": 45,
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": 7,
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_distilled_t2i"
40 ],
41 "widgets_values_named": {
42 "filename_prefix": "image_flux3_klein_distilled_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": 5,
58 "mode": 0,
59 "inputs": [
60 {
61 "label": "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 "name": "width",
80 "type": "INT",
81 "widget": {
82 "name": "width"
83 },
84 "link": 40
85 },
86 {
87 "name": "height",
88 "type": "INT",
89 "widget": {
90 "name": "height"
91 },
92 "link": 41
93 },
94 {
95 "label": "unet_model",
96 "name": "unet_name",
97 "type": "COMBO",
98 "widget": {
99 "name": "unet_name"
100 },
101 "link": null
102 },
103 {
104 "label": "clip_model",
105 "name": "clip_name",
106 "type": "COMBO",
107 "widget": {
108 "name": "clip_name"
109 },
110 "link": null
111 },
112 {
113 "label": "vae_model",
114 "name": "vae_name",
115 "type": "COMBO",
116 "widget": {
117 "name": "vae_name"
118 },
119 "link": null
120 },
121 {
122 "label": "PE_model",
123 "name": "clip_name_1",
124 "type": "COMBO",
125 "widget": {
126 "name": "clip_name_1"
127 },
128 "link": null
129 }
130 ],
131 "outputs": [
132 {
133 "name": "IMAGE",
134 "type": "IMAGE",
135 "links": [
136 22
137 ]
138 }
139 ],
140 "properties": {
141 "previewExposures": []
142 },
143 "widgets_values": [
144 "A cinematic, Dutch angle night shot of a retro hotel entrance illuminated by neon cyan and warm orange lights. A bellhop in uniform pulls a gold luggage cart with suitcases across a wet sidewalk. Inside the brightly lit, teal-toned glass lobby, two women in vintage uniforms stand near a wooden desk alongside tropical plants and a seated figure. The scene features a moody, stylized teal-and-orange color palette with strong neon reflections. Absolutely no text, no typography, no letters, no words, no numbers, no logos, no watermark, no captions, pure imagery only.",
145 true,
146 1024,
147 1024,
148 605452029419059,
149 16,
150 "euler",
151 "simple",
152 "flux3-image-klein-int8-convrot.safetensors",
153 "qwen3vl_4b_int8_convrot.safetensors",
154 "flux2-vae.safetensors",
155 "qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors"
156 ],
157 "widgets_values_named": {
158 "value": "A cinematic, Dutch angle night shot of a retro hotel entrance illuminated by neon cyan and warm orange lights. A bellhop in uniform pulls a gold luggage cart with suitcases across a wet sidewalk. Inside the brightly lit, teal-toned glass lobby, two women in vintage uniforms stand near a wooden desk alongside tropical plants and a seated figure. The scene features a moody, stylized teal-and-orange color palette with strong neon reflections. Absolutely no text, no typography, no letters, no words, no numbers, no logos, no watermark, no captions, pure imagery only.",
159 "switch": true,
160 "width": 1024,
161 "height": 1024,
162 "seed": 605452029419059,
163 "steps": 16,
164 "sampler_name": "euler",
165 "scheduler": "simple",
166 "unet_name": "flux3-image-klein-int8-convrot.safetensors",
167 "clip_name": "qwen3vl_4b_int8_convrot.safetensors",
168 "vae_name": "flux2-vae.safetensors",
169 "clip_name_1": "qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors"
170 }
171 },
172 {
173 "id": 19,
174 "type": "ResolutionSelector",
175 "pos": [
176 -70,
177 190
178 ],
179 "size": [
180 270,
181 150
182 ],
183 "flags": [],
184 "order": 0,
185 "mode": 0,
186 "inputs": [],
187 "outputs": [
188 {
189 "name": "width",
190 "type": "INT",
191 "links": [
192 40
193 ]
194 },
195 {
196 "name": "height",
197 "type": "INT",
198 "links": [
199 41
200 ]
201 }
202 ],
203 "properties": {
204 "Node name for S&R": "ResolutionSelector"
205 },
206 "widgets_values": [
207 "1:1 (Square)",
208 1,
209 8
210 ],
211 "widgets_values_named": {
212 "aspect_ratio": "1:1 (Square)",
213 "megapixels": 1,
214 "multiple": 8
215 }
216 },
217 {
218 "id": 20,
219 "type": "MarkdownNote",
220 "pos": [
221 -570,
222 -130
223 ],
224 "size": [
225 470,
226 660
227 ],
228 "flags": [],
229 "order": 1,
230 "mode": 0,
231 "inputs": [],
232 "outputs": [],
233 "properties": [],
234 "widgets_values": [
235 "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/blob/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 distilled checkpoint to keep the footprint small. With more than 24 GB of VRAM, use the bf16 weights instead: [`flux3-image-klein-bf16.safetensors`](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/diffusion_models/flux3-image-klein-bf16.safetensors).\n\n**diffusion_models**\n\n- [flux3-image-klein-int8-convrot.safetensors](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/diffusion_models/flux3-image-klein-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-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"
236 ],
237 "widgets_values_named": {
238 "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/blob/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 distilled checkpoint to keep the footprint small. With more than 24 GB of VRAM, use the bf16 weights instead: [`flux3-image-klein-bf16.safetensors`](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/diffusion_models/flux3-image-klein-bf16.safetensors).\n\n**diffusion_models**\n\n- [flux3-image-klein-int8-convrot.safetensors](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/diffusion_models/flux3-image-klein-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-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"
239 },
240 "color": "#222",
241 "bgcolor": "#000"
242 },
243 {
244 "id": 23,
245 "type": "CreateBoundingBoxes",
246 "pos": [
247 -550,
248 630
249 ],
250 "size": [
251 420,
252 560
253 ],
254 "flags": [],
255 "order": 3,
256 "mode": 0,
257 "inputs": [
258 {
259 "name": "background",
260 "shape": 7,
261 "type": "IMAGE",
262 "link": null
263 },
264 {
265 "name": "bboxes",
266 "shape": 7,
267 "type": "BOUNDING_BOX,ARRAY,STRING",
268 "link": null
269 }
270 ],
271 "outputs": [
272 {
273 "name": "preview",
274 "type": "IMAGE",
275 "links": null
276 },
277 {
278 "name": "bboxes",
279 "type": "BOUNDING_BOX",
280 "links": null
281 },
282 {
283 "name": "elements",
284 "type": "ARRAY",
285 "links": [
286 44
287 ]
288 }
289 ],
290 "properties": {
291 "Node name for S&R": "CreateBoundingBoxes"
292 },
293 "widgets_values": [
294 1024,
295 1024,
296 [],
297 []
298 ],
299 "widgets_values_named": {
300 "width": 1024,
301 "height": 1024,
302 "editor_state": [],
303 "last_incoming": []
304 }
305 },
306 {
307 "id": 24,
308 "type": "PreviewAny",
309 "pos": [
310 -90,
311 890
312 ],
313 "size": [
314 390,
315 180
316 ],
317 "flags": [],
318 "order": 8,
319 "mode": 0,
320 "inputs": [
321 {
322 "name": "source",
323 "type": "*",
324 "link": 45
325 }
326 ],
327 "outputs": [
328 {
329 "name": "STRING",
330 "type": "STRING",
331 "links": null
332 }
333 ],
334 "properties": {
335 "Node name for S&R": "PreviewAny"
336 },
337 "widgets_values": [],
338 "widgets_values_named": []
339 },
340 {
341 "id": 25,
342 "type": "Flux3LayoutPrompt",
343 "pos": [
344 -100,
345 640
346 ],
347 "size": [
348 400,
349 200
350 ],
351 "flags": [],
352 "order": 6,
353 "mode": 0,
354 "inputs": [
355 {
356 "name": "element",
357 "type": "ARRAY",
358 "link": 44
359 }
360 ],
361 "outputs": [
362 {
363 "name": "prompt",
364 "type": "STRING",
365 "links": [
366 45
367 ]
368 }
369 ],
370 "properties": {
371 "Node name for S&R": "Flux3LayoutPrompt"
372 },
373 "widgets_values": [
374 ""
375 ],
376 "widgets_values_named": {
377 "prompt": ""
378 }
379 },
380 {
381 "id": 27,
382 "type": "MarkdownNote",
383 "pos": [
384 0,
385 1120
386 ],
387 "size": [
388 210,
389 90
390 ],
391 "flags": [],
392 "order": 4,
393 "mode": 0,
394 "inputs": [],
395 "outputs": [],
396 "properties": [],
397 "widgets_values": [
398 "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"
399 ],
400 "widgets_values_named": {
401 "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"
402 },
403 "color": "#222",
404 "bgcolor": "#000"
405 }
406 ],
407 "links": [
408 [
409 22,
410 18,
411 0,
412 9,
413 0,
414 "IMAGE"
415 ],
416 [
417 40,
418 19,
419 0,
420 18,
421 2,
422 "INT"
423 ],
424 [
425 41,
426 19,
427 1,
428 18,
429 3,
430 "INT"
431 ],
432 [
433 44,
434 23,
435 2,
436 25,
437 0,
438 "ARRAY"
439 ],
440 [
441 45,
442 25,
443 0,
444 24,
445 0,
446 "STRING"
447 ]
448 ],
449 "groups": [
450 {
451 "id": 5,
452 "title": "Create bounding boxes for precise control",
453 "bounding": [
454 -560,
455 560,
456 868.5829359476047,
457 670
458 ],
459 "color": "#444",
460 "flags": []
461 }
462 ],
463 "definitions": {
464 "subgraphs": [
465 {
466 "id": "3301b744-2960-415a-83b0-fe8a89d99fdb",
467 "version": 1,
468 "state": {
469 "lastGroupId": 5,
470 "lastNodeId": 27,
471 "lastLinkId": 45,
472 "lastRerouteId": 0
473 },
474 "revision": 0,
475 "config": [],
476 "name": "Text to Image (FLUX 3 Image Klein SD)",
477 "inputNode": {
478 "id": -10,
479 "bounding": [
480 -1020,
481 -120,
482 197.865234375,
483 288
484 ]
485 },
486 "outputNode": {
487 "id": -20,
488 "bounding": [
489 1390,
490 -163.32889918205035,
491 128,
492 68
493 ]
494 },
495 "inputs": [
496 {
497 "id": "35437e31-565b-4d42-bc06-d95c5929e7d8",
498 "name": "value",
499 "type": "STRING",
500 "linkIds": [
501 25
502 ],
503 "label": "prompt",
504 "pos": [
505 -846.134765625,
506 -96
507 ]
508 },
509 {
510 "id": "853a4192-ebce-42de-bdff-77c36b59cc1a",
511 "name": "switch",
512 "type": "BOOLEAN",
513 "linkIds": [
514 26
515 ],
516 "label": "enable_prompt_upsampler",
517 "pos": [
518 -846.134765625,
519 -76
520 ]
521 },
522 {
523 "id": "1514590b-7a78-450b-82b4-cfbe7820a9db",
524 "name": "width",
525 "type": "INT",
526 "linkIds": [
527 27
528 ],
529 "pos": [
530 -846.134765625,
531 -56
532 ]
533 },
534 {
535 "id": "f2e18bfe-65b0-4d24-9c78-bec0b9573e97",
536 "name": "height",
537 "type": "INT",
538 "linkIds": [
539 28
540 ],
541 "pos": [
542 -846.134765625,
543 -36
544 ]
545 },
546 {
547 "id": "32c26da2-7e60-44bf-851a-72690937b4b4",
548 "name": "seed",
549 "type": "INT",
550 "linkIds": [
551 30
552 ],
553 "pos": [
554 -846.134765625,
555 -16
556 ]
557 },
558 {
559 "id": "dae5d571-ced0-46d6-8a0a-5a71b8ca945a",
560 "name": "steps",
561 "type": "INT",
562 "linkIds": [
563 42
564 ],
565 "pos": [
566 -846.134765625,
567 4
568 ]
569 },
570 {
571 "id": "46e71c72-9f95-4c32-89d2-2dab4b63b284",
572 "name": "sampler_name",
573 "type": "COMBO",
574 "linkIds": [
575 33
576 ],
577 "pos": [
578 -846.134765625,
579 24
580 ]
581 },
582 {
583 "id": "8ba10fc2-8e73-4ece-8f77-27515bbe2698",
584 "name": "scheduler",
585 "type": "COMBO",
586 "linkIds": [
587 34
588 ],
589 "pos": [
590 -846.134765625,
591 44
592 ]
593 },
594 {
595 "id": "bc8e2627-1b51-4333-9d88-0cb6307f7545",
596 "name": "unet_name",
597 "type": "COMBO",
598 "linkIds": [
599 35
600 ],
601 "label": "unet_model",
602 "pos": [
603 -846.134765625,
604 64
605 ]
606 },
607 {
608 "id": "fe422dee-acbe-4c34-898b-62bb878ddb83",
609 "name": "clip_name",
610 "type": "COMBO",
611 "linkIds": [
612 36
613 ],
614 "label": "clip_model",
615 "pos": [
616 -846.134765625,
617 84
618 ]
619 },
620 {
621 "id": "29a73fdf-7b55-4612-8966-bba0b4cab854",
622 "name": "vae_name",
623 "type": "COMBO",
624 "linkIds": [
625 37
626 ],
627 "label": "vae_model",
628 "pos": [
629 -846.134765625,
630 104
631 ]
632 },
633 {
634 "id": "b9c679d9-c634-4fa8-92e7-b2921ad34dd0",
635 "name": "clip_name_1",
636 "type": "COMBO",
637 "linkIds": [
638 38
639 ],
640 "label": "PE_model",
641 "pos": [
642 -846.134765625,
643 124
644 ]
645 }
646 ],
647 "outputs": [
648 {
649 "id": "fa9fefe4-677e-4f8b-aba5-35459b097c37",
650 "name": "IMAGE",
651 "type": "IMAGE",
652 "linkIds": [
653 6
654 ],
655 "localized_name": "IMAGE",
656 "pos": [
657 1414,
658 -139.32889918205035
659 ]
660 }
661 ],
662 "widgets": [],
663 "nodes": [
664 {
665 "id": 17,
666 "type": "PrimitiveStringMultiline",
667 "pos": [
668 -680,
669 -950
670 ],
671 "size": [
672 490,
673 450
674 ],
675 "flags": [],
676 "order": 13,
677 "mode": 0,
678 "inputs": [
679 {
680 "localized_name": "value",
681 "name": "value",
682 "type": "STRING",
683 "widget": {
684 "name": "value"
685 },
686 "link": 25
687 }
688 ],
689 "outputs": [
690 {
691 "localized_name": "STRING",
692 "name": "STRING",
693 "type": "STRING",
694 "links": [
695 15,
696 17
697 ]
698 }
699 ],
700 "properties": {
701 "Node name for S&R": "PrimitiveStringMultiline"
702 },
703 "widgets_values": [
704 ""
705 ],
706 "widgets_values_named": {
707 "value": ""
708 }
709 },
710 {
711 "id": 12,
712 "type": "CLIPLoader",
713 "pos": [
714 -140,
715 -930
716 ],
717 "size": [
718 500,
719 110
720 ],
721 "flags": [],
722 "order": 10,
723 "mode": 0,
724 "inputs": [
725 {
726 "localized_name": "clip_name",
727 "name": "clip_name",
728 "type": "COMBO",
729 "widget": {
730 "name": "clip_name"
731 },
732 "link": 38
733 }
734 ],
735 "outputs": [
736 {
737 "localized_name": "CLIP",
738 "name": "CLIP",
739 "type": "CLIP",
740 "links": [
741 10
742 ]
743 }
744 ],
745 "properties": {
746 "Node name for S&R": "CLIPLoader",
747 "models": [
748 {
749 "name": "qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors",
750 "url": "https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/text_encoders/qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors",
751 "directory": "text_encoders"
752 }
753 ]
754 },
755 "widgets_values": [
756 "qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors",
757 "flux3",
758 "default"
759 ],
760 "widgets_values_named": {
761 "clip_name": "qwen3.5_9b_flux3_prompt_upsampler_w4a8.safetensors",
762 "type": "flux3",
763 "device": "default"
764 }
765 },
766 {
767 "id": 14,
768 "type": "PrimitiveStringMultiline",
769 "pos": [
770 -150,
771 -750
772 ],
773 "size": [
774 530,
775 700
776 ],
777 "flags": [],
778 "order": 0,
779 "mode": 0,
780 "inputs": [],
781 "outputs": [
782 {
783 "localized_name": "STRING",
784 "name": "STRING",
785 "type": "STRING",
786 "links": [
787 13
788 ]
789 }
790 ],
791 "title": "Text (System prompt)",
792 "properties": {
793 "Node name for S&R": "PrimitiveStringMultiline"
794 },
795 "widgets_values": [
796 "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"
797 ],
798 "widgets_values_named": {
799 "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"
800 }
801 },
802 {
803 "id": 11,
804 "type": "TextGenerate",
805 "pos": [
806 400,
807 -930
808 ],
809 "size": [
810 400,
811 460
812 ],
813 "flags": [],
814 "order": 9,
815 "mode": 0,
816 "inputs": [
817 {
818 "localized_name": "clip",
819 "name": "clip",
820 "type": "CLIP",
821 "link": 10
822 },
823 {
824 "localized_name": "image",
825 "name": "image",
826 "shape": 7,
827 "type": "IMAGE",
828 "link": null
829 },
830 {
831 "localized_name": "video",
832 "name": "video",
833 "shape": 7,
834 "type": "IMAGE",
835 "link": null
836 },
837 {
838 "localized_name": "audio",
839 "name": "audio",
840 "shape": 7,
841 "type": "AUDIO",
842 "link": null
843 },
844 {
845 "localized_name": "system_prompt",
846 "name": "system_prompt",
847 "shape": 7,
848 "type": "STRING",
849 "link": 13
850 },
851 {
852 "localized_name": "prompt",
853 "name": "prompt",
854 "type": "STRING",
855 "widget": {
856 "name": "prompt"
857 },
858 "link": 17
859 }
860 ],
861 "outputs": [
862 {
863 "localized_name": "generated_text",
864 "name": "generated_text",
865 "type": "STRING",
866 "links": [
867 19
868 ]
869 },
870 {
871 "localized_name": "thinking",
872 "name": "thinking",
873 "type": "STRING",
874 "links": null
875 }
876 ],
877 "properties": {
878 "Node name for S&R": "TextGenerate"
879 },
880 "widgets_values": [
881 "",
882 3584,
883 "on",
884 1,
885 1,
886 0.95,
887 0,
888 1.05,
889 0,
890 1.5,
891 false,
892 true,
893 "off"
894 ],
895 "widgets_values_named": {
896 "prompt": "",
897 "max_length": 3584,
898 "sampling_mode": "on",
899 "sampling_mode.temperature": 1,
900 "sampling_mode.top_k": 1,
901 "sampling_mode.top_p": 0.95,
902 "sampling_mode.min_p": 0,
903 "sampling_mode.repetition_penalty": 1.05,
904 "sampling_mode.seed": 0,
905 "sampling_mode.presence_penalty": 1.5,
906 "thinking": false,
907 "use_default_template": true,
908 "mtp": "off"
909 }
910 },
911 {
912 "id": 1,
913 "type": "UNETLoader",
914 "pos": [
915 -150,
916 60
917 ],
918 "size": [
919 340,
920 90
921 ],
922 "flags": [],
923 "order": 1,
924 "mode": 0,
925 "inputs": [
926 {
927 "localized_name": "unet_name",
928 "name": "unet_name",
929 "type": "COMBO",
930 "widget": {
931 "name": "unet_name"
932 },
933 "link": 35
934 }
935 ],
936 "outputs": [
937 {
938 "localized_name": "MODEL",
939 "name": "MODEL",
940 "type": "MODEL",
941 "slot_index": 0,
942 "links": [
943 1
944 ]
945 }
946 ],
947 "properties": {
948 "Node name for S&R": "UNETLoader",
949 "models": [
950 {
951 "name": "flux3-image-klein-int8-convrot.safetensors",
952 "url": "https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/diffusion_models/flux3-image-klein-int8-convrot.safetensors",
953 "directory": "diffusion_models"
954 }
955 ]
956 },
957 "widgets_values": [
958 "flux3-image-klein-int8-convrot.safetensors",
959 "default"
960 ],
961 "widgets_values_named": {
962 "unet_name": "flux3-image-klein-int8-convrot.safetensors",
963 "weight_dtype": "default"
964 },
965 "color": "#223",
966 "bgcolor": "#335"
967 },
968 {
969 "id": 4,
970 "type": "CLIPTextEncode",
971 "pos": [
972 250,
973 90
974 ],
975 "size": [
976 450,
977 460
978 ],
979 "flags": [],
980 "order": 4,
981 "mode": 0,
982 "inputs": [
983 {
984 "localized_name": "clip",
985 "name": "clip",
986 "type": "CLIP",
987 "link": 2
988 },
989 {
990 "localized_name": "text",
991 "name": "text",
992 "type": "STRING",
993 "widget": {
994 "name": "text"
995 },
996 "link": 20
997 }
998 ],
999 "outputs": [
1000 {
1001 "localized_name": "CONDITIONING",
1002 "name": "CONDITIONING",
1003 "type": "CONDITIONING",
1004 "slot_index": 0,
1005 "links": [
1006 8
1007 ]
1008 }
1009 ],
1010 "title": "Positive Prompt",
1011 "properties": {
1012 "Node name for S&R": "CLIPTextEncode"
1013 },
1014 "widgets_values": [
1015 "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."
1016 ],
1017 "widgets_values_named": {
1018 "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."
1019 },
1020 "color": "#232",
1021 "bgcolor": "#353"
1022 },
1023 {
1024 "id": 2,
1025 "type": "CLIPLoader",
1026 "pos": [
1027 -150,
1028 220
1029 ],
1030 "size": [
1031 340,
1032 110
1033 ],
1034 "flags": [],
1035 "order": 2,
1036 "mode": 0,
1037 "inputs": [
1038 {
1039 "localized_name": "clip_name",
1040 "name": "clip_name",
1041 "type": "COMBO",
1042 "widget": {
1043 "name": "clip_name"
1044 },
1045 "link": 36
1046 }
1047 ],
1048 "outputs": [
1049 {
1050 "localized_name": "CLIP",
1051 "name": "CLIP",
1052 "type": "CLIP",
1053 "slot_index": 0,
1054 "links": [
1055 2,
1056 3
1057 ]
1058 }
1059 ],
1060 "properties": {
1061 "Node name for S&R": "CLIPLoader",
1062 "models": [
1063 {
1064 "name": "qwen3vl_4b_int8_convrot.safetensors",
1065 "url": "https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/text_encoders/qwen3vl_4b_int8_convrot.safetensors",
1066 "directory": "text_encoders"
1067 }
1068 ]
1069 },
1070 "widgets_values": [
1071 "qwen3vl_4b_int8_convrot.safetensors",
1072 "flux3",
1073 "default"
1074 ],
1075 "widgets_values_named": {
1076 "clip_name": "qwen3vl_4b_int8_convrot.safetensors",
1077 "type": "flux3",
1078 "device": "default"
1079 },
1080 "color": "#432",
1081 "bgcolor": "#653"
1082 },
1083 {
1084 "id": 7,
1085 "type": "KSampler",
1086 "pos": [
1087 760,
1088 30
1089 ],
1090 "size": [
1091 320,
1092 480
1093 ],
1094 "flags": [],
1095 "order": 7,
1096 "mode": 0,
1097 "inputs": [
1098 {
1099 "localized_name": "model",
1100 "name": "model",
1101 "type": "MODEL",
1102 "link": 1
1103 },
1104 {
1105 "localized_name": "positive",
1106 "name": "positive",
1107 "type": "CONDITIONING",
1108 "link": 8
1109 },
1110 {
1111 "localized_name": "negative",
1112 "name": "negative",
1113 "type": "CONDITIONING",
1114 "link": 9
1115 },
1116 {
1117 "localized_name": "latent_image",
1118 "name": "latent_image",
1119 "type": "LATENT",
1120 "link": 39
1121 },
1122 {
1123 "localized_name": "seed",
1124 "name": "seed",
1125 "type": "INT",
1126 "widget": {
1127 "name": "seed"
1128 },
1129 "link": 30
1130 },
1131 {
1132 "localized_name": "steps",
1133 "name": "steps",
1134 "type": "INT",
1135 "widget": {
1136 "name": "steps"
1137 },
1138 "link": 42
1139 },
1140 {
1141 "localized_name": "sampler_name",
1142 "name": "sampler_name",
1143 "type": "COMBO",
1144 "widget": {
1145 "name": "sampler_name"
1146 },
1147 "link": 33
1148 },
1149 {
1150 "localized_name": "scheduler",
1151 "name": "scheduler",
1152 "type": "COMBO",
1153 "widget": {
1154 "name": "scheduler"
1155 },
1156 "link": 34
1157 }
1158 ],
1159 "outputs": [
1160 {
1161 "localized_name": "LATENT",
1162 "name": "LATENT",
1163 "type": "LATENT",
1164 "slot_index": 0,
1165 "links": [
1166 4
1167 ]
1168 }
1169 ],
1170 "properties": {
1171 "Node name for S&R": "KSampler"
1172 },
1173 "widgets_values": [
1174 3,
1175 "randomize",
1176 15,
1177 1,
1178 "er_sde",
1179 "simple",
1180 1
1181 ],
1182 "widgets_values_named": {
1183 "seed": 3,
1184 "control_after_generate": "randomize",
1185 "steps": 15,
1186 "cfg": 1,
1187 "sampler_name": "er_sde",
1188 "scheduler": "simple",
1189 "denoise": 1
1190 }
1191 },
1192 {
1193 "id": 3,
1194 "type": "VAELoader",
1195 "pos": [
1196 -150,
1197 400
1198 ],
1199 "size": [
1200 340,
1201 60
1202 ],
1203 "flags": [],
1204 "order": 3,
1205 "mode": 0,
1206 "inputs": [
1207 {
1208 "localized_name": "vae_name",
1209 "name": "vae_name",
1210 "type": "COMBO",
1211 "widget": {
1212 "name": "vae_name"
1213 },
1214 "link": 37
1215 }
1216 ],
1217 "outputs": [
1218 {
1219 "localized_name": "VAE",
1220 "name": "VAE",
1221 "type": "VAE",
1222 "slot_index": 0,
1223 "links": [
1224 5
1225 ]
1226 }
1227 ],
1228 "properties": {
1229 "Node name for S&R": "VAELoader",
1230 "models": [
1231 {
1232 "name": "flux2-vae.safetensors",
1233 "url": "https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/resolve/main/vae/flux2-vae.safetensors",
1234 "directory": "vae"
1235 }
1236 ]
1237 },
1238 "widgets_values": [
1239 "flux2-vae.safetensors"
1240 ],
1241 "widgets_values_named": {
1242 "vae_name": "flux2-vae.safetensors"
1243 },
1244 "color": "#323",
1245 "bgcolor": "#535"
1246 },
1247 {
1248 "id": 13,
1249 "type": "PreviewAny",
1250 "pos": [
1251 830,
1252 -660
1253 ],
1254 "size": [
1255 350,
1256 490
1257 ],
1258 "flags": [],
1259 "order": 11,
1260 "mode": 0,
1261 "inputs": [
1262 {
1263 "localized_name": "source",
1264 "name": "source",
1265 "type": "*",
1266 "link": 21
1267 }
1268 ],
1269 "outputs": [
1270 {
1271 "localized_name": "STRING",
1272 "name": "STRING",
1273 "type": "STRING",
1274 "links": [
1275 20
1276 ]
1277 }
1278 ],
1279 "properties": {
1280 "Node name for S&R": "PreviewAny"
1281 },
1282 "widgets_values": [],
1283 "widgets_values_named": []
1284 },
1285 {
1286 "id": 16,
1287 "type": "ComfySwitchNode",
1288 "pos": [
1289 860,
1290 -910
1291 ],
1292 "size": [
1293 270,
1294 80
1295 ],
1296 "flags": [],
1297 "order": 12,
1298 "mode": 0,
1299 "inputs": [
1300 {
1301 "localized_name": "on_false",
1302 "name": "on_false",
1303 "shape": 7,
1304 "type": "STRING",
1305 "link": 15
1306 },
1307 {
1308 "localized_name": "on_true",
1309 "name": "on_true",
1310 "shape": 7,
1311 "type": "STRING",
1312 "link": 19
1313 },
1314 {
1315 "localized_name": "switch",
1316 "name": "switch",
1317 "type": "BOOLEAN",
1318 "widget": {
1319 "name": "switch"
1320 },
1321 "link": 26
1322 }
1323 ],
1324 "outputs": [
1325 {
1326 "localized_name": "output",
1327 "name": "output",
1328 "type": "STRING",
1329 "links": [
1330 21
1331 ]
1332 }
1333 ],
1334 "properties": {
1335 "Node name for S&R": "ComfySwitchNode"
1336 },
1337 "widgets_values": [
1338 false
1339 ],
1340 "widgets_values_named": {
1341 "switch": false
1342 }
1343 },
1344 {
1345 "id": 6,
1346 "type": "EmptyFlux2LatentImage",
1347 "pos": [
1348 -120,
1349 590
1350 ],
1351 "size": [
1352 300,
1353 110
1354 ],
1355 "flags": [],
1356 "order": 6,
1357 "mode": 0,
1358 "inputs": [
1359 {
1360 "localized_name": "width",
1361 "name": "width",
1362 "type": "INT",
1363 "widget": {
1364 "name": "width"
1365 },
1366 "link": 27
1367 },
1368 {
1369 "localized_name": "height",
1370 "name": "height",
1371 "type": "INT",
1372 "widget": {
1373 "name": "height"
1374 },
1375 "link": 28
1376 }
1377 ],
1378 "outputs": [
1379 {
1380 "localized_name": "LATENT",
1381 "name": "LATENT",
1382 "type": "LATENT",
1383 "slot_index": 0,
1384 "links": [
1385 39
1386 ]
1387 }
1388 ],
1389 "properties": {
1390 "Node name for S&R": "EmptyFlux2LatentImage"
1391 },
1392 "widgets_values": [
1393 1024,
1394 1024,
1395 1
1396 ],
1397 "widgets_values_named": {
1398 "width": 1024,
1399 "height": 1024,
1400 "batch_size": 1
1401 },
1402 "color": "#323",
1403 "bgcolor": "#535"
1404 },
1405 {
1406 "id": 5,
1407 "type": "CLIPTextEncode",
1408 "pos": [
1409 250,
1410 610
1411 ],
1412 "size": [
1413 460,
1414 110
1415 ],
1416 "flags": [],
1417 "order": 5,
1418 "mode": 0,
1419 "inputs": [
1420 {
1421 "localized_name": "clip",
1422 "name": "clip",
1423 "type": "CLIP",
1424 "link": 3
1425 }
1426 ],
1427 "outputs": [
1428 {
1429 "localized_name": "CONDITIONING",
1430 "name": "CONDITIONING",
1431 "type": "CONDITIONING",
1432 "slot_index": 0,
1433 "links": [
1434 9
1435 ]
1436 }
1437 ],
1438 "title": "Negative Prompt (empty = reference default)",
1439 "properties": {
1440 "Node name for S&R": "CLIPTextEncode"
1441 },
1442 "widgets_values": [
1443 ""
1444 ],
1445 "widgets_values_named": {
1446 "text": ""
1447 },
1448 "color": "#223",
1449 "bgcolor": "#335"
1450 },
1451 {
1452 "id": 8,
1453 "type": "VAEDecode",
1454 "pos": [
1455 1120,
1456 30
1457 ],
1458 "size": [
1459 210,
1460 50
1461 ],
1462 "flags": [],
1463 "order": 8,
1464 "mode": 0,
1465 "inputs": [
1466 {
1467 "localized_name": "samples",
1468 "name": "samples",
1469 "type": "LATENT",
1470 "link": 4
1471 },
1472 {
1473 "localized_name": "vae",
1474 "name": "vae",
1475 "type": "VAE",
1476 "link": 5
1477 }
1478 ],
1479 "outputs": [
1480 {
1481 "localized_name": "IMAGE",
1482 "name": "IMAGE",
1483 "type": "IMAGE",
1484 "slot_index": 0,
1485 "links": [
1486 6
1487 ]
1488 }
1489 ],
1490 "properties": {
1491 "Node name for S&R": "VAEDecode"
1492 }
1493 }
1494 ],
1495 "groups": [
1496 {
1497 "id": 1,
1498 "title": "Models",
1499 "bounding": [
1500 -160,
1501 -10,
1502 360,
1503 482
1504 ],
1505 "color": "#3f789e",
1506 "flags": []
1507 },
1508 {
1509 "id": 2,
1510 "title": "Prompt",
1511 "bounding": [
1512 230,
1513 -10,
1514 490,
1515 750
1516 ],
1517 "color": "#3f789e",
1518 "flags": []
1519 },
1520 {
1521 "id": 3,
1522 "title": "Image Size",
1523 "bounding": [
1524 -160,
1525 490,
1526 360,
1527 250
1528 ],
1529 "color": "#3f789e",
1530 "flags": []
1531 },
1532 {
1533 "id": 4,
1534 "title": "Prompt Enhancer",
1535 "bounding": [
1536 -160,
1537 -1000,
1538 1365.0910478071733,
1539 956.2122136896305
1540 ],
1541 "color": "#444",
1542 "flags": []
1543 }
1544 ],
1545 "links": [
1546 {
1547 "id": 2,
1548 "origin_id": 2,
1549 "origin_slot": 0,
1550 "target_id": 4,
1551 "target_slot": 0,
1552 "type": "CLIP"
1553 },
1554 {
1555 "id": 20,
1556 "origin_id": 13,
1557 "origin_slot": 0,
1558 "target_id": 4,
1559 "target_slot": 1,
1560 "type": "STRING"
1561 },
1562 {
1563 "id": 1,
1564 "origin_id": 1,
1565 "origin_slot": 0,
1566 "target_id": 7,
1567 "target_slot": 0,
1568 "type": "MODEL"
1569 },
1570 {
1571 "id": 8,
1572 "origin_id": 4,
1573 "origin_slot": 0,
1574 "target_id": 7,
1575 "target_slot": 1,
1576 "type": "CONDITIONING"
1577 },
1578 {
1579 "id": 9,
1580 "origin_id": 5,
1581 "origin_slot": 0,
1582 "target_id": 7,
1583 "target_slot": 2,
1584 "type": "CONDITIONING"
1585 },
1586 {
1587 "id": 21,
1588 "origin_id": 16,
1589 "origin_slot": 0,
1590 "target_id": 13,
1591 "target_slot": 0,
1592 "type": "STRING"
1593 },
1594 {
1595 "id": 15,
1596 "origin_id": 17,
1597 "origin_slot": 0,
1598 "target_id": 16,
1599 "target_slot": 0,
1600 "type": "STRING"
1601 },
1602 {
1603 "id": 19,
1604 "origin_id": 11,
1605 "origin_slot": 0,
1606 "target_id": 16,
1607 "target_slot": 1,
1608 "type": "STRING"
1609 },
1610 {
1611 "id": 3,
1612 "origin_id": 2,
1613 "origin_slot": 0,
1614 "target_id": 5,
1615 "target_slot": 0,
1616 "type": "CLIP"
1617 },
1618 {
1619 "id": 4,
1620 "origin_id": 7,
1621 "origin_slot": 0,
1622 "target_id": 8,
1623 "target_slot": 0,
1624 "type": "LATENT"
1625 },
1626 {
1627 "id": 5,
1628 "origin_id": 3,
1629 "origin_slot": 0,
1630 "target_id": 8,
1631 "target_slot": 1,
1632 "type": "VAE"
1633 },
1634 {
1635 "id": 6,
1636 "origin_id": 8,
1637 "origin_slot": 0,
1638 "target_id": -20,
1639 "target_slot": 0,
1640 "type": "IMAGE"
1641 },
1642 {
1643 "id": 39,
1644 "origin_id": 6,
1645 "origin_slot": 0,
1646 "target_id": 7,
1647 "target_slot": 3,
1648 "type": "LATENT"
1649 },
1650 {
1651 "id": 25,
1652 "origin_id": -10,
1653 "origin_slot": 0,
1654 "target_id": 17,
1655 "target_slot": 0,
1656 "type": "STRING"
1657 },
1658 {
1659 "id": 26,
1660 "origin_id": -10,
1661 "origin_slot": 1,
1662 "target_id": 16,
1663 "target_slot": 2,
1664 "type": "BOOLEAN"
1665 },
1666 {
1667 "id": 27,
1668 "origin_id": -10,
1669 "origin_slot": 2,
1670 "target_id": 6,
1671 "target_slot": 0,
1672 "type": "INT"
1673 },
1674 {
1675 "id": 28,
1676 "origin_id": -10,
1677 "origin_slot": 3,
1678 "target_id": 6,
1679 "target_slot": 1,
1680 "type": "INT"
1681 },
1682 {
1683 "id": 30,
1684 "origin_id": -10,
1685 "origin_slot": 4,
1686 "target_id": 7,
1687 "target_slot": 4,
1688 "type": "INT"
1689 },
1690 {
1691 "id": 42,
1692 "origin_id": -10,
1693 "origin_slot": 5,
1694 "target_id": 7,
1695 "target_slot": 5,
1696 "type": "INT"
1697 },
1698 {
1699 "id": 35,
1700 "origin_id": -10,
1701 "origin_slot": 8,
1702 "target_id": 1,
1703 "target_slot": 0,
1704 "type": "COMBO"
1705 },
1706 {
1707 "id": 36,
1708 "origin_id": -10,
1709 "origin_slot": 9,
1710 "target_id": 2,
1711 "target_slot": 0,
1712 "type": "COMBO"
1713 },
1714 {
1715 "id": 37,
1716 "origin_id": -10,
1717 "origin_slot": 10,
1718 "target_id": 3,
1719 "target_slot": 0,
1720 "type": "COMBO"
1721 },
1722 {
1723 "id": 38,
1724 "origin_id": -10,
1725 "origin_slot": 11,
1726 "target_id": 12,
1727 "target_slot": 0,
1728 "type": "COMBO"
1729 },
1730 {
1731 "id": 10,
1732 "origin_id": 12,
1733 "origin_slot": 0,
1734 "target_id": 11,
1735 "target_slot": 0,
1736 "type": "CLIP"
1737 },
1738 {
1739 "id": 13,
1740 "origin_id": 14,
1741 "origin_slot": 0,
1742 "target_id": 11,
1743 "target_slot": 4,
1744 "type": "STRING"
1745 },
1746 {
1747 "id": 17,
1748 "origin_id": 17,
1749 "origin_slot": 0,
1750 "target_id": 11,
1751 "target_slot": 5,
1752 "type": "STRING"
1753 },
1754 {
1755 "id": 33,
1756 "origin_id": -10,
1757 "origin_slot": 6,
1758 "target_id": 7,
1759 "target_slot": 6,
1760 "type": "COMBO"
1761 },
1762 {
1763 "id": 34,
1764 "origin_id": -10,
1765 "origin_slot": 7,
1766 "target_id": 7,
1767 "target_slot": 7,
1768 "type": "COMBO"
1769 }
1770 ],
1771 "extra": []
1772 }
1773 ]
1774 },
1775 "config": [],
1776 "extra": {
1777 "frontendVersion": "1.55.17",
1778 "ds": {
1779 "scale": 0.6197358837556016,
1780 "offset": [
1781 1071.353939298013,
1782 413.00746539825
1783 ]
1784 }
1785 },
1786 "version": 0.4
1787}