Nodes/Music Production Toolkit/Model Auto-Download / Check
ComfyUI Node

Model Auto-Download / Check

One node that tells you what models are missing — and fetches the ones it can

By jplenio·Created 26 days ago·Updated 6 days ago· 66
Model Auto-Download / Check
    • report
    ◄minimax_modelstrue►
    ◄flux2_modelstrue►
    ◄flashsr_modelstrue►
    ◄llm_modeltrue►
    ◄auto_downloadtrue►
    ◄yue2_modelstrue►
    ◄model_profile_json—►
    ◄sheetsage2_modelstrue►
    ◄whisper_modelstrue►
    ◄cover_source_json—►

    The MiniMax Music Production Toolkit example workflow quietly depends on more model files than any one person wants to track: the MiniMax Music 3 dit/text-encoder/VAE trio, three FlashSR weight files, a FLUX.2 Klein set for the cover art, and an LLM GGUF. MiniMaxModelAutodownload is the node that answers the obvious first question - do I actually have all of these? - before you burn an hour discovering you don't.

    Drop it early in the workflow and it checks every file the workflow references, downloads the ones that have a URL configured, and logs the whole thing. You get a text report output describing each file's status, which you can feed anywhere you want a status string to live.

    What it checks

    Each category is its own toggle, all on by default:

    • minimax_models - the MiniMax Music 3 generation files (dit, text encoder, VAE).
    • flux2_models - the FLUX.2 Klein cover-art branch (dit, text encoder, VAE).
    • flashsr_models - the three FlashSR weight files used by the integrated audio super-resolution node.
    • llm_model - the example LLM GGUF the workflow references.
    • auto_download - master switch for the downloading itself.

    The node reads a declarative models_config.json in the toolkit folder, which maps each file to its target folder and, where one exists, a download URL.

    The honest catch: it can only download some of them

    This is where the "MiniMax" branding can mislead you into expecting a one-click setup. Look at what actually has a URL in models_config.json and it's mostly just the FlashSR weights - three files fetched from the jakeoneijk/FlashSR_weights HuggingFace dataset into models/audio/flashsr. The MiniMax Music 3 and FLUX.2 Klein files have empty URLs: they're gated/official-channel downloads with no public link, so the node reports them as missing with guidance instead of failing. Same for the example LLM GGUF unless you add a URL yourself.

    So treat this node as a pre-flight checklist plus a helper for the auto-downloadable bits, not as a magic installer that makes the whole workflow appear. With auto_download ON, genuinely missing files without a URL are reported and the run continues; only an actual download failure raises an error. Set auto_download OFF and you get fail-fast behavior instead - useful when you want a hard stop the moment something's absent.

    Installing

    cd ComfyUI/custom_nodes
    git clone https://github.com/jplenio/ComfyUI-MiniMax-Music-Production-Toolkit.git
    cd ComfyUI-MiniMax-Music-Production-Toolkit
    python -m pip install -r requirements.txt
    

    Restart ComfyUI, hard-refresh the browser, and you'll find it under MiniMax Music Production Toolkit/utilities.

    Two gotchas worth knowing. First, model paths resolve through ComfyUI's own folder_paths.models_dir - if you run ComfyUI with --models-directory, the node looks under that directory, not the default. The pack ships scripts/check_model_paths.py precisely so you can verify the resolution before pulling your hair out. Second, you don't actually need this node for the FlashSR and LLM parts of the chain: those nodes do their own lazy first-use downloads. This node's real value is the one-shot overview and the batch-friendly pre-check before a long run of generations.

    CategoryMusic Production Toolkit/utilities

    Inputs (10)

    NameTypeDefaultDescription
    minimax_modelsBOOLEANtrueCheck the MiniMax Music 3 files referenced by the workflow (dit, text encoder, VAE).
    flux2_modelsBOOLEANtrueCheck the FLUX.2 Klein artwork branch files (dit, text encoder, VAE).
    flashsr_modelsBOOLEANtrueCheck the FlashSR weight files used by the integrated Audio Super Resolution node.
    llm_modelBOOLEANtrueCheck the chat-model candidates from the catalog and report which are present. Nothing is downloaded here (they are optional), and the model you select in the LLM node is fetched when you use it. Turn it off when you use a cloud or local-server model.
    auto_downloadBOOLEANtrueDownload every missing file that has a configured URL. Missing files without a URL are only reported with guidance.
    yue2_modelsoptBOOLEANtrueInclude the YuE2 model group in the check and download. Turn it off when you only produce MiniMax Music 3 songs or audio enhancement.
    model_profile_jsonoptSTRINGJSON profile of the selected song model: which model is active, its duration window, prompt hard limit and capabilities. This node adapts its behaviour to that profile; it comes from the song model profile node.
    sheetsage2_modelsoptBOOLEANtrueInclude SheetSage2 only when YuE2 Cover and yue2_models are selected. auto_download controls whether missing configured weights are downloaded. Enabled by default.
    whisper_modelsoptBOOLEANtrueCheck the Whisper checkpoint for new/original lyrics in YuE2 Cover only. Off excludes it from this check; auto_download controls downloads. Instrumental and other models never request it.
    cover_source_jsonoptSTRINGConnect Cover song / source audio so this node can see the selected lyrics mode and only request the Whisper weights the run actually uses.

    Outputs (1)

    NameTypeDescription
    reportSTRING—