ComfyUI Workflow

View and download your workflow JSON

{
  "last_node_id": 15,
  "last_link_id": 20,
  "nodes": [
    {
      "id": 1,
      "type": "CheckpointLoaderSimple",
      "pos": [
        50,
        50
      ],
      "size": {
        "0": 315,
        "1": 98
      },
      "flags": {},
      "order": 0,
      "mode": 0,
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            1
          ]
        },
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [
            2,
            3
          ]
        },
        {
          "name": "VAE",
          "type": "VAE",
          "links": [
            8
          ]
        }
      ],
      "properties": {
        "Node name for S&R": "CheckpointLoaderSimple"
      },
      "widgets_values": [
        "v1-5-pruned-emaonly.safetensors"
      ]
    },
    {
      "id": 2,
      "type": "CLIPTextEncode",
      "pos": [
        400,
        50
      ],
      "size": {
        "0": 400,
        "1": 180
      },
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 2
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            4
          ],
          "slot_index": 0
        }
      ],
      "title": "CLIP Text Encode (Positive)",
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": [
        "beautiful landscape, high quality, detailed, 8k"
      ]
    },
    {
      "id": 3,
      "type": "CLIPTextEncode",
      "pos": [
        400,
        250
      ],
      "size": {
        "0": 400,
        "1": 180
      },
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 3
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            5
          ],
          "slot_index": 0
        }
      ],
      "title": "CLIP Text Encode (Negative)",
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": [
        "ugly, blurry, low quality, distorted"
      ]
    },
    {
      "id": 4,
      "type": "KSampler",
      "pos": [
        850,
        50
      ],
      "size": {
        "0": 315,
        "1": 262
      },
      "flags": {},
      "order": 8,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 1
        },
        {
          "name": "positive",
          "type": "CONDITIONING",
          "link": 4
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "link": 5
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 7
        }
      ],
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            9
          ],
          "slot_index": 0
        }
      ],
      "title": "KSampler",
      "properties": {
        "Node name for S&R": "KSampler"
      },
      "widgets_values": [
        123456789,
        20,
        8,
        "euler",
        "normal",
        0.7
      ]
    },
    {
      "id": 5,
      "type": "VAEDecode",
      "pos": [
        1200,
        50
      ],
      "size": {
        "0": 210,
        "1": 46
      },
      "flags": {},
      "order": 9,
      "mode": 0,
      "inputs": [
        {
          "name": "samples",
          "type": "LATENT",
          "link": 9
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 8
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            10,
            11
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "VAEDecode"
      }
    },
    {
      "id": 6,
      "type": "SaveImage",
      "pos": [
        1450,
        50
      ],
      "size": {
        "0": 315,
        "1": 270
      },
      "flags": {},
      "order": 10,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 10
        }
      ],
      "properties": {
        "Node name for S&R": "SaveImage"
      },
      "widgets_values": [
        "stable_diffusion_output"
      ]
    },
    {
      "id": 7,
      "type": "PreviewImage",
      "pos": [
        1450,
        350
      ],
      "size": {
        "0": 315,
        "1": 270
      },
      "flags": {},
      "order": 11,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 11
        }
      ],
      "properties": {
        "Node name for S&R": "PreviewImage"
      }
    },
    {
      "id": 8,
      "type": "EmptyLatentImage",
      "pos": [
        400,
        500
      ],
      "size": {
        "0": 315,
        "1": 106
      },
      "flags": {},
      "order": 4,
      "mode": 0,
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            7
          ],
          "slot_index": 0
        }
      ],
      "title": "Empty Latent Image",
      "properties": {
        "Node name for S&R": "EmptyLatentImage"
      },
      "widgets_values": [
        512,
        512,
        1
      ]
    },
    {
      "id": 9,
      "type": "KSampler",
      "pos": [
        850,
        350
      ],
      "size": {
        "0": 315,
        "1": 262
      },
      "flags": {},
      "order": 8,
      "mode": 1,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 1
        },
        {
          "name": "positive",
          "type": "CONDITIONING",
          "link": 4
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "link": 5
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 7
        }
      ],
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            9
          ],
          "slot_index": 0
        }
      ],
      "title": "KSampler (Alternative)",
      "properties": {
        "Node name for S&R": "KSampler"
      },
      "widgets_values": [
        123456789,
        25,
        10,
        "dpm_2",
        "normal",
        0.7
      ]
    },
    {
      "id": 10,
      "type": "ControlNetLoader",
      "pos": [
        50,
        200
      ],
      "size": {
        "0": 315,
        "1": 58
      },
      "flags": {},
      "order": 1,
      "mode": 0,
      "outputs": [
        {
          "name": "CONTROL_NET",
          "type": "CONTROL_NET",
          "links": [
            12
          ],
          "slot_index": 0
        }
      ],
      "title": "ControlNet Loader",
      "properties": {
        "Node name for S&R": "ControlNetLoader"
      },
      "widgets_values": [
        "canny_controlnet_v1-1_sd15.safetensors"
      ]
    },
    {
      "id": 11,
      "type": "Canny",
      "pos": [
        400,
        400
      ],
      "size": {
        "0": 315,
        "1": 180
      },
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 13
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            14
          ],
          "slot_index": 0
        }
      ],
      "title": "Canny Edge Detection",
      "properties": {
        "Node name for S&R": "Canny"
      },
      "widgets_values": [
        100,
        200,
        512
      ]
    },
    {
      "id": 12,
      "type": "ControlNetApply",
      "pos": [
        750,
        300
      ],
      "size": {
        "0": 317,
        "1": 98
      },
      "flags": {},
      "order": 12,
      "mode": 0,
      "inputs": [
        {
          "name": "conditioning",
          "type": "CONDITIONING",
          "link": 15
        },
        {
          "name": "control_net",
          "type": "CONTROL_NET",
          "link": 12
        },
        {
          "name": "image",
          "type": "IMAGE",
          "link": 14
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            16,
            17
          ],
          "slot_index": 0
        }
      ],
      "title": "ControlNet Apply",
      "properties": {
        "Node name for S&R": "ControlNetApply"
      }
    },
    {
      "id": 13,
      "type": "LoadImage",
      "pos": [
        50,
        400
      ],
      "size": {
        "0": 315,
        "1": 314
      },
      "flags": {},
      "order": 2,
      "mode": 0,
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            13
          ],
          "slot_index": 0
        },
        {
          "name": "MASK",
          "type": "MASK",
          "links": null,
          "slot_index": 1
        }
      ],
      "title": "Load Image",
      "properties": {
        "Node name for S&R": "LoadImage"
      },
      "widgets_values": [
        "example.png"
      ]
    },
    {
      "id": 14,
      "type": "CLIPTextEncode",
      "pos": [
        400,
        600
      ],
      "size": {
        "0": 400,
        "1": 180
      },
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 2
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            18
          ],
          "slot_index": 0
        }
      ],
      "title": "CLIP Text Encode (ControlNet)",
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": [
        "edge detection reference"
      ]
    },
    {
      "id": 15,
      "type": "KSampler",
      "pos": [
        1200,
        200
      ],
      "size": {
        "0": 315,
        "1": 262
      },
      "flags": {},
      "order": 8,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 1
        },
        {
          "name": "positive",
          "type": "CONDITIONING",
          "link": 16
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "link": 5
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 7
        }
      ],
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            19
          ],
          "slot_index": 0
        }
      ],
      "title": "KSampler (ControlNet)",
      "properties": {
        "Node name for S&R": "KSampler"
      },
      "widgets_values": [
        123456789,
        20,
        7,
        "euler",
        "normal",
        0.8
      ]
    }
  ],
  "links": [
    [
      1,
      1,
      0,
      4,
      0,
      "MODEL"
    ],
    [
      2,
      1,
      1,
      2,
      0,
      "CLIP"
    ],
    [
      3,
      1,
      1,
      3,
      0,
      "CLIP"
    ],
    [
      4,
      2,
      0,
      4,
      1,
      "CONDITIONING"
    ],
    [
      5,
      3,
      0,
      4,
      2,
      "CONDITIONING"
    ],
    [
      7,
      8,
      0,
      4,
      3,
      "LATENT"
    ],
    [
      8,
      1,
      2,
      5,
      1,
      "VAE"
    ],
    [
      9,
      4,
      0,
      5,
      0,
      "LATENT"
    ],
    [
      10,
      5,
      0,
      6,
      0,
      "IMAGE"
    ],
    [
      11,
      5,
      0,
      7,
      0,
      "IMAGE"
    ],
    [
      12,
      10,
      0,
      12,
      1,
      "CONTROL_NET"
    ],
    [
      13,
      13,
      0,
      11,
      0,
      "IMAGE"
    ],
    [
      14,
      11,
      0,
      12,
      2,
      "IMAGE"
    ],
    [
      15,
      14,
      0,
      12,
      0,
      "CONDITIONING"
    ],
    [
      16,
      12,
      0,
      15,
      1,
      "CONDITIONING"
    ],
    [
      17,
      12,
      0,
      4,
      1,
      "CONDITIONING"
    ],
    [
      18,
      14,
      0,
      3,
      0,
      "CLIP"
    ],
    [
      19,
      15,
      0,
      5,
      0,
      "LATENT"
    ]
  ],
  "groups": [],
  "config": {},
  "extra": {},
  "version": 0.4
}