{
  "config": {},
  "definitions": {
    "subgraphs": [
      {
        "config": {},
        "extra": {
          "workflowRendererVersion": "LG"
        },
        "groups": [
          {
            "bounding": [
              -180,
              -860,
              405,
              461.6
            ],
            "color": "#3f789e",
            "flags": {},
            "font_size": 24,
            "id": 1,
            "title": "Step 1 - Load Models"
          },
          {
            "bounding": [
              -180,
              -370,
              400,
              170
            ],
            "color": "#3f789e",
            "flags": {},
            "font_size": 24,
            "id": 2,
            "title": "Step 2 - Duration"
          },
          {
            "bounding": [
              260,
              -860,
              640,
              960
            ],
            "color": "#3f789e",
            "flags": {},
            "font_size": 24,
            "id": 3,
            "title": "Step3 - Prompt"
          }
        ],
        "id": "7aaae2b3-4151-4452-854b-653cf02fb752",
        "inputNode": {
          "bounding": [
            -660,
            -560,
            167.458984375,
            340
          ],
          "id": -10
        },
        "inputs": [
          {
            "id": "ebc79d17-2e65-4e0f-855a-c9f2466a5fbf",
            "linkIds": [
              264
            ],
            "name": "tags",
            "pos": [
              -512.541015625,
              -540
            ],
            "type": "STRING"
          },
          {
            "id": "230afdb4-a647-4fb7-a68c-a2204fd5d570",
            "linkIds": [
              265
            ],
            "name": "lyrics",
            "pos": [
              -512.541015625,
              -520
            ],
            "type": "STRING"
          },
          {
            "id": "efdcbb48-231c-4757-b343-4458c011a283",
            "linkIds": [
              266
            ],
            "name": "timesignature",
            "pos": [
              -512.541015625,
              -500
            ],
            "type": "COMBO"
          },
          {
            "id": "811579c1-2979-4721-a1e1-7d9352616e7b",
            "linkIds": [
              267
            ],
            "name": "language",
            "pos": [
              -512.541015625,
              -480
            ],
            "type": "COMBO"
          },
          {
            "id": "76a68b0d-7a5f-43dc-873d-d78adf32895f",
            "linkIds": [
              268
            ],
            "name": "keyscale",
            "pos": [
              -512.541015625,
              -460
            ],
            "type": "COMBO"
          },
          {
            "id": "11bb3297-272d-4c56-873a-2c974581e838",
            "linkIds": [
              269
            ],
            "name": "generate_audio_codes",
            "pos": [
              -512.541015625,
              -440
            ],
            "type": "BOOLEAN"
          },
          {
            "id": "e5a30400-a8b0-422a-a0f3-21739727ab03",
            "linkIds": [
              270
            ],
            "name": "cfg_scale",
            "pos": [
              -512.541015625,
              -420
            ],
            "type": "FLOAT"
          },
          {
            "id": "9f817bf3-3090-4dd7-b70c-cc08bb08b004",
            "linkIds": [
              271
            ],
            "name": "temperature",
            "pos": [
              -512.541015625,
              -400
            ],
            "type": "FLOAT"
          },
          {
            "id": "842f3b6f-8a73-4720-8fb4-d8022d5125c9",
            "linkIds": [
              272
            ],
            "name": "top_p",
            "pos": [
              -512.541015625,
              -380
            ],
            "type": "FLOAT"
          },
          {
            "id": "9b8db9f1-a978-4cc0-9125-f478edff4b60",
            "linkIds": [
              273
            ],
            "name": "top_k",
            "pos": [
              -512.541015625,
              -360
            ],
            "type": "INT"
          },
          {
            "id": "39d3ae1e-f9ca-43f3-b99b-eeaddb6c4ab1",
            "linkIds": [
              274
            ],
            "name": "unet_name",
            "pos": [
              -512.541015625,
              -340
            ],
            "type": "COMBO"
          },
          {
            "id": "8598efd5-5daf-4ca0-bbd8-5c83307b8e02",
            "linkIds": [
              275
            ],
            "name": "clip_name1",
            "pos": [
              -512.541015625,
              -320
            ],
            "type": "COMBO"
          },
          {
            "id": "a2920a60-9995-4256-bc11-5a657a1bed2f",
            "linkIds": [
              276
            ],
            "name": "clip_name2",
            "pos": [
              -512.541015625,
              -300
            ],
            "type": "COMBO"
          },
          {
            "id": "d2392b17-5001-4b6f-96d4-69257ce17410",
            "linkIds": [
              277
            ],
            "name": "vae_name",
            "pos": [
              -512.541015625,
              -280
            ],
            "type": "COMBO"
          },
          {
            "id": "91a37ca5-e0d1-42c5-8248-419b850661a0",
            "label": "duration",
            "linkIds": [
              284
            ],
            "name": "value",
            "pos": [
              -512.541015625,
              -260
            ],
            "type": "FLOAT"
          }
        ],
        "links": [
          {
            "id": 255,
            "origin_id": 94,
            "origin_slot": 0,
            "target_id": 47,
            "target_slot": 0,
            "type": "CONDITIONING"
          },
          {
            "id": 175,
            "origin_id": 78,
            "origin_slot": 0,
            "target_id": 3,
            "target_slot": 0,
            "type": "MODEL"
          },
          {
            "id": 254,
            "origin_id": 94,
            "origin_slot": 0,
            "target_id": 3,
            "target_slot": 1,
            "type": "CONDITIONING"
          },
          {
            "id": 119,
            "origin_id": 47,
            "origin_slot": 0,
            "target_id": 3,
            "target_slot": 2,
            "type": "CONDITIONING"
          },
          {
            "id": 249,
            "origin_id": 98,
            "origin_slot": 0,
            "target_id": 3,
            "target_slot": 3,
            "type": "LATENT"
          },
          {
            "id": 258,
            "origin_id": 102,
            "origin_slot": 0,
            "target_id": 3,
            "target_slot": 4,
            "type": "INT"
          },
          {
            "id": 260,
            "origin_id": 104,
            "origin_slot": 0,
            "target_id": 78,
            "target_slot": 0,
            "type": "MODEL"
          },
          {
            "id": 256,
            "origin_id": 3,
            "origin_slot": 0,
            "target_id": 18,
            "target_slot": 0,
            "type": "LATENT"
          },
          {
            "id": 262,
            "origin_id": 106,
            "origin_slot": 0,
            "target_id": 18,
            "target_slot": 1,
            "type": "VAE"
          },
          {
            "id": 261,
            "origin_id": 105,
            "origin_slot": 0,
            "target_id": 94,
            "target_slot": 0,
            "type": "CLIP"
          },
          {
            "id": 257,
            "origin_id": 102,
            "origin_slot": 0,
            "target_id": 94,
            "target_slot": 3,
            "type": "INT"
          },
          {
            "id": 263,
            "origin_id": 18,
            "origin_slot": 0,
            "target_id": -20,
            "target_slot": 0,
            "type": "AUDIO"
          },
          {
            "id": 264,
            "origin_id": -10,
            "origin_slot": 0,
            "target_id": 94,
            "target_slot": 1,
            "type": "STRING"
          },
          {
            "id": 265,
            "origin_id": -10,
            "origin_slot": 1,
            "target_id": 94,
            "target_slot": 2,
            "type": "STRING"
          },
          {
            "id": 266,
            "origin_id": -10,
            "origin_slot": 2,
            "target_id": 94,
            "target_slot": 5,
            "type": "COMBO"
          },
          {
            "id": 267,
            "origin_id": -10,
            "origin_slot": 3,
            "target_id": 94,
            "target_slot": 6,
            "type": "COMBO"
          },
          {
            "id": 268,
            "origin_id": -10,
            "origin_slot": 4,
            "target_id": 94,
            "target_slot": 7,
            "type": "COMBO"
          },
          {
            "id": 269,
            "origin_id": -10,
            "origin_slot": 5,
            "target_id": 94,
            "target_slot": 8,
            "type": "BOOLEAN"
          },
          {
            "id": 270,
            "origin_id": -10,
            "origin_slot": 6,
            "target_id": 94,
            "target_slot": 9,
            "type": "FLOAT"
          },
          {
            "id": 271,
            "origin_id": -10,
            "origin_slot": 7,
            "target_id": 94,
            "target_slot": 10,
            "type": "FLOAT"
          },
          {
            "id": 272,
            "origin_id": -10,
            "origin_slot": 8,
            "target_id": 94,
            "target_slot": 11,
            "type": "FLOAT"
          },
          {
            "id": 273,
            "origin_id": -10,
            "origin_slot": 9,
            "target_id": 94,
            "target_slot": 12,
            "type": "INT"
          },
          {
            "id": 274,
            "origin_id": -10,
            "origin_slot": 10,
            "target_id": 104,
            "target_slot": 0,
            "type": "COMBO"
          },
          {
            "id": 275,
            "origin_id": -10,
            "origin_slot": 11,
            "target_id": 105,
            "target_slot": 0,
            "type": "COMBO"
          },
          {
            "id": 276,
            "origin_id": -10,
            "origin_slot": 12,
            "target_id": 105,
            "target_slot": 1,
            "type": "COMBO"
          },
          {
            "id": 277,
            "origin_id": -10,
            "origin_slot": 13,
            "target_id": 106,
            "target_slot": 0,
            "type": "COMBO"
          },
          {
            "id": 279,
            "origin_id": 110,
            "origin_slot": 0,
            "target_id": 98,
            "target_slot": 0,
            "type": "FLOAT"
          },
          {
            "id": 280,
            "origin_id": 110,
            "origin_slot": 0,
            "target_id": 94,
            "target_slot": 4,
            "type": "FLOAT"
          },
          {
            "id": 284,
            "origin_id": -10,
            "origin_slot": 14,
            "target_id": 110,
            "target_slot": 0,
            "type": "FLOAT"
          }
        ],
        "name": "Text to Audio (ACE-Step 1.5)",
        "nodes": [
          {
            "flags": {},
            "id": 105,
            "inputs": [
              {
                "link": 275,
                "localized_name": "clip_name1",
                "name": "clip_name1",
                "type": "COMBO",
                "widget": {
                  "name": "clip_name1"
                }
              },
              {
                "link": 276,
                "localized_name": "clip_name2",
                "name": "clip_name2",
                "type": "COMBO",
                "widget": {
                  "name": "clip_name2"
                }
              }
            ],
            "mode": 0,
            "order": 8,
            "outputs": [
              {
                "links": [
                  261
                ],
                "localized_name": "CLIP",
                "name": "CLIP",
                "type": "CLIP"
              }
            ],
            "pos": [
              -165,
              -660
            ],
            "properties": {
              "Node name for S&R": "DualCLIPLoader",
              "cnr_id": "comfy-core",
              "enableTabs": false,
              "hasSecondTab": false,
              "models": [
                {
                  "directory": "text_encoders",
                  "name": "qwen_0.6b_ace15.safetensors",
                  "url": "https://huggingface.co/Comfy-Org/ace_step_1.5_ComfyUI_files/resolve/main/split_files/text_encoders/qwen_0.6b_ace15.safetensors"
                },
                {
                  "directory": "text_encoders",
                  "name": "qwen_4b_ace15.safetensors",
                  "url": "https://huggingface.co/Comfy-Org/ace_step_1.5_ComfyUI_files/resolve/main/split_files/text_encoders/qwen_4b_ace15.safetensors"
                }
              ],
              "secondTabOffset": 80,
              "secondTabText": "Send Back",
              "secondTabWidth": 65,
              "tabWidth": 65,
              "tabXOffset": 10,
              "ver": "0.11.1"
            },
            "size": [
              380,
              130
            ],
            "type": "DualCLIPLoader",
            "widgets_values": [
              "qwen_0.6b_ace15.safetensors",
              "qwen_4b_ace15.safetensors",
              "ace",
              "default"
            ]
          },
          {
            "flags": {},
            "id": 106,
            "inputs": [
              {
                "link": 277,
                "localized_name": "vae_name",
                "name": "vae_name",
                "type": "COMBO",
                "widget": {
                  "name": "vae_name"
                }
              }
            ],
            "mode": 0,
            "order": 9,
            "outputs": [
              {
                "links": [
                  262
                ],
                "localized_name": "VAE",
                "name": "VAE",
                "type": "VAE"
              }
            ],
            "pos": [
              -165,
              -470
            ],
            "properties": {
              "Node name for S&R": "VAELoader",
              "cnr_id": "comfy-core",
              "enableTabs": false,
              "hasSecondTab": false,
              "models": [
                {
                  "directory": "vae",
                  "name": "ace_1.5_vae.safetensors",
                  "url": "https://huggingface.co/Comfy-Org/ace_step_1.5_ComfyUI_files/resolve/main/split_files/vae/ace_1.5_vae.safetensors"
                }
              ],
              "secondTabOffset": 80,
              "secondTabText": "Send Back",
              "secondTabWidth": 65,
              "tabWidth": 65,
              "tabXOffset": 10,
              "ver": "0.11.1"
            },
            "size": [
              380,
              58
            ],
            "type": "VAELoader",
            "widgets_values": [
              "ace_1.5_vae.safetensors"
            ]
          },
          {
            "flags": {},
            "id": 98,
            "inputs": [
              {
                "link": 279,
                "localized_name": "seconds",
                "name": "seconds",
                "type": "FLOAT",
                "widget": {
                  "name": "seconds"
                }
              }
            ],
            "mode": 0,
            "order": 6,
            "outputs": [
              {
                "links": [
                  249
                ],
                "localized_name": "LATENT",
                "name": "LATENT",
                "type": "LATENT"
              }
            ],
            "pos": [
              -150,
              10
            ],
            "properties": {
              "Node name for S&R": "EmptyAceStep1.5LatentAudio",
              "cnr_id": "comfy-core",
              "enableTabs": false,
              "hasSecondTab": false,
              "secondTabOffset": 80,
              "secondTabText": "Send Back",
              "secondTabWidth": 65,
              "tabWidth": 65,
              "tabXOffset": 10,
              "ver": "0.11.1"
            },
            "size": [
              314.90390625,
              82
            ],
            "type": "EmptyAceStep1.5LatentAudio",
            "widgets_values": [
              120,
              1
            ]
          },
          {
            "flags": {},
            "id": 47,
            "inputs": [
              {
                "link": 255,
                "localized_name": "conditioning",
                "name": "conditioning",
                "type": "CONDITIONING"
              }
            ],
            "mode": 0,
            "order": 3,
            "outputs": [
              {
                "links": [
                  119
                ],
                "localized_name": "CONDITIONING",
                "name": "CONDITIONING",
                "type": "CONDITIONING"
              }
            ],
            "pos": [
              670,
              50
            ],
            "properties": {
              "Node name for S&R": "ConditioningZeroOut",
              "cnr_id": "comfy-core",
              "enableTabs": false,
              "hasSecondTab": false,
              "secondTabOffset": 80,
              "secondTabText": "Send Back",
              "secondTabWidth": 65,
              "tabWidth": 65,
              "tabXOffset": 10,
              "ver": "0.11.1"
            },
            "size": [
              204.75,
              26
            ],
            "type": "ConditioningZeroOut",
            "widgets_values": []
          },
          {
            "flags": {},
            "id": 3,
            "inputs": [
              {
                "link": 175,
                "localized_name": "model",
                "name": "model",
                "type": "MODEL"
              },
              {
                "link": 254,
                "localized_name": "positive",
                "name": "positive",
                "type": "CONDITIONING"
              },
              {
                "link": 119,
                "localized_name": "negative",
                "name": "negative",
                "type": "CONDITIONING"
              },
              {
                "link": 249,
                "localized_name": "latent_image",
                "name": "latent_image",
                "type": "LATENT"
              },
              {
                "link": 258,
                "localized_name": "seed",
                "name": "seed",
                "type": "INT",
                "widget": {
                  "name": "seed"
                }
              }
            ],
            "mode": 0,
            "order": 1,
            "outputs": [
              {
                "links": [
                  256
                ],
                "localized_name": "LATENT",
                "name": "LATENT",
                "slot_index": 0,
                "type": "LATENT"
              }
            ],
            "pos": [
              930,
              -680
            ],
            "properties": {
              "Node name for S&R": "KSampler",
              "cnr_id": "comfy-core",
              "enableTabs": false,
              "hasSecondTab": false,
              "secondTabOffset": 80,
              "secondTabText": "Send Back",
              "secondTabWidth": 65,
              "tabWidth": 65,
              "tabXOffset": 10,
              "ver": "0.11.1"
            },
            "size": [
              329.39477481889753,
              262
            ],
            "type": "KSampler",
            "widgets_values": [
              27660246420877,
              "fixed",
              8,
              1,
              "euler",
              "simple",
              1
            ]
          },
          {
            "flags": {},
            "id": 78,
            "inputs": [
              {
                "link": 260,
                "localized_name": "model",
                "name": "model",
                "type": "MODEL"
              }
            ],
            "mode": 0,
            "order": 4,
            "outputs": [
              {
                "links": [
                  175
                ],
                "localized_name": "MODEL",
                "name": "MODEL",
                "type": "MODEL"
              }
            ],
            "pos": [
              930,
              -810
            ],
            "properties": {
              "Node name for S&R": "ModelSamplingAuraFlow",
              "cnr_id": "comfy-core",
              "enableTabs": false,
              "hasSecondTab": false,
              "secondTabOffset": 80,
              "secondTabText": "Send Back",
              "secondTabWidth": 65,
              "tabWidth": 65,
              "tabXOffset": 10,
              "ver": "0.11.1"
            },
            "size": [
              329.39477481889753,
              60
            ],
            "type": "ModelSamplingAuraFlow",
            "widgets_values": [
              3
            ]
          },
          {
            "flags": {},
            "id": 18,
            "inputs": [
              {
                "link": 256,
                "localized_name": "samples",
                "name": "samples",
                "type": "LATENT"
              },
              {
                "link": 262,
                "localized_name": "vae",
                "name": "vae",
                "type": "VAE"
              }
            ],
            "mode": 0,
            "order": 2,
            "outputs": [
              {
                "links": [
                  263
                ],
                "localized_name": "AUDIO",
                "name": "AUDIO",
                "type": "AUDIO"
              }
            ],
            "pos": [
              1280,
              -800
            ],
            "properties": {
              "Node name for S&R": "VAEDecodeAudio",
              "cnr_id": "comfy-core",
              "enableTabs": false,
              "hasSecondTab": false,
              "secondTabOffset": 80,
              "secondTabText": "Send Back",
              "secondTabWidth": 65,
              "tabWidth": 65,
              "tabXOffset": 10,
              "ver": "0.11.1"
            },
            "size": [
              164.8375,
              46
            ],
            "type": "VAEDecodeAudio",
            "widgets_values": []
          },
          {
            "flags": {},
            "id": 94,
            "inputs": [
              {
                "link": 261,
                "localized_name": "clip",
                "name": "clip",
                "type": "CLIP"
              },
              {
                "link": 264,
                "localized_name": "tags",
                "name": "tags",
                "type": "STRING",
                "widget": {
                  "name": "tags"
                }
              },
              {
                "link": 265,
                "localized_name": "lyrics",
                "name": "lyrics",
                "type": "STRING",
                "widget": {
                  "name": "lyrics"
                }
              },
              {
                "link": 257,
                "localized_name": "seed",
                "name": "seed",
                "type": "INT",
                "widget": {
                  "name": "seed"
                }
              },
              {
                "link": 280,
                "localized_name": "duration",
                "name": "duration",
                "type": "FLOAT",
                "widget": {
                  "name": "duration"
                }
              },
              {
                "link": 266,
                "localized_name": "timesignature",
                "name": "timesignature",
                "type": "COMBO",
                "widget": {
                  "name": "timesignature"
                }
              },
              {
                "link": 267,
                "localized_name": "language",
                "name": "language",
                "type": "COMBO",
                "widget": {
                  "name": "language"
                }
              },
              {
                "link": 268,
                "localized_name": "keyscale",
                "name": "keyscale",
                "type": "COMBO",
                "widget": {
                  "name": "keyscale"
                }
              },
              {
                "link": 269,
                "localized_name": "generate_audio_codes",
                "name": "generate_audio_codes",
                "type": "BOOLEAN",
                "widget": {
                  "name": "generate_audio_codes"
                }
              },
              {
                "link": 270,
                "localized_name": "cfg_scale",
                "name": "cfg_scale",
                "type": "FLOAT",
                "widget": {
                  "name": "cfg_scale"
                }
              },
              {
                "link": 271,
                "localized_name": "temperature",
                "name": "temperature",
                "type": "FLOAT",
                "widget": {
                  "name": "temperature"
                }
              },
              {
                "link": 272,
                "localized_name": "top_p",
                "name": "top_p",
                "type": "FLOAT",
                "widget": {
                  "name": "top_p"
                }
              },
              {
                "link": 273,
                "localized_name": "top_k",
                "name": "top_k",
                "type": "INT",
                "widget": {
                  "name": "top_k"
                }
              }
            ],
            "mode": 0,
            "order": 5,
            "outputs": [
              {
                "links": [
                  254,
                  255
                ],
                "localized_name": "CONDITIONING",
                "name": "CONDITIONING",
                "type": "CONDITIONING"
              }
            ],
            "pos": [
              270,
              -790
            ],
            "properties": {
              "Node name for S&R": "TextEncodeAceStepAudio1.5",
              "cnr_id": "comfy-core",
              "enableTabs": false,
              "hasSecondTab": false,
              "secondTabOffset": 80,
              "secondTabText": "Send Back",
              "secondTabWidth": 65,
              "tabWidth": 65,
              "tabXOffset": 10,
              "ver": "0.11.1"
            },
            "size": [
              611.9184354063266,
              679.7643386829468
            ],
            "type": "TextEncodeAceStepAudio1.5",
            "widgets_values": [
              "raw vocals, soulful vocals, Delta blues, country blues, haunting, longing, sorrowful, acoustic guitar, slide guitar, harmonica, upright bass, handclaps",
              "[Intro]\nInstrumental slide guitar and harmonica call\n\n[Verse]\nI woke up this mornin', devil was callin' my name  \nCrossroads wind was whisperin', never leave me the same  \nMy heart's got a hole, baby, burned by a flame  \nLookin' for redemption, but it ain't no easy game  \n\n[Chorus]\nOh, these blues got me shackled, chains around my soul  \nPlayin' on six strings, tryin' to make me whole  \nEvery note a confession, every tear a toll  \nSingin' for salvation as I lose control  \n\n[Verse]\nMidnight train departed, left me standin' in the rain  \nGot nothin' but my shadow and this growin' pain  \nDevil keeps a-knockin', tellin' me to swear his name  \nBut I keep strummin' truth to fight his claim  \n\n[Bridge]\nSlide that bottle 'til the whole world fades  \nDrownin' in regret through these endless shades  \n\n[Guitar Solo]\nInstrumental weepin' slide guitar, answered by mournful harmonica, rhythm slow and heavy  \n\n[Chorus]\nOh, these blues got me shackled, chains around my soul  \nPlayin' on six strings, tryin' to make me whole  \nEvery note a confession, every tear a toll  \nSingin' for salvation as I lose control  \n\n[Outro]\nSun's risin' slowly, but the pain stays near  \nCarryin' these blues down a lonesome frontier  \n\n[abrupt silence]",
              27660246420877,
              "fixed",
              190,
              120,
              "4",
              "en",
              "E minor",
              true,
              2,
              0.85,
              0.9,
              0
            ]
          },
          {
            "flags": {},
            "id": 104,
            "inputs": [
              {
                "link": 274,
                "localized_name": "unet_name",
                "name": "unet_name",
                "type": "COMBO",
                "widget": {
                  "name": "unet_name"
                }
              }
            ],
            "mode": 0,
            "order": 7,
            "outputs": [
              {
                "links": [
                  260
                ],
                "localized_name": "MODEL",
                "name": "MODEL",
                "type": "MODEL"
              }
            ],
            "pos": [
              -170,
              -790
            ],
            "properties": {
              "Node name for S&R": "UNETLoader",
              "cnr_id": "comfy-core",
              "enableTabs": false,
              "hasSecondTab": false,
              "models": [
                {
                  "directory": "diffusion_models",
                  "name": "acestep_v1.5_turbo.safetensors",
                  "url": "https://huggingface.co/Comfy-Org/ace_step_1.5_ComfyUI_files/resolve/main/split_files/diffusion_models/acestep_v1.5_turbo.safetensors"
                }
              ],
              "secondTabOffset": 80,
              "secondTabText": "Send Back",
              "secondTabWidth": 65,
              "tabWidth": 65,
              "tabXOffset": 10,
              "ver": "0.11.1"
            },
            "size": [
              380,
              82
            ],
            "type": "UNETLoader",
            "widgets_values": [
              "acestep_v1.5_turbo.safetensors",
              "default"
            ]
          },
          {
            "flags": {},
            "id": 102,
            "inputs": [],
            "mode": 0,
            "order": 0,
            "outputs": [
              {
                "links": [
                  257,
                  258
                ],
                "name": "INT",
                "type": "INT",
                "widget": {
                  "name": "seed"
                }
              }
            ],
            "pos": [
              -120,
              -130
            ],
            "properties": {
              "Run widget replace on values": false
            },
            "size": [
              268.39945903485034,
              82
            ],
            "title": "seed",
            "type": "PrimitiveNode",
            "widgets_values": [
              27660246420877,
              "randomize"
            ]
          },
          {
            "flags": {},
            "id": 110,
            "inputs": [
              {
                "link": 284,
                "localized_name": "value",
                "name": "value",
                "type": "FLOAT",
                "widget": {
                  "name": "value"
                }
              }
            ],
            "mode": 0,
            "order": 10,
            "outputs": [
              {
                "links": [
                  279,
                  280
                ],
                "localized_name": "FLOAT",
                "name": "FLOAT",
                "type": "FLOAT"
              }
            ],
            "pos": [
              -120,
              -280
            ],
            "properties": {
              "Node name for S&R": "PrimitiveFloat",
              "cnr_id": "comfy-core",
              "enableTabs": false,
              "hasSecondTab": false,
              "secondTabOffset": 80,
              "secondTabText": "Send Back",
              "secondTabWidth": 65,
              "tabWidth": 65,
              "tabXOffset": 10,
              "ver": "0.12.3"
            },
            "size": [
              270,
              58
            ],
            "title": "Song Duration",
            "type": "PrimitiveFloat",
            "widgets_values": [
              120
            ]
          }
        ],
        "outputNode": {
          "bounding": [
            1504.8375,
            -410,
            120,
            60
          ],
          "id": -20
        },
        "outputs": [
          {
            "id": "bfd748f6-f9ac-4588-81fa-41bde07a58fa",
            "linkIds": [
              263
            ],
            "localized_name": "AUDIO",
            "name": "AUDIO",
            "pos": [
              1524.8375,
              -390
            ],
            "type": "AUDIO"
          }
        ],
        "revision": 0,
        "state": {
          "lastGroupId": 3,
          "lastLinkId": 284,
          "lastNodeId": 110,
          "lastRerouteId": 0
        },
        "version": 1,
        "widgets": []
      }
    ]
  },
  "extra": {
    "VHS_KeepIntermediate": true,
    "VHS_MetadataImage": true,
    "VHS_latentpreview": false,
    "VHS_latentpreviewrate": 0,
    "ds": {
      "offset": [
        1271.0244943780867,
        810.6505140109659
      ],
      "scale": 0.8761159662772608
    },
    "frontendVersion": "1.39.10",
    "workflowRendererVersion": "LG"
  },
  "groups": [],
  "id": "4457a0d3-ab7d-4f88-b065-e97d22ac3154",
  "last_link_id": 27,
  "last_node_id": 20,
  "links": [
    [
      1,
      2,
      0,
      1,
      0,
      "AUDIO"
    ],
    [
      9,
      11,
      0,
      7,
      0,
      "STRING"
    ],
    [
      24,
      11,
      0,
      18,
      0,
      "STRING"
    ],
    [
      25,
      11,
      0,
      19,
      0,
      "STRING"
    ],
    [
      26,
      18,
      0,
      2,
      0,
      "STRING"
    ],
    [
      27,
      19,
      0,
      2,
      1,
      "STRING"
    ]
  ],
  "nodes": [
    {
      "flags": {},
      "id": 7,
      "inputs": [
        {
          "link": 9,
          "name": "source",
          "type": "*"
        }
      ],
      "mode": 0,
      "order": 2,
      "outputs": [],
      "pos": [
        -550,
        -110
      ],
      "properties": {
        "Node name for S&R": "PreviewAny",
        "cnr_id": "comfy-core",
        "enableTabs": false,
        "hasSecondTab": false,
        "secondTabOffset": 80,
        "secondTabText": "Send Back",
        "secondTabWidth": 65,
        "tabWidth": 65,
        "tabXOffset": 10,
        "ver": "0.12.3"
      },
      "size": [
        630,
        530
      ],
      "type": "PreviewAny",
      "widgets_values": [
        null,
        null,
        null
      ]
    },
    {
      "flags": {},
      "id": 1,
      "inputs": [
        {
          "link": 1,
          "name": "audio",
          "type": "AUDIO"
        }
      ],
      "mode": 0,
      "order": 6,
      "outputs": [],
      "pos": [
        930,
        -580
      ],
      "properties": {
        "Node name for S&R": "SaveAudioMP3",
        "cnr_id": "comfy-core",
        "enableTabs": false,
        "hasSecondTab": false,
        "secondTabOffset": 80,
        "secondTabText": "Send Back",
        "secondTabWidth": 65,
        "tabWidth": 65,
        "tabXOffset": 10,
        "ver": "0.11.1"
      },
      "size": [
        690,
        136
      ],
      "type": "SaveAudioMP3",
      "widgets_values": [
        "audio/ace-step-1.5",
        "V0"
      ]
    },
    {
      "flags": {
        "collapsed": true
      },
      "id": 18,
      "inputs": [
        {
          "link": 24,
          "name": "string",
          "type": "STRING",
          "widget": {
            "name": "string"
          }
        }
      ],
      "mode": 0,
      "order": 3,
      "outputs": [
        {
          "links": [
            26
          ],
          "name": "STRING",
          "type": "STRING"
        }
      ],
      "pos": [
        -60,
        -530
      ],
      "properties": {
        "Node name for S&R": "RegexExtract",
        "cnr_id": "comfy-core",
        "enableTabs": false,
        "hasSecondTab": false,
        "secondTabOffset": 80,
        "secondTabText": "Send Back",
        "secondTabWidth": 65,
        "tabWidth": 65,
        "tabXOffset": 10,
        "ver": "0.12.3"
      },
      "size": [
        400,
        262
      ],
      "type": "RegexExtract",
      "widgets_values": [
        "",
        "(?sm)^(.*?)^---$(.*)",
        "First Group",
        true,
        false,
        false,
        1
      ]
    },
    {
      "flags": {},
      "id": 2,
      "inputs": [
        {
          "link": 26,
          "name": "tags",
          "type": "STRING",
          "widget": {
            "name": "tags"
          }
        },
        {
          "link": 27,
          "name": "lyrics",
          "type": "STRING",
          "widget": {
            "name": "lyrics"
          }
        },
        {
          "label": "duration",
          "link": null,
          "name": "value",
          "type": "FLOAT",
          "widget": {
            "name": "value"
          }
        }
      ],
      "mode": 0,
      "order": 5,
      "outputs": [
        {
          "links": [
            1
          ],
          "name": "AUDIO",
          "type": "AUDIO"
        }
      ],
      "pos": [
        240,
        -580
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "enableTabs": false,
        "hasSecondTab": false,
        "proxyWidgets": [
          [
            "-1",
            "tags"
          ],
          [
            "-1",
            "lyrics"
          ],
          [
            "-1",
            "language"
          ],
          [
            "-1",
            "timesignature"
          ],
          [
            "-1",
            "keyscale"
          ],
          [
            "-1",
            "generate_audio_codes"
          ],
          [
            "-1",
            "cfg_scale"
          ],
          [
            "-1",
            "temperature"
          ],
          [
            "-1",
            "top_p"
          ],
          [
            "-1",
            "top_k"
          ],
          [
            "-1",
            "unet_name"
          ],
          [
            "-1",
            "clip_name1"
          ],
          [
            "-1",
            "clip_name2"
          ],
          [
            "-1",
            "vae_name"
          ],
          [
            "-1",
            "value"
          ],
          [
            "102",
            "control_after_generate"
          ],
          [
            "102",
            "value"
          ]
        ],
        "secondTabOffset": 80,
        "secondTabText": "Send Back",
        "secondTabWidth": 65,
        "tabWidth": 65,
        "tabXOffset": 10,
        "ver": "0.12.3"
      },
      "size": [
        640,
        680
      ],
      "type": "7aaae2b3-4151-4452-854b-653cf02fb752",
      "widgets_values": [
        "raw vocals, soulful vocals, Delta blues, country blues, haunting, longing, sorrowful, acoustic guitar, slide guitar, harmonica, upright bass, handclaps",
        "[Intro]\nInstrumental slide guitar and harmonica call\n\n[Verse]\nI woke up this mornin', devil was callin' my name  \nCrossroads wind was whisperin', never leave me the same  \nMy heart's got a hole, baby, burned by a flame  \nLookin' for redemption, but it ain't no easy game  \n\n[Chorus]\nOh, these blues got me shackled, chains around my soul  \nPlayin' on six strings, tryin' to make me whole  \nEvery note a confession, every tear a toll  \nSingin' for salvation as I lose control  \n\n[Verse]\nMidnight train departed, left me standin' in the rain  \nGot nothin' but my shadow and this growin' pain  \nDevil keeps a-knockin', tellin' me to swear his name  \nBut I keep strummin' truth to fight his claim  \n\n[Bridge]\nSlide that bottle 'til the whole world fades  \nDrownin' in regret through these endless shades  \n\n[Guitar Solo]\nInstrumental weepin' slide guitar, answered by mournful harmonica, rhythm slow and heavy  \n\n[Chorus]\nOh, these blues got me shackled, chains around my soul  \nPlayin' on six strings, tryin' to make me whole  \nEvery note a confession, every tear a toll  \nSingin' for salvation as I lose control  \n\n[Outro]\nSun's risin' slowly, but the pain stays near  \nCarryin' these blues down a lonesome frontier  \n\n[abrupt silence]",
        "en",
        "4",
        "E minor",
        true,
        2,
        0.85,
        0.9,
        0,
        "acestep_v1.5_turbo.safetensors",
        "qwen_0.6b_ace15.safetensors",
        "qwen_4b_ace15.safetensors",
        "ace_1.5_vae.safetensors",
        120
      ]
    },
    {
      "flags": {
        "collapsed": true
      },
      "id": 19,
      "inputs": [
        {
          "link": 25,
          "name": "string",
          "type": "STRING",
          "widget": {
            "name": "string"
          }
        }
      ],
      "mode": 0,
      "order": 4,
      "outputs": [
        {
          "links": [
            27
          ],
          "name": "STRING",
          "type": "STRING"
        }
      ],
      "pos": [
        -60,
        -380
      ],
      "properties": {
        "Node name for S&R": "RegexExtract",
        "cnr_id": "comfy-core",
        "enableTabs": false,
        "hasSecondTab": false,
        "secondTabOffset": 80,
        "secondTabText": "Send Back",
        "secondTabWidth": 65,
        "tabWidth": 65,
        "tabXOffset": 10,
        "ver": "0.12.3"
      },
      "size": [
        400,
        262
      ],
      "type": "RegexExtract",
      "widgets_values": [
        "",
        "(?s)(?<=\\n---\\n)([\\s\\S]*)$",
        "First Group",
        true,
        false,
        false,
        1
      ]
    },
    {
      "bgcolor": "#000",
      "color": "#222",
      "flags": {},
      "id": 20,
      "inputs": [],
      "mode": 0,
      "order": 0,
      "outputs": [],
      "pos": [
        -1120,
        -570
      ],
      "properties": {},
      "size": [
        520,
        530
      ],
      "type": "MarkdownNote",
      "widgets_values": [
        "Guide: [Subgraph](https://docs.comfy.org/interface/features/subgraph)\n\n## Model Links (for Local Users)\n\n**text_encoders**\n\n- [qwen_0.6b_ace15.safetensors](https://huggingface.co/Comfy-Org/ace_step_1.5_ComfyUI_files/resolve/main/split_files/text_encoders/qwen_0.6b_ace15.safetensors)\n- [qwen_4b_ace15.safetensors](https://huggingface.co/Comfy-Org/ace_step_1.5_ComfyUI_files/resolve/main/split_files/text_encoders/qwen_4b_ace15.safetensors)\n\n**vae**\n\n- [ace_1.5_vae.safetensors](https://huggingface.co/Comfy-Org/ace_step_1.5_ComfyUI_files/resolve/main/split_files/vae/ace_1.5_vae.safetensors)\n\n**diffusion_models**\n\n- [acestep_v1.5_turbo.safetensors](https://huggingface.co/Comfy-Org/ace_step_1.5_ComfyUI_files/resolve/main/split_files/diffusion_models/acestep_v1.5_turbo.safetensors)\n\n\n## Model Storage Location\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│   ├── 📂 text_encoders/\n│   │   ├── qwen_0.6b_ace15.safetensors\n│   │   └── qwen_4b_ace15.safetensors\n│   ├── 📂 vae/\n│   │   └── ace_1.5_vae.safetensors\n│   └── 📂 diffusion_models/\n│       └── acestep_v1.5_turbo.safetensors\n```\n\n## Report Issue\n\nNote: Please update ComfyUI first ([guide](https://docs.comfy.org/installation/update_comfyui)) and prepare required models. Desktop/Cloud will be updated after the stable release; nightly-supported models may not be included yet, please wait for the next stable release.\n\n- Cannot run / runtime errors: [ComfyUI/issues](https://github.com/Comfy-Org/ComfyUI/issues)\n- UI / frontend issues: [ComfyUI_frontend/issues](https://github.com/Comfy-Org/ComfyUI_frontend/issues)\n- Workflow issues: [workflow_templates/issues](https://github.com/Comfy-Org/workflow_templates/issues)\n"
      ]
    },
    {
      "bgcolor": "#653",
      "color": "#432",
      "flags": {},
      "id": 11,
      "inputs": [
        {
          "link": null,
          "name": "images",
          "shape": 7,
          "type": "IMAGE"
        },
        {
          "link": null,
          "name": "audio",
          "shape": 7,
          "type": "AUDIO"
        },
        {
          "link": null,
          "name": "video",
          "shape": 7,
          "type": "VIDEO"
        },
        {
          "link": null,
          "name": "files",
          "shape": 7,
          "type": "GEMINI_INPUT_FILES"
        }
      ],
      "mode": 0,
      "order": 1,
      "outputs": [
        {
          "links": [
            9,
            24,
            25
          ],
          "name": "STRING",
          "type": "STRING"
        }
      ],
      "pos": [
        -550,
        -580
      ],
      "properties": {
        "Node name for S&R": "GeminiNode",
        "cnr_id": "comfy-core",
        "enableTabs": false,
        "hasSecondTab": false,
        "secondTabOffset": 80,
        "secondTabText": "Send Back",
        "secondTabWidth": 65,
        "tabWidth": 65,
        "tabXOffset": 10,
        "ver": "0.12.3"
      },
      "size": [
        400,
        400
      ],
      "type": "GeminiNode",
      "widgets_values": [
        "A blues song, to rival the great Robert Johnson.",
        "gemini-3-pro-preview",
        1046438542938789,
        "randomize",
        "**Role:** You are a professional Music Architect for **ACE-Step 1.5**. \n\n**Task:** Generate a music creation plan.\n\n**Strict Output Constraint (IMPORTANT):**\n1. Return the output as **RAW PLAIN TEXT** only.\n2. DO NOT use Markdown code blocks (no backticks ```).\n3. DO NOT use any headers, labels, or bold text.\n4. Use ONLY the separator `---` to divide the two parts.\n5. Part 1: Comma-separated style keywords.\n6. Part 2: Structured lyrics with [Tags].\n\n**My Topic/Requirement:**\n[USER INPUT]"
      ]
    }
  ],
  "revision": 0,
  "version": 0.4
}