{
  "last_node_id": 15,
  "last_link_id": 24,
  "nodes": [
    {
      "id": 1,
      "type": "CheckpointLoaderSimple",
      "pos": [50, 100],
      "size": {"0": 380, "1": 100},
      "flags": {},
      "order": 0,
      "mode": 0,
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [1],
          "slot_index": 0
        },
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [2],
          "slot_index": 1
        },
        {
          "name": "VAE",
          "type": "VAE",
          "links": [3],
          "slot_index": 2
        }
      ],
      "properties": {
        "Node name for S&R": "CheckpointLoaderSimple"
      },
      "widgets_values": ["sd_xl_base_1.0.safetensors"],
      "title": "Base Checkpoint Loader"
    },
    {
      "id": 2,
      "type": "LoraLoader",
      "pos": [480, 100],
      "size": {"0": 380, "1": 130},
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 1
        },
        {
          "name": "clip",
          "type": "CLIP",
          "link": 2
        }
      ],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [4],
          "slot_index": 0
        },
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [5],
          "slot_index": 1
        }
      ],
      "properties": {
        "Node name for S&R": "LoraLoader"
      },
      "widgets_values": ["add-detail-xl.safetensors", 0.8, 0.8],
      "title": "LoRA 1 (Primary Style)"
    },
    {
      "id": 3,
      "type": "LoraLoader",
      "pos": [920, 100],
      "size": {"0": 380, "1": 130},
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 4
        },
        {
          "name": "clip",
          "type": "CLIP",
          "link": 5
        }
      ],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [6],
          "slot_index": 0
        },
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [7],
          "slot_index": 1
        }
      ],
      "properties": {
        "Node name for S&R": "LoraLoader"
      },
      "widgets_values": ["add-detail-xl.safetensors", 0.5, 0.5],
      "title": "LoRA 2 (Secondary Style)"
    },
    {
      "id": 4,
      "type": "LoraLoader",
      "pos": [1360, 100],
      "size": {"0": 380, "1": 130},
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 6
        },
        {
          "name": "clip",
          "type": "CLIP",
          "link": 7
        }
      ],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [8],
          "slot_index": 0
        },
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [9, 10],
          "slot_index": 1
        }
      ],
      "properties": {
        "Node name for S&R": "LoraLoader"
      },
      "widgets_values": ["add-detail-xl.safetensors", 0.3, 0.3],
      "title": "LoRA 3 (Accent/Detail)"
    },
    {
      "id": 5,
      "type": "CLIPTextEncode",
      "pos": [50, 280],
      "size": {"0": 450, "1": 250},
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 9
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [11],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": ["A beautiful scenic landscape with mountains, vibrant colors, detailed, high quality, masterpiece, best quality, 8k"],
      "title": "API Positive Prompt"
    },
    {
      "id": 6,
      "type": "CLIPTextEncode",
      "pos": [50, 580],
      "size": {"0": 450, "1": 150},
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 10
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [12],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": ["(worst quality, low quality:1.4), bad anatomy, deformed, blurry, watermark, text"],
      "title": "Negative Prompt"
    },
    {
      "id": 7,
      "type": "EmptyLatentImage",
      "pos": [560, 580],
      "size": {"0": 315, "1": 110},
      "flags": {},
      "order": 6,
      "mode": 0,
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [13],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "EmptyLatentImage"
      },
      "widgets_values": [1024, 1024, 1],
      "title": "Latent Image (SDXL Resolution)"
    },
    {
      "id": 8,
      "type": "KSampler",
      "pos": [920, 280],
      "size": {"0": 350, "1": 290},
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 8
        },
        {
          "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",
        30,
        7.0,
        "dpmpp_2m_sde",
        "karras",
        1.0
      ],
      "title": "KSampler (Standard Settings)"
    },
    {
      "id": 9,
      "type": "VAEDecode",
      "pos": [1320, 280],
      "size": {"0": 210, "1": 50},
      "flags": {},
      "order": 8,
      "mode": 0,
      "inputs": [
        {
          "name": "samples",
          "type": "LATENT",
          "link": 14
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 3
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [15],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "VAEDecode"
      },
      "title": "VAE Decode"
    },
    {
      "id": 10,
      "type": "SaveImage",
      "pos": [1580, 280],
      "size": {"0": 320, "1": 290},
      "flags": {},
      "order": 9,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 15
        }
      ],
      "properties": {
        "Node name for S&R": "SaveImage"
      },
      "widgets_values": ["lora_fusion"],
      "title": "API Output Image"
    }
  ],
  "links": [
    [1, 1, 0, 2, 0, "MODEL"],
    [2, 1, 1, 2, 1, "CLIP"],
    [3, 1, 2, 9, 1, "VAE"],
    [4, 2, 0, 3, 0, "MODEL"],
    [5, 2, 1, 3, 1, "CLIP"],
    [6, 3, 0, 4, 0, "MODEL"],
    [7, 3, 1, 4, 1, "CLIP"],
    [8, 4, 0, 8, 0, "MODEL"],
    [9, 4, 1, 5, 0, "CLIP"],
    [10, 4, 1, 6, 0, "CLIP"],
    [11, 5, 0, 8, 1, "CONDITIONING"],
    [12, 6, 0, 8, 2, "CONDITIONING"],
    [13, 7, 0, 8, 3, "LATENT"],
    [14, 8, 0, 9, 0, "LATENT"],
    [15, 9, 0, 10, 0, "IMAGE"]
  ],
  "groups": [],
  "config": {},
  "extra": {
    "workflow_info": {
      "name": "LoRA Fusion Multi-Stack Text-to-Image",
      "version": "1.0",
      "description": "Production workflow for combining multiple LoRA models with adjustable weights. Stack up to 3 LoRAs with fine-tuned strength control for style mixing and enhancement. Works with any SDXL checkpoint including NSFW models.",
      "category": "text-to-image",
      "features": [
        "Triple LoRA stacking with independent weight control",
        "Compatible with any SDXL checkpoint (SFW/NSFW)",
        "Hierarchical strength: Primary (0.7-1.0), Secondary (0.4-0.7), Accent (0.2-0.5)",
        "Supports style LoRAs, detail enhancers, and character LoRAs",
        "Easy to disable individual LoRAs by setting weights to 0.0"
      ],
      "recommended_usage": {
        "lora_1_strength": "0.7-1.0 (primary style influence)",
        "lora_2_strength": "0.4-0.7 (secondary style blend)",
        "lora_3_strength": "0.2-0.5 (subtle accent/details)",
        "disable_lora": "Set both model and clip weights to 0.0"
      },
      "examples": [
        {
          "use_case": "Portrait Enhancement",
          "lora_1": "Detail enhancer (0.8)",
          "lora_2": "Skin texture LoRA (0.5)",
          "lora_3": "Lighting style (0.3)"
        },
        {
          "use_case": "Artistic Style Fusion",
          "lora_1": "Primary art style (1.0)",
          "lora_2": "Secondary style blend (0.6)",
          "lora_3": "Color grading (0.4)"
        },
        {
          "use_case": "Character + Style",
          "lora_1": "Character LoRA (0.9)",
          "lora_2": "Pose/anatomy enhancer (0.5)",
          "lora_3": "Background style (0.3)"
        }
      ],
      "tags": ["lora", "multi-stack", "fusion", "style-mixing", "enhancement", "sdxl"]
    }
  },
  "version": 0.4
}
