Nodes/KIE.ai Nodes Next/Replace Music Section · V6_MINI
ComfyUI Node

Replace Music Section · V6_MINI

The cheap draft before the real take

By felipederosilva·Created 2 months ago·Updated 3 days ago· 3
Replace Music Section · V6_MINI
    • audio
    • url
    • all_urls_json
    • task_id
    • raw_json
    • credits_consumed
    • credits_left
    ◄promptA calm and relaxing piano track.►
    ◄tagsJazz►
    ◄titleRelaxing Piano►
    ◄infill_start_s10.50►
    ◄infill_end_s20.75►
    ◄full_lyrics[Verse 1]\nOriginal lyrics content\n[Chorus]\nModified lyrics for this section\n[Verse 2]\nMore original lyrics►
    ◄task_id2fac****9f72►
    ◄audio_ide231****-****-****-****-****8cadc7dc►
    ◄negative_tagsRock►
    ◄lyrics[Chorus]\nModified lyrics for this section►
    ◄variety1►
    ◄vocal_genderm►
    ◄style_weight0.65►
    ◄weirdness_constraint0.65►
    ◄audio_weight0.65►
    ◄persona_idpersona_123►
    ◄persona_modelstyle_persona►
    ◄upload_urlhttps://example.com/audio.mp3►
    ◄timeout_seconds1200►
    ◄callback_url►

    The right way to use this node is as a rehearsal. V6_MINI is the lightweight, fast member of the current Suno family - KIE's words are "lightweight and fast, balancing audio quality and efficiency" - so you use it to find the window, the prompt and the lyric sheet that work, then re-run the same settings on the full V6 node for the take you keep. Same schema, same tunables, cheaper and quicker while you're still wrong about everything.

    What it is

    KIE_Next_V6_MINI_ed7e2618 regenerates a section of an existing Suno track through KIE.ai. It belongs to the same generated family as the eight other Replace Music Section nodes in the pack: the KIE Next pack creates a ComfyUI node per KIE Market operation and provider version, so V6_MINI is its own class with the version pinned inside rather than selected.

    Unlike the V4-era pins above it, this one is current. V6_MINI is one of the three versions KIE actually recommends for the operation, alongside V6 and V6_WILD, and it supports personas - a thing the V4 nodes can't do at all.

    How it works

    Infill on the provider side: identify the source track, specify a time window, describe what the section becomes, and hand over the corrected lyric sheet. The model re-renders that stretch in the context of the audio around it and returns a complete track - the rest of the song survives because it was conditioned on it.

    The pack wraps the transport the usual way: request assembly, task creation, polling until timeout_seconds (1200 default), download of the first result URL into a ComfyUI AUDIO, credit receipt on the node. No local model, no VRAM, nothing in models/.

    The inputs that matter

    task_id and audio_id are the source identity - parent task plus the specific track - and both are effectively required even though the schema marks them optional. Wire task_id from the node that generated the song; copy audio_id out of its raw_json.

    The window: infill_start_s and infill_end_s, seconds to two decimals, start < end, minimum ten seconds wide. A ten-second window is a short phrase plus a breath; a chorus is comfortable.

    The lyrics: full_lyrics (required) is the complete song after the edit; lyrics (optional) is just the replaced segment. On V6, V6_MINI and V6_WILD, lyrics caps at 5000 characters. Required prompt, tags, title are a description, the style tags and a title - with the standing note that KIE's prompt tooltip says "the lyrics after replacement", which is their doc slip rather than a second place to paste verse text.

    Then the same dials as its siblings: variety 0–4 for how far the section may stray, style_weight, weirdness_constraint, audio_weight (0–1, 0.65 default), negative_tags (Rock by default, and it works), vocal_gender (a nudge), and persona_id / persona_model for KIE Persona or Suno Voice IDs, matched as style_persona or voice_persona.

    Drafting vs finishing

    This is the part worth being deliberate about. Because the schema is identical to the V6 node, a rehearsal run on V6_MINI tells you almost everything: whether the window boundaries land on musical phrases, whether your description pulls the section in the right direction, whether the lyric sheet is coherent. Then swap the node for V6 and re-render once.

    You won't get identical audio - different model, different result - but you'll stop paying full freight to discover that your window started mid-word.

    Outputs

    audio → Save Audio / Preview Audio / KIE • Assemble Video + Music. The node emits a new task_id you can chain from, plus url, all_urls_json, raw_json, credits_consumed and credits_left. It isn't an output node, so nothing happens until the audio feeds something downstream.

    Installing it

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

    Or ComfyUI Manager → "KIE.ai Nodes Next", or the Registry package kie-ai-nodes-next. Restart, then Settings → KIE.ai Nodes Next → Connection and paste your key - validated before saving, masked afterwards, never in workflow JSON. Env vars aren't supported. Deps: requests, Pillow, numpy, PyYAML.

    Where people get burned

    Window under ten seconds - caught locally by the pack's preflight before any upload, which is the failure mode you want.

    Shipping the draft. It's easy to forget which of the two nodes produced the take you liked. Name your files, keep task_id somewhere, and remember KIE • Reuse Completed Image/Video/Audio can pull a finished task back without spending again.

    Persona mismatch. voice_persona with a style Persona ID, or vice versa, is a silent waste of a render. Right-click → KIE Next · Check inputs & model controls to inspect the documented fields and limits for free first.

    CategoryKIE Next/Audio/Suno/Music Generation

    Inputs (20)

    NameTypeDefaultDescription
    promptSTRINGA calm and relaxing piano track.The lyrics after replacement. Required.
    tagsSTRINGJazzStyle tags for the music, such as jazz or electronic. Required.
    titleSTRINGRelaxing PianoThe title of the music. Required.
    infill_start_sFLOAT10.500–10000The point in time, in seconds, at which replacement starts, rounded to 2 decimal places. Required. Must be less than infill_end_s, and the difference between infill_end_s and infill_start_s must be at least 10 seconds.
    infill_end_sFLOAT20.750–10000The point in time, in seconds, at which replacement ends, rounded to 2 decimal places. Required. Must be greater than infill_start_s, and the difference between infill_end_s and infill_start_s must be at least 10 seconds.
    full_lyricsSTRING[Verse 1]\nOriginal lyrics content\n[Chorus]\nModified lyrics for this section\n[Verse 2]\nMore original lyricsThe complete modified lyrics, combining the modified and unmodified lyrics. Required. This parameter contains the complete lyrics text that will be used for the entire song after section replacement.
    task_idoptSTRING2fac****9f72The original task ID (parent task), used to identify the source music for section replacement.
    audio_idoptSTRINGe231****-****-****-****-****8cadc7dcThe unique identifier of the audio track to be replaced. This ID is returned in the callback data after music generation is completed.
    negative_tagsoptSTRINGRockMusic styles to exclude, used to prevent specific stylistic elements from appearing in the replacement section.
    lyricsoptSTRING[Chorus]\nModified lyrics for this sectionLyrics for the replaced segment. Optional. - V6, V6_MINI, and V6_WILD: Maximum 5000 characters.
    varietyoptINT10–4Controls the diversity and stylistic variation of generated results. Optional. Integer range 0–4, default 1. - **`0`**: off (exact style) — fully off, strictly the same style - **`1`**: normal (balanced variety) — default, balances stability and diversity - **`2`**: high (distinct styles) — produces results with clearly different styles - **`3`**: extra (bold exploration) — higher variation, encourages bold exploration of different styles - **`4`**: max (unreasonably varied) — maximum diversity; results may differ in style very significantly
    vocal_genderoptCOMBOmVocal gender preference. Optional. 'm' for male, 'f' for female. Based on practice, this parameter can only increase the probability but cannot guarantee adherence to male/female voice instructions.
    style_weightoptFLOAT0.650–1Adherence strength to specified style. Optional. Range 0–1, up to 2 decimal places.
    weirdness_constraintoptFLOAT0.650–1Controls experimental/creative deviation level. Optional. Range 0–1, up to 2 decimal places.
    audio_weightoptFLOAT0.650–1Relative weight of audio elements. Optional. Range 0–1, up to 2 decimal places.
    persona_idoptSTRINGpersona_123Persona ID or Voice ID to apply to the generated music. Optional. Use this to apply a specific persona style to your music generation. To generate a Persona ID, use the [Generate Persona](https://docs.kie.ai/suno-api/generate-persona) endpoint to create a personalized music Persona based on generated music. To generate a Voice ID, use the [Generate Voice](https://docs.kie.ai/suno-api/suno-voice-generate) endpoint.
    persona_modeloptCOMBOstyle_personaPersona model. Optional. Use `style_persona` for Generate Persona IDs, or `voice_persona` for Suno Voice IDs. Default: `style_persona`. Available for V5 (Discontinued), V5_5 (Discontinued), V6, V6_MINI, and V6_WILD.
    upload_urloptSTRINGhttps://example.com/audio.mp3The URL of the custom audio uploaded by the user.
    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—