diff --git a/images/example_workflow.png b/images/example_workflow.png index cf9bcb7..3175f9c 100644 Binary files a/images/example_workflow.png and b/images/example_workflow.png differ diff --git a/workflows/example_workflow.json b/workflows/example_workflow.json index 759c552..774ef3b 100644 --- a/workflows/example_workflow.json +++ b/workflows/example_workflow.json @@ -1,7 +1,562 @@ { - "last_node_id": 8, - "last_link_id": 34, + "last_node_id": 9, + "last_link_id": 39, "nodes": [ + { + "id": 4, + "type": "EmptyLatentImage", + "pos": [ + 840, + 500 + ], + "size": { + "0": 320, + "1": 74 + }, + "flags": {}, + "order": 4, + "mode": 0, + "inputs": [ + { + "name": "width", + "type": "INT", + "link": 10, + "widget": { + "name": "width" + } + }, + { + "name": "height", + "type": "INT", + "link": 11, + "widget": { + "name": "height" + } + }, + { + "name": "batch_size", + "type": "INT", + "link": 9, + "widget": { + "name": "batch_size" + } + } + ], + "outputs": [ + { + "name": "LATENT", + "type": "LATENT", + "links": [ + 23 + ], + "shape": 3, + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "EmptyLatentImage" + }, + "widgets_values": [ + 512, + 512, + 1 + ] + }, + { + "id": 7, + "type": "CLIPTextEncode", + "pos": [ + 840, + 650 + ], + "size": { + "0": 320, + "1": 54 + }, + "flags": {}, + "order": 3, + "mode": 0, + "inputs": [ + { + "name": "clip", + "type": "CLIP", + "link": 32 + }, + { + "name": "text", + "type": "STRING", + "link": 37, + "widget": { + "name": "text" + } + } + ], + "outputs": [ + { + "name": "CONDITIONING", + "type": "CONDITIONING", + "links": [ + 18 + ], + "shape": 3, + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "CLIPTextEncode" + }, + "widgets_values": [ + "" + ] + }, + { + "id": 5, + "type": "VAEDecode", + "pos": [ + 840, + 910 + ], + "size": { + "0": 320, + "1": 50 + }, + "flags": {}, + "order": 6, + "mode": 0, + "inputs": [ + { + "name": "samples", + "type": "LATENT", + "link": 22, + "slot_index": 0 + }, + { + "name": "vae", + "type": "VAE", + "link": 21 + } + ], + "outputs": [ + { + "name": "IMAGE", + "type": "IMAGE", + "links": [ + 34 + ], + "shape": 3, + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "VAEDecode" + } + }, + { + "id": 6, + "type": "CLIPTextEncode", + "pos": [ + 840, + 780 + ], + "size": { + "0": 320, + "1": 54 + }, + "flags": {}, + "order": 2, + "mode": 0, + "inputs": [ + { + "name": "clip", + "type": "CLIP", + "link": 20, + "slot_index": 0 + }, + { + "name": "text", + "type": "STRING", + "link": 38, + "widget": { + "name": "text" + }, + "slot_index": 1 + } + ], + "outputs": [ + { + "name": "CONDITIONING", + "type": "CONDITIONING", + "links": [ + 39 + ], + "shape": 3, + "slot_index": 0 + } + ], + "properties": { + "Node name for S&R": "CLIPTextEncode" + }, + "widgets_values": [ + "" + ] + }, + { + "id": 3, + "type": "SDPromptSaver", + "pos": [ + 1210, + 130 + ], + "size": { + "0": 320, + "1": 500 + }, + "flags": {}, + "order": 7, + "mode": 0, + "inputs": [ + { + "name": "images", + "type": "IMAGE", + "link": 34 + }, + { + "name": "model_name", + "type": "COMBO", + "link": 16, + "widget": { + "name": "model_name" + } + }, + { + "name": "seed", + "type": "INT", + "link": 26, + "widget": { + "name": "seed" + } + }, + { + "name": "steps", + "type": "INT", + "link": null, + "widget": { + "name": "steps" + } + }, + { + "name": "cfg", + "type": "FLOAT", + "link": null, + "widget": { + "name": "cfg" + } + }, + { + "name": "sampler_name", + "type": "COMBO", + "link": 14, + "widget": { + "name": "sampler_name" + } + }, + { + "name": "scheduler", + "type": "COMBO", + "link": 13, + "widget": { + "name": "scheduler" + } + }, + { + "name": "width", + "type": "INT", + "link": 29, + "widget": { + "name": "width" + } + }, + { + "name": "height", + "type": "INT", + "link": 28, + "widget": { + "name": "height" + } + }, + { + "name": "positive", + "type": "STRING", + "link": null, + "widget": { + "name": "positive" + } + }, + { + "name": "negative", + "type": "STRING", + "link": null, + "widget": { + "name": "negative" + } + } + ], + "outputs": [ + { + "name": "FILENAME", + "type": "STRING", + "links": null, + "shape": 3 + }, + { + "name": "METADATA", + "type": "STRING", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "SDPromptSaver" + }, + "widgets_values": [ + "ComfyUI_%time_%seed_%counter", + "%date/", + "CheckpointYesmix_v20.safetensors", + 822116345397686, + "randomize", + 20, + 8, + "euler", + "normal", + 1, + 1, + "", + "", + "png", + false, + true, + 100, + "%Y-%m-%d", + "%H%M%S", + "ComfyUI Example Image" + ] + }, + { + "id": 8, + "type": "KSamplerAdvanced", + "pos": [ + 840, + 130 + ], + "size": { + "0": 320, + "1": 290 + }, + "flags": {}, + "order": 5, + "mode": 0, + "inputs": [ + { + "name": "model", + "type": "MODEL", + "link": 17 + }, + { + "name": "positive", + "type": "CONDITIONING", + "link": 18 + }, + { + "name": "negative", + "type": "CONDITIONING", + "link": 39 + }, + { + "name": "latent_image", + "type": "LATENT", + "link": 23 + }, + { + "name": "noise_seed", + "type": "INT", + "link": 24, + "widget": { + "name": "noise_seed" + }, + "slot_index": 4 + }, + { + "name": "steps", + "type": "INT", + "link": 35, + "widget": { + "name": "steps" + } + }, + { + "name": "cfg", + "type": "FLOAT", + "link": 36, + "widget": { + "name": "cfg" + } + }, + { + "name": "sampler_name", + "type": "COMBO", + "link": 15, + "widget": { + "name": "sampler_name" + } + }, + { + "name": "scheduler", + "type": "COMBO", + "link": 12, + "widget": { + "name": "scheduler" + } + } + ], + "outputs": [ + { + "name": "LATENT", + "type": "LATENT", + "links": [ + 22 + ], + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "KSamplerAdvanced" + }, + "widgets_values": [ + "enable", + 1033713264376921, + "randomize", + 20, + 8, + "euler", + "normal", + 0, + 10000, + "disable" + ] + }, + { + "id": 9, + "type": "SDPromptReader", + "pos": [ + 100, + 130 + ], + "size": [ + 320, + 900 + ], + "flags": {}, + "order": 0, + "mode": 0, + "outputs": [ + { + "name": "IMAGE", + "type": "IMAGE", + "links": null, + "shape": 3 + }, + { + "name": "MASK", + "type": "MASK", + "links": null, + "shape": 3 + }, + { + "name": "POSITIVE", + "type": "STRING", + "links": [ + 37 + ], + "shape": 3, + "slot_index": 2 + }, + { + "name": "NEGATIVE", + "type": "STRING", + "links": [ + 38 + ], + "shape": 3, + "slot_index": 3 + }, + { + "name": "SEED", + "type": "INT", + "links": null, + "shape": 3 + }, + { + "name": "STEPS", + "type": "INT", + "links": [ + 35 + ], + "shape": 3, + "slot_index": 5 + }, + { + "name": "CFG", + "type": "FLOAT", + "links": [ + 36 + ], + "shape": 3, + "slot_index": 6 + }, + { + "name": "WIDTH", + "type": "INT", + "links": null, + "shape": 3, + "slot_index": 7 + }, + { + "name": "HEIGHT", + "type": "INT", + "links": null, + "shape": 3 + }, + { + "name": "MODEL_NAME", + "type": "*", + "links": null, + "shape": 3 + }, + { + "name": "FILENAME", + "type": "STRING", + "links": null, + "shape": 3 + }, + { + "name": "SETTINGS", + "type": "STRING", + "links": null, + "shape": 3 + } + ], + "properties": { + "Node name for S&R": "SDPromptReader" + }, + "widgets_values": [ + "00067-2302238556.png", + "image", + 0, + "ultra realistic 8k cg, HDR, epic, perfect artwork, masterpiece, bokeh, beautiful face, perfect female body, alluring, perfect female figure, ultra high res, beach, pink hair, seductive posture, seductive gaze, skindentation, 1girl, kpop idol, blush, street, earring, choker, close up, strap dress, half-length portrait, , ", + "grayscale, monochrome, low quality, worst quality, lowres, acnes, bad anatomy, bad hands, deformed, error, logo, mosaic censoring, sketches, skin blemishes, skin spots, text, watermark, FastNegativeV2", + "Steps: 35, Sampler: DPM++ 2M Karras, CFG scale: 7.5, Seed: 2302238556, Size: 512x512, Model hash: 18ed2b6c48, Model: xxmix9realistic_v40, Denoising strength: 0.45, Hires upscale: 2, Hires steps: 15, Hires upscaler: R-ESRGAN 4x+, Lora hashes: \"koreandolllikenessV20_v20: 8f3d16e6eada, fashigirl-v6-nai-5ep-resize: 4e0173ae8cef\", Version: 1.6.0" + ] + }, { "id": 2, "type": "SDParameterGenerator", @@ -14,7 +569,7 @@ "1": 900 }, "flags": {}, - "order": 0, + "order": 1, "mode": 0, "outputs": [ { @@ -155,9 +710,10 @@ }, "widgets_values": [ "xxmix9realistic_v40.safetensors", + "baked VAE", "SDv1 512px", "none", - -1, + 546889506427388, 30, 1, 8, @@ -165,7 +721,7 @@ "karras", 6, 6, - "1:1", + "1:1 - 512x512", 512, 512, 1, @@ -175,597 +731,9 @@ null, null ] - }, - { - "id": 3, - "type": "SDPromptSaver", - "pos": [ - 1210, - 130 - ], - "size": { - "0": 320, - "1": 590 - }, - "flags": {}, - "order": 7, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 34 - }, - { - "name": "model_name", - "type": "COMBO", - "link": 16, - "widget": { - "name": "model_name" - } - }, - { - "name": "seed", - "type": "INT", - "link": 26, - "widget": { - "name": "seed" - } - }, - { - "name": "steps", - "type": "INT", - "link": 5, - "widget": { - "name": "steps" - } - }, - { - "name": "cfg", - "type": "FLOAT", - "link": 6, - "widget": { - "name": "cfg" - } - }, - { - "name": "sampler_name", - "type": "COMBO", - "link": 14, - "widget": { - "name": "sampler_name" - } - }, - { - "name": "scheduler", - "type": "COMBO", - "link": 13, - "widget": { - "name": "scheduler" - } - }, - { - "name": "width", - "type": "INT", - "link": 29, - "widget": { - "name": "width" - } - }, - { - "name": "height", - "type": "INT", - "link": 28, - "widget": { - "name": "height" - } - }, - { - "name": "positive", - "type": "STRING", - "link": 30, - "widget": { - "name": "positive" - } - }, - { - "name": "negative", - "type": "STRING", - "link": 31, - "widget": { - "name": "negative" - } - } - ], - "properties": { - "Node name for S&R": "SDPromptSaver" - }, - "widgets_values": [ - "ComfyUI_%time_%seed_%counter", - "%date/", - "CheckpointYesmix_v20.safetensors", - 71608365436402, - "randomize", - 20, - 8, - "euler", - "normal", - 1, - 1, - "", - "", - "png", - false, - true, - 100, - "%Y-%m-%d", - "%H%M%S", - "" - ] - }, - { - "id": 8, - "type": "KSamplerAdvanced", - "pos": [ - 840, - 130 - ], - "size": [ - 320, - 290 - ], - "flags": {}, - "order": 5, - "mode": 0, - "inputs": [ - { - "name": "model", - "type": "MODEL", - "link": 17 - }, - { - "name": "positive", - "type": "CONDITIONING", - "link": 18 - }, - { - "name": "negative", - "type": "CONDITIONING", - "link": 19 - }, - { - "name": "latent_image", - "type": "LATENT", - "link": 23 - }, - { - "name": "noise_seed", - "type": "INT", - "link": 24, - "widget": { - "name": "noise_seed" - }, - "slot_index": 4 - }, - { - "name": "steps", - "type": "INT", - "link": 7, - "widget": { - "name": "steps" - } - }, - { - "name": "cfg", - "type": "FLOAT", - "link": 8, - "widget": { - "name": "cfg" - } - }, - { - "name": "sampler_name", - "type": "COMBO", - "link": 15, - "widget": { - "name": "sampler_name" - } - }, - { - "name": "scheduler", - "type": "COMBO", - "link": 12, - "widget": { - "name": "scheduler" - } - } - ], - "outputs": [ - { - "name": "LATENT", - "type": "LATENT", - "links": [ - 22 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "KSamplerAdvanced" - }, - "widgets_values": [ - "enable", - 13306184212651, - "randomize", - 20, - 8, - "euler", - "normal", - 0, - 10000, - "disable" - ] - }, - { - "id": 4, - "type": "EmptyLatentImage", - "pos": [ - 840, - 500 - ], - "size": [ - 320, - 70 - ], - "flags": {}, - "order": 2, - "mode": 0, - "inputs": [ - { - "name": "width", - "type": "INT", - "link": 10, - "widget": { - "name": "width" - } - }, - { - "name": "height", - "type": "INT", - "link": 11, - "widget": { - "name": "height" - } - }, - { - "name": "batch_size", - "type": "INT", - "link": 9, - "widget": { - "name": "batch_size" - } - } - ], - "outputs": [ - { - "name": "LATENT", - "type": "LATENT", - "links": [ - 23 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "EmptyLatentImage" - }, - "widgets_values": [ - 512, - 512, - 1 - ] - }, - { - "id": 7, - "type": "CLIPTextEncode", - "pos": [ - 840, - 650 - ], - "size": [ - 320, - 50 - ], - "flags": {}, - "order": 3, - "mode": 0, - "inputs": [ - { - "name": "clip", - "type": "CLIP", - "link": 32 - }, - { - "name": "text", - "type": "STRING", - "link": 3, - "widget": { - "name": "text" - } - } - ], - "outputs": [ - { - "name": "CONDITIONING", - "type": "CONDITIONING", - "links": [ - 18 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "CLIPTextEncode" - }, - "widgets_values": [ - "" - ] - }, - { - "id": 6, - "type": "CLIPTextEncode", - "pos": [ - 840, - 780 - ], - "size": [ - 320, - 50 - ], - "flags": {}, - "order": 4, - "mode": 0, - "inputs": [ - { - "name": "clip", - "type": "CLIP", - "link": 20, - "slot_index": 0 - }, - { - "name": "text", - "type": "STRING", - "link": 4, - "widget": { - "name": "text" - } - } - ], - "outputs": [ - { - "name": "CONDITIONING", - "type": "CONDITIONING", - "links": [ - 19 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "CLIPTextEncode" - }, - "widgets_values": [ - "" - ] - }, - { - "id": 5, - "type": "VAEDecode", - "pos": [ - 840, - 910 - ], - "size": { - "0": 320, - "1": 50 - }, - "flags": {}, - "order": 6, - "mode": 0, - "inputs": [ - { - "name": "samples", - "type": "LATENT", - "link": 22, - "slot_index": 0 - }, - { - "name": "vae", - "type": "VAE", - "link": 21 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 34 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "VAEDecode" - } - }, - { - "id": 1, - "type": "SDPromptReader", - "pos": [ - 100, - 130 - ], - "size": { - "0": 320, - "1": 900 - }, - "flags": {}, - "order": 1, - "mode": 0, - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [], - "shape": 3, - "slot_index": 0 - }, - { - "name": "MASK", - "type": "MASK", - "links": null, - "shape": 3 - }, - { - "name": "POSITIVE", - "type": "STRING", - "links": [ - 3, - 30 - ], - "shape": 3, - "slot_index": 2 - }, - { - "name": "NEGATIVE", - "type": "STRING", - "links": [ - 4, - 31 - ], - "shape": 3, - "slot_index": 3 - }, - { - "name": "SEED", - "type": "INT", - "links": null, - "shape": 3 - }, - { - "name": "STEPS", - "type": "INT", - "links": [ - 5, - 7 - ], - "shape": 3, - "slot_index": 5 - }, - { - "name": "CFG", - "type": "FLOAT", - "links": [ - 6, - 8 - ], - "shape": 3, - "slot_index": 6 - }, - { - "name": "WIDTH", - "type": "INT", - "links": [], - "shape": 3, - "slot_index": 7 - }, - { - "name": "HEIGHT", - "type": "INT", - "links": [], - "shape": 3, - "slot_index": 8 - }, - { - "name": "FILE_NAME", - "type": "STRING", - "links": null, - "shape": 3 - }, - { - "name": "SETTINGS", - "type": "STRING", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "SDPromptReader" - }, - "widgets_values": [ - "00067-2302238556.png", - 0, - "image", - "ultra realistic 8k cg, HDR, epic, perfect artwork, masterpiece, bokeh, beautiful face, perfect female body, alluring, perfect female figure, ultra high res, beach, pink hair, seductive posture, seductive gaze, skindentation, 1girl, kpop idol, blush, street, earring, choker, close up, strap dress, half-length portrait, , ", - "grayscale, monochrome, low quality, worst quality, lowres, acnes, bad anatomy, bad hands, deformed, error, logo, mosaic censoring, sketches, skin blemishes, skin spots, text, watermark, FastNegativeV2", - "Steps: 35, Sampler: DPM++ 2M Karras, CFG scale: 7.5, Seed: 2302238556, Size: 512x512, Model hash: 18ed2b6c48, Model: xxmix9realistic_v40, Denoising strength: 0.45, Hires upscale: 2, Hires steps: 15, Hires upscaler: R-ESRGAN 4x+, Lora hashes: \"koreandolllikenessV20_v20: 8f3d16e6eada, fashigirl-v6-nai-5ep-resize: 4e0173ae8cef\", Version: 1.6.0" - ] } ], "links": [ - [ - 3, - 1, - 2, - 7, - 1, - "STRING" - ], - [ - 4, - 1, - 3, - 6, - 1, - "STRING" - ], - [ - 5, - 1, - 5, - 3, - 3, - "INT" - ], - [ - 6, - 1, - 6, - 3, - 4, - "FLOAT" - ], - [ - 7, - 1, - 5, - 8, - 5, - "INT" - ], - [ - 8, - 1, - 6, - 8, - 6, - "FLOAT" - ], [ 9, 2, @@ -846,14 +814,6 @@ 1, "CONDITIONING" ], - [ - 19, - 6, - 0, - 8, - 2, - "CONDITIONING" - ], [ 20, 2, @@ -918,22 +878,6 @@ 7, "INT" ], - [ - 30, - 1, - 2, - 3, - 9, - "STRING" - ], - [ - 31, - 1, - 3, - 3, - 10, - "STRING" - ], [ 32, 2, @@ -949,6 +893,46 @@ 3, 0, "IMAGE" + ], + [ + 35, + 9, + 5, + 8, + 5, + "INT" + ], + [ + 36, + 9, + 6, + 8, + 6, + "FLOAT" + ], + [ + 37, + 9, + 2, + 7, + 1, + "STRING" + ], + [ + 38, + 9, + 3, + 6, + 1, + "STRING" + ], + [ + 39, + 6, + 0, + 8, + 2, + "CONDITIONING" ] ], "groups": [],