Nodes/KIE.ai Nodes Next/Add Instrumental to Music · V5
ComfyUI Node

Add Instrumental to Music · V5

The legacy-tier backing-track node

By felipederosilva·Created 2 months ago·Updated 13 days ago· 4
Add Instrumental to Music · V5
    • audio
    • url
    • all_urls_json
    • task_id
    • raw_json
    • credits_consumed
    • credits_left
    ◄promptsint►
    ◄sound_loopfalse►
    ◄sound_tempo166►
    ◄sound_keyAny►
    ◄grab_lyricsfalse►
    ◄timeout_seconds1200►
    ◄callback_url►

    Give it a track with vocals, describe the style you want, and it hands back an instrumental version. This node is Suno's "Add Instrumental to Music" endpoint at the V5 tier - one of KIE's discontinued tiers, which matters less here than elsewhere because instrumental output is the part of music generation the local models already do well.

    So the honest framing: if you're making a fresh backing track, ACE-Step on your own card will do it for free and won't mind you iterating. Reach for this node when the backing has to match a specific existing song's character, or when you're keeping an old V5 workflow reproducible. The mechanism is generation, not surgery - it doesn't split your file into stems, it re-performs an instrumental guided by your source audio and your tags. The arrangement will resemble the original rather than mirror it.

    How it works

    The pack builds its node classes at startup from KIE's official API documentation, one class per documented model version - hence no model selector, just V5 baked in. The node assembles the documented request body, submits it to KIE's task endpoint (envelope model ai-music-api/add-instrumental, inner model V5), polls KIE's record-info endpoint every few seconds with backoff until the task succeeds, then downloads the resulting mp3 and returns it as a ComfyUI AUDIO. Failures raise with the task id and the provider's message.

    The inputs that matter

    Four required, and the naming is its own little trap - this node wants tags, not style:

    • upload_url - the source audio, as a publicly reachable URL. The docs: source audio is enough to generate once title, negative_tags and tags are provided. Under 8 minutes, per the upload-family limits.
    • title - required; it shows in the player and the filename.
    • tags - the styles or characteristics to include, e.g. relaxing, piano, soothing.
    • negative_tags - what to exclude, e.g. heavy metal, fast drums.

    Optional: vocal_gender (present for schema reasons; you're asking for an instrumental, so it does nothing useful), style_weight (0–1, default 0.61), weirdness_constraint (default 0.72), audio_weight (how much the source audio counts), lyrics, variety (0–4; 0 for "strictly the same", 4 for "unreasonably varied" in the docs' own words), timeout_seconds (1200) and callback_url (leave empty).

    Outputs: audio for Save Audio or any downstream audio node, url, all_urls_json, task_id, raw_json, credits_consumed and credits_left.

    Getting your track in

    upload_url is a string widget, not an AUDIO socket, so it can't take a file directly. Wire it: add KIE • Upload Audio from KIE Next/Utility/Media, feed it your AUDIO, then right-click the upload_url field on this node, choose Convert widget to input, and connect the URL it returns. After that the whole chain - generate, upload, re-render as instrumental - runs without you touching a browser.

    Installing

    ComfyUI Manager, search "KIE Nodes Next"; the README still frames registry publication as prepared rather than done, so the clone path is what works if Manager comes up empty:

    cd ComfyUI/custom_nodes
    git clone https://github.com/felipederosilva/ComfyUI-KIE-Nodes-Next
    pip install -r ComfyUI-KIE-Nodes-Next/requirements.txt
    

    Restart, then set your key once under Settings → KIE.ai Nodes Next → Connection. It's validated before overwriting a working key, only a masked fingerprint is displayed, and KIE_API_KEY takes precedence for headless installs. Four small dependencies and no model files - this pack costs you nothing to have installed, which is not something you can say about the local audio stacks.

    Where people get burned

    • Looking for a style field. This endpoint calls it tags. Same job, different name from its siblings.
    • Expecting stem separation. It's a generation. If you need the actual original instrumental, run a separation tool; this gives you a performance in that style.
    • Local paths as upload_url. KIE has to fetch it. Use the Upload Audio node.
    • No key configured raises an error naming the settings path - first thing to check.
    • Mixed-release installs are refused at import. If the pack says its version and generated-node build disagree, delete the folder and reinstall rather than patching files by hand.
    • Discontinued tier. V5 is marked as such in KIE's docs; the V6 sibling is the current line.

    One last practical note: tags does more work than style_weight here. Get the tag list right - genre, lead instrument, mood, tempo words - and leave the weight dial around its default. Cranking style_weight with vague tags just gives you a confidently wrong instrumental.

    CategoryKIE Next/Audio/Suno/Music Generation

    Inputs (7)

    NameTypeDefaultDescription
    promptSTRINGsintDescription of the sound (max 500 characters).
    sound_loopoptBOOLEANfalseWhether the generated sound loops seamlessly.
    sound_tempooptINT1661–300Tempo in BPM (1–300). Omit for automatic tempo.
    sound_keyoptCOMBOAnyMusical key. Default "Any" (automatic).
    grab_lyricsoptBOOLEANfalseWhether to capture the lyrics subtitles Will the interface be called after completion to obtain the lyrics subtitles?
    timeout_secondsoptINT120030–7200—
    callback_urloptSTRINGOptional KIE callback URL. Leave empty for normal ComfyUI use.

    Outputs (7)

    NameTypeDescription
    audioAUDIO—
    urlSTRING—
    all_urls_jsonSTRING—
    task_idSTRING—
    raw_jsonSTRING—
    credits_consumedFLOAT—
    credits_leftFLOAT—