{
  "last_node_id": 10,
  "last_link_id": 9,
  "nodes": [
    {
      "id": 4,
      "type": "CheckpointLoaderSimple",
      "pos": [80, 320],
      "size": [315, 98],
      "flags": {},
      "order": 0,
      "mode": 0,
      "inputs": [],
      "outputs": [
        { "name": "MODEL", "type": "MODEL", "links": [1], "slot_index": 0 },
        { "name": "CLIP", "type": "CLIP", "links": [5, 6], "slot_index": 1 },
        { "name": "VAE", "type": "VAE", "links": [8], "slot_index": 2 }
      ],
      "properties": { "Node name for S&R": "CheckpointLoaderSimple" },
      "widgets_values": ["sd_xl_base_1.0.safetensors"]
    },
    {
      "id": 6,
      "type": "CLIPTextEncode",
      "pos": [450, 140],
      "size": [420, 180],
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [
        { "name": "clip", "type": "CLIP", "link": 5 }
      ],
      "outputs": [
        { "name": "CONDITIONING", "type": "CONDITIONING", "links": [2], "slot_index": 0 }
      ],
      "properties": { "Node name for S&R": "CLIPTextEncode" },
      "widgets_values": ["commercial product photography, a skincare bottle on wet dark stone, water droplets, soft strip light, 85mm macro lens, clean grey background, luxury product ad, high detail"]
    },
    {
      "id": 7,
      "type": "CLIPTextEncode",
      "pos": [450, 360],
      "size": [420, 180],
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [
        { "name": "clip", "type": "CLIP", "link": 6 }
      ],
      "outputs": [
        { "name": "CONDITIONING", "type": "CONDITIONING", "links": [3], "slot_index": 0 }
      ],
      "properties": { "Node name for S&R": "CLIPTextEncode" },
      "widgets_values": ["text, watermark, extra fingers, blurry, low quality, distorted product"]
    },
    {
      "id": 5,
      "type": "EmptyLatentImage",
      "pos": [450, 580],
      "size": [315, 106],
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [],
      "outputs": [
        { "name": "LATENT", "type": "LATENT", "links": [4], "slot_index": 0 }
      ],
      "properties": { "Node name for S&R": "EmptyLatentImage" },
      "widgets_values": [1024, 1024, 1]
    },
    {
      "id": 3,
      "type": "KSampler",
      "pos": [910, 300],
      "size": [315, 262],
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
        { "name": "model", "type": "MODEL", "link": 1 },
        { "name": "positive", "type": "CONDITIONING", "link": 2 },
        { "name": "negative", "type": "CONDITIONING", "link": 3 },
        { "name": "latent_image", "type": "LATENT", "link": 4 }
      ],
      "outputs": [
        { "name": "LATENT", "type": "LATENT", "links": [7], "slot_index": 0 }
      ],
      "properties": { "Node name for S&R": "KSampler" },
      "widgets_values": [20261112, "fixed", 28, 6.5, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 8,
      "type": "VAEDecode",
      "pos": [1260, 300],
      "size": [210, 46],
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [
        { "name": "samples", "type": "LATENT", "link": 7 },
        { "name": "vae", "type": "VAE", "link": 8 }
      ],
      "outputs": [
        { "name": "IMAGE", "type": "IMAGE", "links": [9], "slot_index": 0 }
      ],
      "properties": { "Node name for S&R": "VAEDecode" },
      "widgets_values": []
    },
    {
      "id": 9,
      "type": "SaveImage",
      "pos": [1510, 300],
      "size": [315, 270],
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [
        { "name": "images", "type": "IMAGE", "link": 9 }
      ],
      "outputs": [],
      "properties": { "Node name for S&R": "SaveImage" },
      "widgets_values": ["DrawLab_product"]
    },
    {
      "id": 10,
      "type": "Note",
      "pos": [80, 120],
      "size": [430, 150],
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": { "Node name for S&R": "Note" },
      "widgets_values": ["DrawLab 示例工作流：SDXL 产品图基础链路。\n\n使用方法：把本文件直接拖入 ComfyUI 画布，在 CheckpointLoaderSimple 里选择你本机已有的 SDXL 底模，然后点击 Queue Prompt。\n\n这是一条可运行的基础模板，可在此基础上继续加 ControlNet、IP-Adapter 或高清放大节点。"]
    }
  ],
  "links": [
    [1, 4, 0, 3, 0, "MODEL"],
    [2, 6, 0, 3, 1, "CONDITIONING"],
    [3, 7, 0, 3, 2, "CONDITIONING"],
    [4, 5, 0, 3, 3, "LATENT"],
    [5, 4, 1, 6, 0, "CLIP"],
    [6, 4, 1, 7, 0, "CLIP"],
    [7, 3, 0, 8, 0, "LATENT"],
    [8, 4, 2, 8, 1, "VAE"],
    [9, 8, 0, 9, 0, "IMAGE"]
  ],
  "groups": [],
  "config": {},
  "extra": {},
  "version": 0.4
}
