Nodes/MD Nodes/MD: Scene Genius Autocreator
ComfyUI Node

MD: Scene Genius Autocreator

An ACE-Step prompt farm with an optional LLM brain

By MDMAchine·Created about a year ago·Updated 3 months ago· 15
MD: Scene Genius Autocreator
    • GENRE
    • LYRICS
    • DURATION
    • STEPS
    • GLIDE_POWER
    • MASTER_STR
    • LEGACY
    • ADG_ANGLE
    • VOCALS
    • SEED
    • STATUS
    execution_modeFast (No LLM)
    initial_concept_promptCyberpunk neon lights rain
    quality_presetBasic (180)
    randomize_seedtrue
    debug_mode0 - Silent
    enable_profilingfalse
    seed0
    manual_steps180
    force_instrumentalfalse
    load_genre_fileNone
    load_vocal_fileNone
    load_lyrics_fileNone
    genre_input
    vocal_input
    lyrics_input
    llm_backendollama
    ollama_api_base_urlhttp://localhost:11434
    ollama_model_namellama3:8b-instruct-q8_0
    lm_studio_api_base_urlhttp://localhost:1234
    lm_studio_model_namelocal-model
    enable_previewtrue

    "Scene Genius" sounds like an image-storyboarding tool. It isn't - this is a creative brief generator for ACE-Step audio workflows, and knowing that up front saves you five minutes of confusion. You feed it a concept ("Cyberpunk neon lights rain" is the default), it hands you a complete, coherent package: genre, vocals, lyrics, duration, step count, and a handful of technical ADG parameters the ACE-Step pipeline wants. One node in, everything the rest of the audio graph needs, out.

    The three modes

    execution_mode is the whole design:

    • Fast (No LLM) - instant, picks from the node's internal dictionary libraries. No network, no latency. Use it for drafts.
    • Hybrid (Smart LLM) - the LLM selects and combines curated options from the libraries. Best balance; the author recommends it for production runs.
    • Full AI (Creative LLM) - the LLM writes completely new content. 5–30 seconds of API latency, and it needs a local LLM server running.

    That LLM is either Ollama (http://localhost:11434, default model llama3:8b-instruct-q8_0) or LM Studio (http://localhost:1234). No cloud keys - it's all local, which is the right call for this crowd.

    How the outputs get made

    Behind the scenes it blends three sources: internal genre/vocal/lyrics libraries, your own .txt files dropped into the node's wildcards/genre, wildcards/vocal, and wildcards/lyrics folders (selected via load_genre_file, load_vocal_file, load_lyrics_file), and wildcard {A|B} expansion. quality_preset sets steps from Draft (60) all the way to Monster (2000) and syncs the technical ADG parameters to match. force_instrumental zeroes out the vocals and writes [Instrumental] into lyrics.

    The override hierarchy is clean: genre_input, vocal_input, and lyrics_input beat everything - files, LLM, Fast mode - so you can hard-force a value while still letting the node generate the rest.

    The outputs

    You get GENRE, LYRICS, VOCALS (strings), DURATION (float), STEPS (int), GLIDE_POWER, MASTER_STR, ADG_ANGLE (floats), LEGACY (boolean), SEED (int), and STATUS - an IMAGE dashboard that summarizes the run. The natural wiring: feed these into MD_WorkflowContextBus to bundle them, or run GENRE/LYRICS/VOCALS straight into your ACE-Step text encoding and STEPS into the sampler.

    The honest take

    The default concept is very audio-culture, the library files are genre-flavored (dnb.txt, lofi_chill.txt, industrial_hard.txt), and the whole node is clearly built by someone deep in the ACE-Step music scene - which is exactly what it's good at. It is not a general-purpose scene/storyboard generator for images. If you're an audio person on ACE-Step, this is one of the best "type a vibe, get a full production brief" nodes out there. If you're not, the same pack's UniversalWildcardOrchestrator is the more neutral tool. Keep it in Fast mode until you've confirmed Ollama actually responds - nothing wastes time like a 30-second timeout on a run that used to be instant.

    Installing it

    cd path/to/ComfyUI/custom_nodes
    git clone https://github.com/MDMAchine/ComfyUI_MD_Nodes.git
    cd ComfyUI_MD_Nodes
    pip install -r requirements.txt
    

    Or search MD_Nodes in ComfyUI Manager and restart.

    CategoryMD_Nodes/Prompt Generation

    Inputs (21)

    NameTypeDefaultDescription
    execution_modeCOMBOFast (No LLM)EXECUTION MODE • Purpose: Controls generation logic intensity. • Options: - Fast: Instant, uses internal dictionary libraries only. - Hybrid: LLM selects curated combinations from libraries. - Full AI: LLM generates completely new creative content. • Trade-offs: Fast is instant; Full AI introduces API latency (5-30s). ⭐ Recommended: Fast for drafts, Hybrid for production runs.
    initial_concept_promptSTRINGCyberpunk neon lights rainCONCEPT PROMPT • Purpose: The core thematic idea driving the entire generation. • Usage: Used by LLM modes to infer appropriate genre, mood, and lyrics. • Support: {wildcard|syntax} expansion is fully supported here. ⭐ Recommended: Be descriptive (e.g., 'Dark ambient forest, heavy rain, isolation').
    quality_presetCOMBOBasic (180)QUALITY PRESET • Purpose: Automatically sets step count and syncs technical ADG parameters. • Draft (60): Fast testing. • Basic (180): Standard balanced speed/quality. • Production (220): High fidelity standard. • Monster (2000): Ultra-long experimental runs. ⭐ Recommended: Start with Basic (180).
    randomize_seedBOOLEANtrueRANDOMIZE SEED • Purpose: Toggle automatic seed rotation. • True: Generates a new variation/wildcard selection every run. • False: Locks the seed to continuously refine a specific output.
    debug_modeCOMBO0 - SilentLOGGING VERBOSITY • Purpose: Controls console output detail level. • Options: - 0: Minimal output (Production). - 1: Performance/Latency report. - 2: Step-by-step logic tracing. ⭐ Recommended: Use '1 - Info' when testing LLM latency.
    enable_profilingBOOLEANfalseENABLE PROFILING • Purpose: Measure timing of text generation and API calls. • Note: Automatically enabled if debug_mode >= 1.
    seedoptINT00–9007199254740991MANUAL SEED • Purpose: Control wildcard/randomization state. • Range: 0 to 9 quadrillion (JS-safe precision limit). • Note: Ignored if 'randomize_seed' is True.
    manual_stepsoptINT1801–10000MANUAL STEPS • Purpose: Custom step count override. • Requirement: 'quality_preset' MUST be set to 'Manual'.
    force_instrumentaloptBOOLEANfalseFORCE INSTRUMENTAL • Purpose: Disable vocal generation entirely. • Result: Overrides LLM to output empty vocals and '[Instrumental]' lyrics.
    load_genre_fileoptCOMBONoneLOAD GENRE FILE • Purpose: Inject an external .txt file as the genre source. • Location: Must be in the node's /wildcards/genre/ folder. • Priority: Takes precedence over LLM/Fast generation.
    load_vocal_fileoptCOMBONoneLOAD VOCAL FILE • Purpose: Inject an external .txt file as the vocal source. • Location: Must be in the node's /wildcards/vocal/ folder.
    load_lyrics_fileoptCOMBONoneLOAD LYRICS FILE • Purpose: Inject an external .txt file as the lyrics source. • Location: Must be in the node's /wildcards/lyrics/ folder.
    genre_inputoptSTRINGGENRE OVERRIDE • Purpose: Manually force a specific string into the Genre output. • Priority: Overrides EVERYTHING (LLM, files, Fast Mode). • Support: {wildcards} work here.
    vocal_inputoptSTRINGVOCAL OVERRIDE • Purpose: Manually force a specific string into the Vocal output.
    lyrics_inputoptSTRINGLYRICS OVERRIDE • Purpose: Manually force a specific string into the Lyrics output.
    llm_backendoptCOMBOollamaLLM BACKEND • Purpose: Select the local API server to use for Hybrid/Full AI modes.
    ollama_api_base_urloptSTRINGhttp://localhost:11434OLLAMA URL • Default: http://localhost:11434
    ollama_model_nameoptCOMBOllama3:8b-instruct-q8_0OLLAMA MODEL • Purpose: Select which installed Ollama model to prompt.
    lm_studio_api_base_urloptSTRINGhttp://localhost:1234LM STUDIO URL • Default: http://localhost:1234
    lm_studio_model_nameoptCOMBOlocal-modelLM STUDIO MODEL • Purpose: Select which loaded LM Studio model to prompt.
    enable_previewoptBOOLEANtrueENABLE PREVIEW • Purpose: Generate a visual status dashboard image. • Output: IMAGE tensor summarizing the generated parameters.

    Outputs (11)

    NameTypeDescription
    GENRESTRING
    LYRICSSTRING
    DURATIONFLOAT
    STEPSINT
    GLIDE_POWERFLOAT
    MASTER_STRFLOAT
    LEGACYBOOLEAN
    ADG_ANGLEFLOAT
    VOCALSSTRING
    SEEDINT
    STATUSIMAGE