Run the templates on FLUX, and name the loaded style
The root templates ran on SDXL base, where every gallery style washed out. A full compiled style is ~480 tokens and SDXL's CLIP attends to ~77 per chunk, so the style was truncated before the sampler saw it. No checkpoint swap fixes that, Juggernaut included: it is an SDXL finetune with the same encoder. Root set now runs FLUX.1 dev (Comfy-Org fp8 all-in-one, since BFL's own file is UNET-only and CheckpointLoaderSimple cannot load it), compiled from the flux target, whose T5 encoder takes the whole prompt. FluxGuidance 3.5, CFG 1.0, and ConditioningZeroOut on the negative input: FLUX is guidance distilled and has no negative channel, exactly like Z-Image. Uses EmptySD3LatentImage because FLUX works in a 16-channel latent space. The two sets load different gallery styles on purpose. How well a style demos is a property of the style and the model together: Z-Image reproduces painterly technique and keeps the Renaissance style, FLUX is strongest at light and tonality and takes a noir one. Also: - Adds the reference-images template the root set was missing, and renumbers Facets to 05, so both sets are 01-05 with matching names. Both sets are now pinned by test against a shared story list. - Model download metadata moves to each node's properties.models, where ComfyUI reads it, so a missing checkpoint offers a download instead of being silently substituted. - The Load node names the style its slug resolves to, on a read-only row under style_ref, via a new /styleref/resolve route. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
70fcf9ef00
commit
cd36fae865
+106
-68
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"last_node_id": 12,
|
||||
"last_node_id": 13,
|
||||
"last_link_id": 14,
|
||||
"nodes": [
|
||||
{
|
||||
@@ -11,7 +11,7 @@
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
270
|
||||
1008
|
||||
],
|
||||
"flags": {},
|
||||
"order": 0,
|
||||
@@ -22,7 +22,7 @@
|
||||
"Node name for S&R": "Note"
|
||||
},
|
||||
"widgets_values": [
|
||||
"Quickstart \u2014 no account needed.\n1. Set your SDXL checkpoint below (a missing model offers a download).\n2. Queue. Seeds randomize, so every queue is a fresh image.\n3. Change `subject` on StyleRef Apply and queue again.\nSwap `style_ref` on StyleRef Load for any slug from https://styleref.io/gallery \u2014 or use the Search styles\u2026 button."
|
||||
"Quickstart \u2014 no account needed.\n1. Queue \u2014 the FLUX checkpoint downloads on first run.\n2. Seeds randomize, so every queue is a fresh image.\n3. Change `subject` on StyleRef Apply and queue again.\nSwap `style_ref` on StyleRef Load for any slug from https://styleref.io/gallery \u2014 or use the Search styles\u2026 button.\n\nFLUX.1 dev (fp8 all-in-one). The checkpoint downloads on first use into checkpoints/ \u2014 one ~16 GB file containing the UNET, the T5 text encoder and the VAE.\nSampler defaults: 20 steps, CFG 1.0, euler/simple. Prompt strength is the FluxGuidance node (3.5), not CFG.\nFLUX takes no negative prompt. It is guidance distilled and runs at CFG 1.0, so there is no negative encoder on this canvas \u2014 the sampler's negative input gets a zeroed conditioning. StyleRef still compiles the negative and previews it; put anything you need from it into `subject` on Apply as a positive phrase (\"fully clothed\", \"no text or watermark\"). Raising CFG does not bring the negative back.\nStyle prompts use the `flux` target \u2014 FLUX reads prose with T5, so the whole style fits instead of being truncated at ~77 tokens the way an SDXL CLIP encoder would.\n\nStyle not coming through strongly enough?\nFLUX has a confident house look and will drift back to it. Two dials, in the order worth trying:\n1. `Flux guidance` (3.5 here, FLUX's default) is the blunt dial. 4\u20135 makes the style bite harder; past that the subject starts losing to it, and a dark style can go to pure black.\n2. Narrow `sections` on StyleRef Apply to the parts that define this style. For a period or painterly style that is usually `artistic_mediums,references,surface_material,colors` \u2014 the sections naming the medium, the era and the finish. Leaving it empty sends every section, and the identity-carrying ones render last, so a long style can read as generic.\nWhich sections matter depends on the style: for a geometric or layout-led style keep `shape_language` and `spatial_hierarchy` instead. Queue the Facets template to see what a style actually carries."
|
||||
],
|
||||
"title": "Quickstart"
|
||||
},
|
||||
@@ -31,7 +31,7 @@
|
||||
"type": "StyleRefLoad",
|
||||
"pos": [
|
||||
40,
|
||||
378
|
||||
1116
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
@@ -61,7 +61,7 @@
|
||||
"Node name for S&R": "StyleRefLoad"
|
||||
},
|
||||
"widgets_values": [
|
||||
"sbdlwwly-66ae1a89efdc",
|
||||
"72e1zdae-e2d54a18d090",
|
||||
"",
|
||||
"any",
|
||||
true,
|
||||
@@ -74,7 +74,7 @@
|
||||
"type": "CheckpointLoaderSimple",
|
||||
"pos": [
|
||||
40,
|
||||
674
|
||||
1412
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
@@ -97,8 +97,7 @@
|
||||
"name": "CLIP",
|
||||
"type": "CLIP",
|
||||
"links": [
|
||||
6,
|
||||
7
|
||||
5
|
||||
],
|
||||
"slot_index": 1
|
||||
},
|
||||
@@ -112,10 +111,17 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CheckpointLoaderSimple"
|
||||
"Node name for S&R": "CheckpointLoaderSimple",
|
||||
"models": [
|
||||
{
|
||||
"name": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-dev/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"directory": "checkpoints"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"sd_xl_base_1.0.safetensors"
|
||||
"flux1-dev-fp8.safetensors"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -153,8 +159,7 @@
|
||||
"name": "negative",
|
||||
"type": "STRING",
|
||||
"links": [
|
||||
2,
|
||||
5
|
||||
2
|
||||
],
|
||||
"slot_index": 1
|
||||
},
|
||||
@@ -170,7 +175,7 @@
|
||||
},
|
||||
"widgets_values": [
|
||||
"two friends flipping through crates of vinyl in a record shop",
|
||||
"diffusion",
|
||||
"flux",
|
||||
"",
|
||||
false,
|
||||
"",
|
||||
@@ -251,7 +256,7 @@
|
||||
{
|
||||
"name": "clip",
|
||||
"type": "CLIP",
|
||||
"link": 6
|
||||
"link": 5
|
||||
},
|
||||
{
|
||||
"name": "text",
|
||||
@@ -264,7 +269,8 @@
|
||||
"name": "CONDITIONING",
|
||||
"type": "CONDITIONING",
|
||||
"links": [
|
||||
9
|
||||
6,
|
||||
7
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
@@ -279,28 +285,62 @@
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"type": "CLIPTextEncode",
|
||||
"type": "FluxGuidance",
|
||||
"pos": [
|
||||
800,
|
||||
306
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
198
|
||||
112
|
||||
],
|
||||
"flags": {},
|
||||
"order": 7,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "clip",
|
||||
"type": "CLIP",
|
||||
"link": 7
|
||||
},
|
||||
"name": "conditioning",
|
||||
"type": "CONDITIONING",
|
||||
"link": 6
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "text",
|
||||
"type": "STRING",
|
||||
"link": 5
|
||||
"name": "CONDITIONING",
|
||||
"type": "CONDITIONING",
|
||||
"links": [
|
||||
9
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "FluxGuidance"
|
||||
},
|
||||
"widgets_values": [
|
||||
3.5
|
||||
],
|
||||
"title": "Flux guidance"
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"type": "ConditioningZeroOut",
|
||||
"pos": [
|
||||
800,
|
||||
466
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
84
|
||||
],
|
||||
"flags": {},
|
||||
"order": 8,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "conditioning",
|
||||
"type": "CONDITIONING",
|
||||
"link": 7
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
@@ -314,26 +354,24 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CLIPTextEncode"
|
||||
"Node name for S&R": "ConditioningZeroOut"
|
||||
},
|
||||
"widgets_values": [
|
||||
""
|
||||
],
|
||||
"title": "Negative (from StyleRef)"
|
||||
"widgets_values": [],
|
||||
"title": "FLUX has no negative"
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"type": "EmptyLatentImage",
|
||||
"id": 10,
|
||||
"type": "EmptySD3LatentImage",
|
||||
"pos": [
|
||||
800,
|
||||
552
|
||||
598
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
168
|
||||
],
|
||||
"flags": {},
|
||||
"order": 8,
|
||||
"order": 9,
|
||||
"mode": 0,
|
||||
"inputs": [],
|
||||
"outputs": [
|
||||
@@ -347,7 +385,7 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "EmptyLatentImage"
|
||||
"Node name for S&R": "EmptySD3LatentImage"
|
||||
},
|
||||
"widgets_values": [
|
||||
1024,
|
||||
@@ -356,7 +394,7 @@
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"id": 11,
|
||||
"type": "KSampler",
|
||||
"pos": [
|
||||
1180,
|
||||
@@ -367,7 +405,7 @@
|
||||
352
|
||||
],
|
||||
"flags": {},
|
||||
"order": 9,
|
||||
"order": 10,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
@@ -407,15 +445,15 @@
|
||||
"widgets_values": [
|
||||
0,
|
||||
"randomize",
|
||||
25,
|
||||
7.0,
|
||||
20,
|
||||
1.0,
|
||||
"euler",
|
||||
"normal",
|
||||
"simple",
|
||||
1.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"id": 12,
|
||||
"type": "VAEDecode",
|
||||
"pos": [
|
||||
1560,
|
||||
@@ -426,7 +464,7 @@
|
||||
108
|
||||
],
|
||||
"flags": {},
|
||||
"order": 10,
|
||||
"order": 11,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
@@ -456,7 +494,7 @@
|
||||
"widgets_values": []
|
||||
},
|
||||
{
|
||||
"id": 12,
|
||||
"id": 13,
|
||||
"type": "SaveImage",
|
||||
"pos": [
|
||||
1560,
|
||||
@@ -467,7 +505,7 @@
|
||||
112
|
||||
],
|
||||
"flags": {},
|
||||
"order": 11,
|
||||
"order": 12,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
@@ -520,82 +558,82 @@
|
||||
],
|
||||
[
|
||||
5,
|
||||
4,
|
||||
3,
|
||||
1,
|
||||
8,
|
||||
1,
|
||||
"STRING"
|
||||
7,
|
||||
0,
|
||||
"CLIP"
|
||||
],
|
||||
[
|
||||
6,
|
||||
3,
|
||||
1,
|
||||
7,
|
||||
0,
|
||||
"CLIP"
|
||||
8,
|
||||
0,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
7,
|
||||
3,
|
||||
1,
|
||||
8,
|
||||
7,
|
||||
0,
|
||||
"CLIP"
|
||||
9,
|
||||
0,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
8,
|
||||
3,
|
||||
0,
|
||||
10,
|
||||
11,
|
||||
0,
|
||||
"MODEL"
|
||||
],
|
||||
[
|
||||
9,
|
||||
7,
|
||||
8,
|
||||
0,
|
||||
10,
|
||||
11,
|
||||
1,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
10,
|
||||
8,
|
||||
9,
|
||||
0,
|
||||
10,
|
||||
11,
|
||||
2,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
11,
|
||||
9,
|
||||
0,
|
||||
10,
|
||||
0,
|
||||
11,
|
||||
3,
|
||||
"LATENT"
|
||||
],
|
||||
[
|
||||
12,
|
||||
10,
|
||||
0,
|
||||
11,
|
||||
0,
|
||||
12,
|
||||
0,
|
||||
"LATENT"
|
||||
],
|
||||
[
|
||||
13,
|
||||
3,
|
||||
2,
|
||||
11,
|
||||
12,
|
||||
1,
|
||||
"VAE"
|
||||
],
|
||||
[
|
||||
14,
|
||||
11,
|
||||
0,
|
||||
12,
|
||||
0,
|
||||
13,
|
||||
0,
|
||||
"IMAGE"
|
||||
]
|
||||
],
|
||||
@@ -609,8 +647,8 @@
|
||||
"version": 0.4,
|
||||
"models": [
|
||||
{
|
||||
"name": "sd_xl_base_1.0.safetensors",
|
||||
"url": "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors",
|
||||
"name": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-dev/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"directory": "checkpoints"
|
||||
}
|
||||
]
|
||||
|
||||
+324
-224
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"last_node_id": 13,
|
||||
"last_node_id": 14,
|
||||
"last_link_id": 14,
|
||||
"nodes": [
|
||||
{
|
||||
@@ -11,7 +11,7 @@
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
324
|
||||
1062
|
||||
],
|
||||
"flags": {},
|
||||
"order": 0,
|
||||
@@ -22,7 +22,7 @@
|
||||
"Node name for S&R": "Note"
|
||||
},
|
||||
"widgets_values": [
|
||||
"Use your own style.\nExtract a style from any image at https://styleref.io \u2014 it appears in your library \u2014 then load it here by its share slug or id.\n1. Queue the StyleRef Login node alone first (Queue runs every node, so an empty workflow is the clean way). If status says signed out, set action to `sign in` and queue again.\n2. Put your style's id in `style_ref` on StyleRef Load, or pick it\n with the Search styles\u2026 button.\n3. Set your SDXL checkpoint and queue."
|
||||
"Use your own style.\nExtract a style from any image at https://styleref.io \u2014 it appears in your library \u2014 then load it here by its share slug or id.\n1. Queue the StyleRef Login node alone first (Queue runs every node, so an empty workflow is the clean way). If status says signed out, set action to `sign in` and queue again.\n2. Put your style's id in `style_ref` on StyleRef Load, or pick it\n with the Search styles\u2026 button.\n3. Queue.\n\nFLUX.1 dev (fp8 all-in-one). The checkpoint downloads on first use into checkpoints/ \u2014 one ~16 GB file containing the UNET, the T5 text encoder and the VAE.\nSampler defaults: 20 steps, CFG 1.0, euler/simple. Prompt strength is the FluxGuidance node (3.5), not CFG.\nFLUX takes no negative prompt. It is guidance distilled and runs at CFG 1.0, so there is no negative encoder on this canvas \u2014 the sampler's negative input gets a zeroed conditioning. StyleRef still compiles the negative and previews it; put anything you need from it into `subject` on Apply as a positive phrase (\"fully clothed\", \"no text or watermark\"). Raising CFG does not bring the negative back.\nStyle prompts use the `flux` target \u2014 FLUX reads prose with T5, so the whole style fits instead of being truncated at ~77 tokens the way an SDXL CLIP encoder would.\n\nStyle not coming through strongly enough?\nFLUX has a confident house look and will drift back to it. Two dials, in the order worth trying:\n1. `Flux guidance` (3.5 here, FLUX's default) is the blunt dial. 4\u20135 makes the style bite harder; past that the subject starts losing to it, and a dark style can go to pure black.\n2. Narrow `sections` on StyleRef Apply to the parts that define this style. For a period or painterly style that is usually `artistic_mediums,references,surface_material,colors` \u2014 the sections naming the medium, the era and the finish. Leaving it empty sends every section, and the identity-carrying ones render last, so a long style can read as generic.\nWhich sections matter depends on the style: for a geometric or layout-led style keep `shape_language` and `spatial_hierarchy` instead. Queue the Facets template to see what a style actually carries."
|
||||
],
|
||||
"title": "Your own style"
|
||||
},
|
||||
@@ -31,7 +31,7 @@
|
||||
"type": "StyleRefLogin",
|
||||
"pos": [
|
||||
40,
|
||||
432
|
||||
1170
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
@@ -60,7 +60,7 @@
|
||||
"type": "StyleRefLoad",
|
||||
"pos": [
|
||||
40,
|
||||
564
|
||||
1302
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
@@ -103,7 +103,7 @@
|
||||
"type": "CheckpointLoaderSimple",
|
||||
"pos": [
|
||||
40,
|
||||
860
|
||||
1598
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
@@ -126,8 +126,7 @@
|
||||
"name": "CLIP",
|
||||
"type": "CLIP",
|
||||
"links": [
|
||||
6,
|
||||
7
|
||||
5
|
||||
],
|
||||
"slot_index": 1
|
||||
},
|
||||
@@ -141,10 +140,17 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CheckpointLoaderSimple"
|
||||
"Node name for S&R": "CheckpointLoaderSimple",
|
||||
"models": [
|
||||
{
|
||||
"name": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-dev/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"directory": "checkpoints"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"sd_xl_base_1.0.safetensors"
|
||||
"flux1-dev-fp8.safetensors"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -182,8 +188,7 @@
|
||||
"name": "negative",
|
||||
"type": "STRING",
|
||||
"links": [
|
||||
3,
|
||||
5
|
||||
3
|
||||
],
|
||||
"slot_index": 1
|
||||
},
|
||||
@@ -199,7 +204,7 @@
|
||||
},
|
||||
"widgets_values": [
|
||||
"two friends flipping through crates of vinyl in a record shop",
|
||||
"diffusion",
|
||||
"flux",
|
||||
"",
|
||||
false,
|
||||
"",
|
||||
@@ -280,7 +285,7 @@
|
||||
{
|
||||
"name": "clip",
|
||||
"type": "CLIP",
|
||||
"link": 6
|
||||
"link": 5
|
||||
},
|
||||
{
|
||||
"name": "text",
|
||||
@@ -293,7 +298,8 @@
|
||||
"name": "CONDITIONING",
|
||||
"type": "CONDITIONING",
|
||||
"links": [
|
||||
9
|
||||
6,
|
||||
7
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
@@ -308,28 +314,62 @@
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"type": "CLIPTextEncode",
|
||||
"type": "FluxGuidance",
|
||||
"pos": [
|
||||
800,
|
||||
306
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
198
|
||||
112
|
||||
],
|
||||
"flags": {},
|
||||
"order": 8,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "clip",
|
||||
"type": "CLIP",
|
||||
"link": 7
|
||||
},
|
||||
"name": "conditioning",
|
||||
"type": "CONDITIONING",
|
||||
"link": 6
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "text",
|
||||
"type": "STRING",
|
||||
"link": 5
|
||||
"name": "CONDITIONING",
|
||||
"type": "CONDITIONING",
|
||||
"links": [
|
||||
9
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "FluxGuidance"
|
||||
},
|
||||
"widgets_values": [
|
||||
3.5
|
||||
],
|
||||
"title": "Flux guidance"
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"type": "ConditioningZeroOut",
|
||||
"pos": [
|
||||
800,
|
||||
466
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
84
|
||||
],
|
||||
"flags": {},
|
||||
"order": 9,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "conditioning",
|
||||
"type": "CONDITIONING",
|
||||
"link": 7
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
@@ -343,26 +383,24 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CLIPTextEncode"
|
||||
"Node name for S&R": "ConditioningZeroOut"
|
||||
},
|
||||
"widgets_values": [
|
||||
""
|
||||
],
|
||||
"title": "Negative (from StyleRef)"
|
||||
"widgets_values": [],
|
||||
"title": "FLUX has no negative"
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"type": "EmptyLatentImage",
|
||||
"id": 11,
|
||||
"type": "EmptySD3LatentImage",
|
||||
"pos": [
|
||||
800,
|
||||
552
|
||||
598
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
168
|
||||
],
|
||||
"flags": {},
|
||||
"order": 9,
|
||||
"order": 10,
|
||||
"mode": 0,
|
||||
"inputs": [],
|
||||
"outputs": [
|
||||
@@ -376,7 +414,7 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "EmptyLatentImage"
|
||||
"Node name for S&R": "EmptySD3LatentImage"
|
||||
},
|
||||
"widgets_values": [
|
||||
1024,
|
||||
@@ -385,7 +423,7 @@
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"id": 12,
|
||||
"type": "KSampler",
|
||||
"pos": [
|
||||
1180,
|
||||
@@ -396,7 +434,7 @@
|
||||
352
|
||||
],
|
||||
"flags": {},
|
||||
"order": 10,
|
||||
"order": 11,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
@@ -436,15 +474,15 @@
|
||||
"widgets_values": [
|
||||
0,
|
||||
"randomize",
|
||||
25,
|
||||
7.0,
|
||||
20,
|
||||
1.0,
|
||||
"euler",
|
||||
"normal",
|
||||
"simple",
|
||||
1.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 12,
|
||||
"id": 13,
|
||||
"type": "VAEDecode",
|
||||
"pos": [
|
||||
1560,
|
||||
@@ -455,7 +493,7 @@
|
||||
108
|
||||
],
|
||||
"flags": {},
|
||||
"order": 11,
|
||||
"order": 12,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
@@ -485,7 +523,7 @@
|
||||
"widgets_values": []
|
||||
},
|
||||
{
|
||||
"id": 13,
|
||||
"id": 14,
|
||||
"type": "SaveImage",
|
||||
"pos": [
|
||||
1560,
|
||||
@@ -496,7 +534,7 @@
|
||||
112
|
||||
],
|
||||
"flags": {},
|
||||
"order": 12,
|
||||
"order": 13,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
@@ -549,82 +587,82 @@
|
||||
],
|
||||
[
|
||||
5,
|
||||
5,
|
||||
4,
|
||||
1,
|
||||
9,
|
||||
1,
|
||||
"STRING"
|
||||
8,
|
||||
0,
|
||||
"CLIP"
|
||||
],
|
||||
[
|
||||
6,
|
||||
4,
|
||||
1,
|
||||
8,
|
||||
0,
|
||||
"CLIP"
|
||||
9,
|
||||
0,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
7,
|
||||
4,
|
||||
1,
|
||||
9,
|
||||
8,
|
||||
0,
|
||||
"CLIP"
|
||||
10,
|
||||
0,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
8,
|
||||
4,
|
||||
0,
|
||||
11,
|
||||
12,
|
||||
0,
|
||||
"MODEL"
|
||||
],
|
||||
[
|
||||
9,
|
||||
8,
|
||||
9,
|
||||
0,
|
||||
11,
|
||||
12,
|
||||
1,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
10,
|
||||
9,
|
||||
10,
|
||||
0,
|
||||
11,
|
||||
12,
|
||||
2,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
11,
|
||||
10,
|
||||
0,
|
||||
11,
|
||||
0,
|
||||
12,
|
||||
3,
|
||||
"LATENT"
|
||||
],
|
||||
[
|
||||
12,
|
||||
11,
|
||||
0,
|
||||
12,
|
||||
0,
|
||||
13,
|
||||
0,
|
||||
"LATENT"
|
||||
],
|
||||
[
|
||||
13,
|
||||
4,
|
||||
2,
|
||||
12,
|
||||
13,
|
||||
1,
|
||||
"VAE"
|
||||
],
|
||||
[
|
||||
14,
|
||||
12,
|
||||
0,
|
||||
13,
|
||||
0,
|
||||
14,
|
||||
0,
|
||||
"IMAGE"
|
||||
]
|
||||
],
|
||||
@@ -638,8 +676,8 @@
|
||||
"version": 0.4,
|
||||
"models": [
|
||||
{
|
||||
"name": "sd_xl_base_1.0.safetensors",
|
||||
"url": "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors",
|
||||
"name": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-dev/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"directory": "checkpoints"
|
||||
}
|
||||
]
|
||||
|
||||
@@ -0,0 +1,745 @@
|
||||
{
|
||||
"last_node_id": 15,
|
||||
"last_link_id": 16,
|
||||
"nodes": [
|
||||
{
|
||||
"id": 1,
|
||||
"type": "Note",
|
||||
"pos": [
|
||||
40,
|
||||
60
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
1008
|
||||
],
|
||||
"flags": {},
|
||||
"order": 0,
|
||||
"mode": 0,
|
||||
"inputs": [],
|
||||
"outputs": [],
|
||||
"properties": {
|
||||
"Node name for S&R": "Note"
|
||||
},
|
||||
"widgets_values": [
|
||||
"Style prompt and reference images together.\nStyleRef Apply drives the sampler with the style's prompt; StyleRef Reference Images pulls the style's inspiration images out as a batch, previewed alongside. The prompt says how the style reads; the images show how it looks \u2014 wire the images into IPAdapter or a reference-only ControlNet to combine both.\nUse a gallery style that has inspiration images.\n\nFLUX.1 dev (fp8 all-in-one). The checkpoint downloads on first use into checkpoints/ \u2014 one ~16 GB file containing the UNET, the T5 text encoder and the VAE.\nSampler defaults: 20 steps, CFG 1.0, euler/simple. Prompt strength is the FluxGuidance node (3.5), not CFG.\nFLUX takes no negative prompt. It is guidance distilled and runs at CFG 1.0, so there is no negative encoder on this canvas \u2014 the sampler's negative input gets a zeroed conditioning. StyleRef still compiles the negative and previews it; put anything you need from it into `subject` on Apply as a positive phrase (\"fully clothed\", \"no text or watermark\"). Raising CFG does not bring the negative back.\nStyle prompts use the `flux` target \u2014 FLUX reads prose with T5, so the whole style fits instead of being truncated at ~77 tokens the way an SDXL CLIP encoder would.\n\nStyle not coming through strongly enough?\nFLUX has a confident house look and will drift back to it. Two dials, in the order worth trying:\n1. `Flux guidance` (3.5 here, FLUX's default) is the blunt dial. 4\u20135 makes the style bite harder; past that the subject starts losing to it, and a dark style can go to pure black.\n2. Narrow `sections` on StyleRef Apply to the parts that define this style. For a period or painterly style that is usually `artistic_mediums,references,surface_material,colors` \u2014 the sections naming the medium, the era and the finish. Leaving it empty sends every section, and the identity-carrying ones render last, so a long style can read as generic.\nWhich sections matter depends on the style: for a geometric or layout-led style keep `shape_language` and `spatial_hierarchy` instead. Queue the Facets template to see what a style actually carries."
|
||||
],
|
||||
"title": "FLUX + references"
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"type": "StyleRefLoad",
|
||||
"pos": [
|
||||
40,
|
||||
1116
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
248
|
||||
],
|
||||
"flags": {},
|
||||
"order": 1,
|
||||
"mode": 0,
|
||||
"inputs": [],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "style",
|
||||
"type": "STYLEREF_STYLE",
|
||||
"links": [
|
||||
1,
|
||||
3
|
||||
],
|
||||
"slot_index": 0
|
||||
},
|
||||
{
|
||||
"name": "search_results",
|
||||
"type": "STRING",
|
||||
"links": [],
|
||||
"slot_index": 1
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "StyleRefLoad"
|
||||
},
|
||||
"widgets_values": [
|
||||
"72e1zdae-e2d54a18d090",
|
||||
"",
|
||||
"any",
|
||||
true,
|
||||
false
|
||||
],
|
||||
"title": "Load \u2014 a gallery slug"
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"type": "CheckpointLoaderSimple",
|
||||
"pos": [
|
||||
40,
|
||||
1412
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
160
|
||||
],
|
||||
"flags": {},
|
||||
"order": 2,
|
||||
"mode": 0,
|
||||
"inputs": [],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "MODEL",
|
||||
"type": "MODEL",
|
||||
"links": [
|
||||
10
|
||||
],
|
||||
"slot_index": 0
|
||||
},
|
||||
{
|
||||
"name": "CLIP",
|
||||
"type": "CLIP",
|
||||
"links": [
|
||||
7
|
||||
],
|
||||
"slot_index": 1
|
||||
},
|
||||
{
|
||||
"name": "VAE",
|
||||
"type": "VAE",
|
||||
"links": [
|
||||
15
|
||||
],
|
||||
"slot_index": 2
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CheckpointLoaderSimple",
|
||||
"models": [
|
||||
{
|
||||
"name": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-dev/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"directory": "checkpoints"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"flux1-dev-fp8.safetensors"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"type": "StyleRefReferenceImages",
|
||||
"pos": [
|
||||
420,
|
||||
60
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
136
|
||||
],
|
||||
"flags": {},
|
||||
"order": 3,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "style",
|
||||
"type": "STYLEREF_STYLE",
|
||||
"link": 1
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "images",
|
||||
"type": "IMAGE",
|
||||
"links": [
|
||||
2
|
||||
],
|
||||
"slot_index": 0
|
||||
},
|
||||
{
|
||||
"name": "count",
|
||||
"type": "INT",
|
||||
"links": [],
|
||||
"slot_index": 1
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "StyleRefReferenceImages"
|
||||
},
|
||||
"widgets_values": [
|
||||
12
|
||||
],
|
||||
"title": "Reference images"
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"type": "PreviewImage",
|
||||
"pos": [
|
||||
420,
|
||||
244
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
84
|
||||
],
|
||||
"flags": {},
|
||||
"order": 4,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "images",
|
||||
"type": "IMAGE",
|
||||
"link": 2
|
||||
}
|
||||
],
|
||||
"outputs": [],
|
||||
"properties": {
|
||||
"Node name for S&R": "PreviewImage"
|
||||
},
|
||||
"widgets_values": [],
|
||||
"title": "Inspiration images"
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"type": "StyleRefApply",
|
||||
"pos": [
|
||||
420,
|
||||
376
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
424
|
||||
],
|
||||
"flags": {},
|
||||
"order": 5,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "style",
|
||||
"type": "STYLEREF_STYLE",
|
||||
"link": 3
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "positive",
|
||||
"type": "STRING",
|
||||
"links": [
|
||||
4,
|
||||
6
|
||||
],
|
||||
"slot_index": 0
|
||||
},
|
||||
{
|
||||
"name": "negative",
|
||||
"type": "STRING",
|
||||
"links": [
|
||||
5
|
||||
],
|
||||
"slot_index": 1
|
||||
},
|
||||
{
|
||||
"name": "attribution",
|
||||
"type": "STRING",
|
||||
"links": [],
|
||||
"slot_index": 2
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "StyleRefApply"
|
||||
},
|
||||
"widgets_values": [
|
||||
"two friends flipping through crates of vinyl in a record shop",
|
||||
"flux",
|
||||
"",
|
||||
false,
|
||||
"",
|
||||
true
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"type": "PreviewAny",
|
||||
"pos": [
|
||||
420,
|
||||
848
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
84
|
||||
],
|
||||
"flags": {},
|
||||
"order": 6,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "source",
|
||||
"type": "*",
|
||||
"link": 4
|
||||
}
|
||||
],
|
||||
"outputs": [],
|
||||
"properties": {
|
||||
"Node name for S&R": "PreviewAny"
|
||||
},
|
||||
"widgets_values": [],
|
||||
"title": "Compiled positive"
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"type": "PreviewAny",
|
||||
"pos": [
|
||||
420,
|
||||
980
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
84
|
||||
],
|
||||
"flags": {},
|
||||
"order": 7,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "source",
|
||||
"type": "*",
|
||||
"link": 5
|
||||
}
|
||||
],
|
||||
"outputs": [],
|
||||
"properties": {
|
||||
"Node name for S&R": "PreviewAny"
|
||||
},
|
||||
"widgets_values": [],
|
||||
"title": "Compiled negative"
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"type": "CLIPTextEncode",
|
||||
"pos": [
|
||||
800,
|
||||
60
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
198
|
||||
],
|
||||
"flags": {},
|
||||
"order": 8,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "clip",
|
||||
"type": "CLIP",
|
||||
"link": 7
|
||||
},
|
||||
{
|
||||
"name": "text",
|
||||
"type": "STRING",
|
||||
"link": 6
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "CONDITIONING",
|
||||
"type": "CONDITIONING",
|
||||
"links": [
|
||||
8,
|
||||
9
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CLIPTextEncode"
|
||||
},
|
||||
"widgets_values": [
|
||||
""
|
||||
],
|
||||
"title": "Positive (from StyleRef)"
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"type": "FluxGuidance",
|
||||
"pos": [
|
||||
800,
|
||||
306
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
112
|
||||
],
|
||||
"flags": {},
|
||||
"order": 9,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "conditioning",
|
||||
"type": "CONDITIONING",
|
||||
"link": 8
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "CONDITIONING",
|
||||
"type": "CONDITIONING",
|
||||
"links": [
|
||||
11
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "FluxGuidance"
|
||||
},
|
||||
"widgets_values": [
|
||||
3.5
|
||||
],
|
||||
"title": "Flux guidance"
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"type": "ConditioningZeroOut",
|
||||
"pos": [
|
||||
800,
|
||||
466
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
84
|
||||
],
|
||||
"flags": {},
|
||||
"order": 10,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "conditioning",
|
||||
"type": "CONDITIONING",
|
||||
"link": 9
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "CONDITIONING",
|
||||
"type": "CONDITIONING",
|
||||
"links": [
|
||||
12
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "ConditioningZeroOut"
|
||||
},
|
||||
"widgets_values": [],
|
||||
"title": "FLUX has no negative"
|
||||
},
|
||||
{
|
||||
"id": 12,
|
||||
"type": "EmptySD3LatentImage",
|
||||
"pos": [
|
||||
800,
|
||||
598
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
168
|
||||
],
|
||||
"flags": {},
|
||||
"order": 11,
|
||||
"mode": 0,
|
||||
"inputs": [],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "LATENT",
|
||||
"type": "LATENT",
|
||||
"links": [
|
||||
13
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "EmptySD3LatentImage"
|
||||
},
|
||||
"widgets_values": [
|
||||
1024,
|
||||
1024,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 13,
|
||||
"type": "KSampler",
|
||||
"pos": [
|
||||
1180,
|
||||
60
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
352
|
||||
],
|
||||
"flags": {},
|
||||
"order": 12,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "model",
|
||||
"type": "MODEL",
|
||||
"link": 10
|
||||
},
|
||||
{
|
||||
"name": "positive",
|
||||
"type": "CONDITIONING",
|
||||
"link": 11
|
||||
},
|
||||
{
|
||||
"name": "negative",
|
||||
"type": "CONDITIONING",
|
||||
"link": 12
|
||||
},
|
||||
{
|
||||
"name": "latent_image",
|
||||
"type": "LATENT",
|
||||
"link": 13
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "LATENT",
|
||||
"type": "LATENT",
|
||||
"links": [
|
||||
14
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "KSampler"
|
||||
},
|
||||
"widgets_values": [
|
||||
0,
|
||||
"randomize",
|
||||
20,
|
||||
1.0,
|
||||
"euler",
|
||||
"simple",
|
||||
1.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 14,
|
||||
"type": "VAEDecode",
|
||||
"pos": [
|
||||
1560,
|
||||
60
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
108
|
||||
],
|
||||
"flags": {},
|
||||
"order": 13,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "samples",
|
||||
"type": "LATENT",
|
||||
"link": 14
|
||||
},
|
||||
{
|
||||
"name": "vae",
|
||||
"type": "VAE",
|
||||
"link": 15
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "IMAGE",
|
||||
"type": "IMAGE",
|
||||
"links": [
|
||||
16
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "VAEDecode"
|
||||
},
|
||||
"widgets_values": []
|
||||
},
|
||||
{
|
||||
"id": 15,
|
||||
"type": "SaveImage",
|
||||
"pos": [
|
||||
1560,
|
||||
216
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
112
|
||||
],
|
||||
"flags": {},
|
||||
"order": 14,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "images",
|
||||
"type": "IMAGE",
|
||||
"link": 16
|
||||
}
|
||||
],
|
||||
"outputs": [],
|
||||
"properties": {
|
||||
"Node name for S&R": "SaveImage"
|
||||
},
|
||||
"widgets_values": [
|
||||
"StyleRef"
|
||||
]
|
||||
}
|
||||
],
|
||||
"links": [
|
||||
[
|
||||
1,
|
||||
2,
|
||||
0,
|
||||
4,
|
||||
0,
|
||||
"STYLEREF_STYLE"
|
||||
],
|
||||
[
|
||||
2,
|
||||
4,
|
||||
0,
|
||||
5,
|
||||
0,
|
||||
"IMAGE"
|
||||
],
|
||||
[
|
||||
3,
|
||||
2,
|
||||
0,
|
||||
6,
|
||||
0,
|
||||
"STYLEREF_STYLE"
|
||||
],
|
||||
[
|
||||
4,
|
||||
6,
|
||||
0,
|
||||
7,
|
||||
0,
|
||||
"STRING"
|
||||
],
|
||||
[
|
||||
5,
|
||||
6,
|
||||
1,
|
||||
8,
|
||||
0,
|
||||
"STRING"
|
||||
],
|
||||
[
|
||||
6,
|
||||
6,
|
||||
0,
|
||||
9,
|
||||
1,
|
||||
"STRING"
|
||||
],
|
||||
[
|
||||
7,
|
||||
3,
|
||||
1,
|
||||
9,
|
||||
0,
|
||||
"CLIP"
|
||||
],
|
||||
[
|
||||
8,
|
||||
9,
|
||||
0,
|
||||
10,
|
||||
0,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
9,
|
||||
9,
|
||||
0,
|
||||
11,
|
||||
0,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
10,
|
||||
3,
|
||||
0,
|
||||
13,
|
||||
0,
|
||||
"MODEL"
|
||||
],
|
||||
[
|
||||
11,
|
||||
10,
|
||||
0,
|
||||
13,
|
||||
1,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
12,
|
||||
11,
|
||||
0,
|
||||
13,
|
||||
2,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
13,
|
||||
12,
|
||||
0,
|
||||
13,
|
||||
3,
|
||||
"LATENT"
|
||||
],
|
||||
[
|
||||
14,
|
||||
13,
|
||||
0,
|
||||
14,
|
||||
0,
|
||||
"LATENT"
|
||||
],
|
||||
[
|
||||
15,
|
||||
3,
|
||||
2,
|
||||
14,
|
||||
1,
|
||||
"VAE"
|
||||
],
|
||||
[
|
||||
16,
|
||||
14,
|
||||
0,
|
||||
15,
|
||||
0,
|
||||
"IMAGE"
|
||||
]
|
||||
],
|
||||
"groups": [],
|
||||
"config": {},
|
||||
"extra": {
|
||||
"styleref": {
|
||||
"notes": "Generated by scripts/build_workflows.py \u2014 edit the script, not this file."
|
||||
}
|
||||
},
|
||||
"version": 0.4,
|
||||
"models": [
|
||||
{
|
||||
"name": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-dev/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"directory": "checkpoints"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"last_node_id": 19,
|
||||
"last_node_id": 20,
|
||||
"last_link_id": 21,
|
||||
"nodes": [
|
||||
{
|
||||
@@ -62,7 +62,7 @@
|
||||
"Node name for S&R": "StyleRefLoad"
|
||||
},
|
||||
"widgets_values": [
|
||||
"sbdlwwly-66ae1a89efdc",
|
||||
"72e1zdae-e2d54a18d090",
|
||||
"",
|
||||
"any",
|
||||
true,
|
||||
@@ -98,8 +98,7 @@
|
||||
"name": "CLIP",
|
||||
"type": "CLIP",
|
||||
"links": [
|
||||
13,
|
||||
14
|
||||
12
|
||||
],
|
||||
"slot_index": 1
|
||||
},
|
||||
@@ -113,10 +112,17 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CheckpointLoaderSimple"
|
||||
"Node name for S&R": "CheckpointLoaderSimple",
|
||||
"models": [
|
||||
{
|
||||
"name": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-dev/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"directory": "checkpoints"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"sd_xl_base_1.0.safetensors"
|
||||
"flux1-dev-fp8.safetensors"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -507,8 +513,7 @@
|
||||
"name": "negative",
|
||||
"type": "STRING",
|
||||
"links": [
|
||||
10,
|
||||
12
|
||||
10
|
||||
],
|
||||
"slot_index": 1
|
||||
},
|
||||
@@ -524,7 +529,7 @@
|
||||
},
|
||||
"widgets_values": [
|
||||
"two friends flipping through crates of vinyl in a record shop",
|
||||
"diffusion",
|
||||
"flux",
|
||||
"",
|
||||
false,
|
||||
"",
|
||||
@@ -605,7 +610,7 @@
|
||||
{
|
||||
"name": "clip",
|
||||
"type": "CLIP",
|
||||
"link": 13
|
||||
"link": 12
|
||||
},
|
||||
{
|
||||
"name": "text",
|
||||
@@ -618,7 +623,8 @@
|
||||
"name": "CONDITIONING",
|
||||
"type": "CONDITIONING",
|
||||
"links": [
|
||||
16
|
||||
13,
|
||||
14
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
@@ -633,28 +639,62 @@
|
||||
},
|
||||
{
|
||||
"id": 15,
|
||||
"type": "CLIPTextEncode",
|
||||
"type": "FluxGuidance",
|
||||
"pos": [
|
||||
1560,
|
||||
306
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
198
|
||||
112
|
||||
],
|
||||
"flags": {},
|
||||
"order": 14,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "clip",
|
||||
"type": "CLIP",
|
||||
"link": 14
|
||||
},
|
||||
"name": "conditioning",
|
||||
"type": "CONDITIONING",
|
||||
"link": 13
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"name": "text",
|
||||
"type": "STRING",
|
||||
"link": 12
|
||||
"name": "CONDITIONING",
|
||||
"type": "CONDITIONING",
|
||||
"links": [
|
||||
16
|
||||
],
|
||||
"slot_index": 0
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "FluxGuidance"
|
||||
},
|
||||
"widgets_values": [
|
||||
3.5
|
||||
],
|
||||
"title": "Flux guidance"
|
||||
},
|
||||
{
|
||||
"id": 16,
|
||||
"type": "ConditioningZeroOut",
|
||||
"pos": [
|
||||
1560,
|
||||
466
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
84
|
||||
],
|
||||
"flags": {},
|
||||
"order": 15,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
"name": "conditioning",
|
||||
"type": "CONDITIONING",
|
||||
"link": 14
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
@@ -668,26 +708,24 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CLIPTextEncode"
|
||||
"Node name for S&R": "ConditioningZeroOut"
|
||||
},
|
||||
"widgets_values": [
|
||||
""
|
||||
],
|
||||
"title": "Negative (from StyleRef)"
|
||||
"widgets_values": [],
|
||||
"title": "FLUX has no negative"
|
||||
},
|
||||
{
|
||||
"id": 16,
|
||||
"type": "EmptyLatentImage",
|
||||
"id": 17,
|
||||
"type": "EmptySD3LatentImage",
|
||||
"pos": [
|
||||
1560,
|
||||
552
|
||||
598
|
||||
],
|
||||
"size": [
|
||||
320,
|
||||
168
|
||||
],
|
||||
"flags": {},
|
||||
"order": 15,
|
||||
"order": 16,
|
||||
"mode": 0,
|
||||
"inputs": [],
|
||||
"outputs": [
|
||||
@@ -701,7 +739,7 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "EmptyLatentImage"
|
||||
"Node name for S&R": "EmptySD3LatentImage"
|
||||
},
|
||||
"widgets_values": [
|
||||
1024,
|
||||
@@ -710,7 +748,7 @@
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 17,
|
||||
"id": 18,
|
||||
"type": "KSampler",
|
||||
"pos": [
|
||||
1940,
|
||||
@@ -721,7 +759,7 @@
|
||||
352
|
||||
],
|
||||
"flags": {},
|
||||
"order": 16,
|
||||
"order": 17,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
@@ -761,15 +799,15 @@
|
||||
"widgets_values": [
|
||||
0,
|
||||
"randomize",
|
||||
25,
|
||||
7.0,
|
||||
20,
|
||||
1.0,
|
||||
"euler",
|
||||
"normal",
|
||||
"simple",
|
||||
1.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 18,
|
||||
"id": 19,
|
||||
"type": "VAEDecode",
|
||||
"pos": [
|
||||
2320,
|
||||
@@ -780,7 +818,7 @@
|
||||
108
|
||||
],
|
||||
"flags": {},
|
||||
"order": 17,
|
||||
"order": 18,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
@@ -810,7 +848,7 @@
|
||||
"widgets_values": []
|
||||
},
|
||||
{
|
||||
"id": 19,
|
||||
"id": 20,
|
||||
"type": "SaveImage",
|
||||
"pos": [
|
||||
2320,
|
||||
@@ -821,7 +859,7 @@
|
||||
112
|
||||
],
|
||||
"flags": {},
|
||||
"order": 18,
|
||||
"order": 19,
|
||||
"mode": 0,
|
||||
"inputs": [
|
||||
{
|
||||
@@ -930,82 +968,82 @@
|
||||
],
|
||||
[
|
||||
12,
|
||||
11,
|
||||
3,
|
||||
1,
|
||||
15,
|
||||
1,
|
||||
"STRING"
|
||||
14,
|
||||
0,
|
||||
"CLIP"
|
||||
],
|
||||
[
|
||||
13,
|
||||
3,
|
||||
1,
|
||||
14,
|
||||
0,
|
||||
"CLIP"
|
||||
15,
|
||||
0,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
14,
|
||||
3,
|
||||
1,
|
||||
15,
|
||||
14,
|
||||
0,
|
||||
"CLIP"
|
||||
16,
|
||||
0,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
15,
|
||||
3,
|
||||
0,
|
||||
17,
|
||||
18,
|
||||
0,
|
||||
"MODEL"
|
||||
],
|
||||
[
|
||||
16,
|
||||
14,
|
||||
15,
|
||||
0,
|
||||
17,
|
||||
18,
|
||||
1,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
17,
|
||||
15,
|
||||
16,
|
||||
0,
|
||||
17,
|
||||
18,
|
||||
2,
|
||||
"CONDITIONING"
|
||||
],
|
||||
[
|
||||
18,
|
||||
16,
|
||||
0,
|
||||
17,
|
||||
0,
|
||||
18,
|
||||
3,
|
||||
"LATENT"
|
||||
],
|
||||
[
|
||||
19,
|
||||
17,
|
||||
0,
|
||||
18,
|
||||
0,
|
||||
19,
|
||||
0,
|
||||
"LATENT"
|
||||
],
|
||||
[
|
||||
20,
|
||||
3,
|
||||
2,
|
||||
18,
|
||||
19,
|
||||
1,
|
||||
"VAE"
|
||||
],
|
||||
[
|
||||
21,
|
||||
18,
|
||||
0,
|
||||
19,
|
||||
0,
|
||||
20,
|
||||
0,
|
||||
"IMAGE"
|
||||
]
|
||||
],
|
||||
@@ -1019,8 +1057,8 @@
|
||||
"version": 0.4,
|
||||
"models": [
|
||||
{
|
||||
"name": "sd_xl_base_1.0.safetensors",
|
||||
"url": "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors",
|
||||
"name": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-dev/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"directory": "checkpoints"
|
||||
}
|
||||
]
|
||||
@@ -95,7 +95,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "UNETLoader"
|
||||
"Node name for S&R": "UNETLoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "z_image_turbo_bf16.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/diffusion_models/z_image_turbo_bf16.safetensors",
|
||||
"directory": "diffusion_models"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"z_image_turbo_bf16.safetensors",
|
||||
@@ -129,7 +136,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CLIPLoader"
|
||||
"Node name for S&R": "CLIPLoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "qwen_3_4b.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/text_encoders/qwen_3_4b.safetensors",
|
||||
"directory": "text_encoders"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"qwen_3_4b.safetensors",
|
||||
@@ -164,7 +178,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "VAELoader"
|
||||
"Node name for S&R": "VAELoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "ae.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/vae/ae.safetensors",
|
||||
"directory": "vae"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"ae.safetensors"
|
||||
|
||||
@@ -98,7 +98,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "UNETLoader"
|
||||
"Node name for S&R": "UNETLoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "z_image_turbo_bf16.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/diffusion_models/z_image_turbo_bf16.safetensors",
|
||||
"directory": "diffusion_models"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"z_image_turbo_bf16.safetensors",
|
||||
@@ -134,7 +141,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CLIPLoader"
|
||||
"Node name for S&R": "CLIPLoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "qwen_3_4b.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/text_encoders/qwen_3_4b.safetensors",
|
||||
"directory": "text_encoders"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"qwen_3_4b.safetensors",
|
||||
@@ -171,7 +185,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "VAELoader"
|
||||
"Node name for S&R": "VAELoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "ae.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/vae/ae.safetensors",
|
||||
"directory": "vae"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"ae.safetensors"
|
||||
@@ -588,7 +609,7 @@
|
||||
"Node name for S&R": "StyleRefApply"
|
||||
},
|
||||
"widgets_values": [
|
||||
"a lone surfer walking back along the beach at dusk",
|
||||
"A lone surfer strolled back along the beach at dusk, carrying her large surfing board.",
|
||||
"diffusion",
|
||||
"",
|
||||
false,
|
||||
|
||||
@@ -124,7 +124,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "UNETLoader"
|
||||
"Node name for S&R": "UNETLoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "z_image_turbo_bf16.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/diffusion_models/z_image_turbo_bf16.safetensors",
|
||||
"directory": "diffusion_models"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"z_image_turbo_bf16.safetensors",
|
||||
@@ -158,7 +165,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CLIPLoader"
|
||||
"Node name for S&R": "CLIPLoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "qwen_3_4b.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/text_encoders/qwen_3_4b.safetensors",
|
||||
"directory": "text_encoders"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"qwen_3_4b.safetensors",
|
||||
@@ -193,7 +207,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "VAELoader"
|
||||
"Node name for S&R": "VAELoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "ae.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/vae/ae.safetensors",
|
||||
"directory": "vae"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"ae.safetensors"
|
||||
|
||||
@@ -96,7 +96,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "UNETLoader"
|
||||
"Node name for S&R": "UNETLoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "z_image_turbo_bf16.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/diffusion_models/z_image_turbo_bf16.safetensors",
|
||||
"directory": "diffusion_models"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"z_image_turbo_bf16.safetensors",
|
||||
@@ -130,7 +137,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CLIPLoader"
|
||||
"Node name for S&R": "CLIPLoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "qwen_3_4b.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/text_encoders/qwen_3_4b.safetensors",
|
||||
"directory": "text_encoders"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"qwen_3_4b.safetensors",
|
||||
@@ -165,7 +179,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "VAELoader"
|
||||
"Node name for S&R": "VAELoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "ae.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/vae/ae.safetensors",
|
||||
"directory": "vae"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"ae.safetensors"
|
||||
|
||||
@@ -96,7 +96,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "UNETLoader"
|
||||
"Node name for S&R": "UNETLoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "z_image_turbo_bf16.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/diffusion_models/z_image_turbo_bf16.safetensors",
|
||||
"directory": "diffusion_models"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"z_image_turbo_bf16.safetensors",
|
||||
@@ -130,7 +137,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "CLIPLoader"
|
||||
"Node name for S&R": "CLIPLoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "qwen_3_4b.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/text_encoders/qwen_3_4b.safetensors",
|
||||
"directory": "text_encoders"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"qwen_3_4b.safetensors",
|
||||
@@ -165,7 +179,14 @@
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"Node name for S&R": "VAELoader"
|
||||
"Node name for S&R": "VAELoader",
|
||||
"models": [
|
||||
{
|
||||
"name": "ae.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/z_image_turbo/resolve/main/split_files/vae/ae.safetensors",
|
||||
"directory": "vae"
|
||||
}
|
||||
]
|
||||
},
|
||||
"widgets_values": [
|
||||
"ae.safetensors"
|
||||
|
||||
Reference in New Issue
Block a user