Nodes/ComfyUI-QHNodes/(Down)load ControlNet
ComfyUI Node

(Down)load ControlNet

Fetch a ControlNet model from CivitAI or HuggingFace

By liuqianhonga·Created 2 years ago·Updated about a year ago· 5
(Down)load ControlNet
    • controlnet_name
    sourcecivitai
    model_id
    base_modelFlux.1
    version_id
    file_names

    Fourth in the pack's family of download nodes, this one targets ControlNet models specifically - the networks that let you condition generation on spatial structure (edges, depth, pose) pulled from a reference image instead of leaving composition entirely up to the prompt. Give it an ID, it fetches the ControlNet weights and hands back the filename.

    How it works

    Same mechanism as its siblings: pick a source, give it a model_id, and it downloads into the appropriate models folder, reporting the result as controlnet_name. It's an output node, so it runs during the workflow regardless of whether anything wires off that output - fine for using it as a one-shot "fetch this onto disk" step.

    The inputs and outputs that matter

    • source - civitai or huggingface.
    • model_id (STRING) - the CivitAI model ID or HuggingFace repo path.
    • base_model - SD1.5, SDXL, Flux.1, Kolors, or Pony. This one matters more than usual for ControlNet specifically: ControlNet weights are trained against a particular base architecture and are not interchangeable across them - an SD 1.5 ControlNet will not condition an SDXL or Flux generation, full stop. Make sure this matches the checkpoint you're actually going to pair it with.
    • version_id (optional) and file_names (optional, multiline) - pin a specific version, or a specific file, when a model page offers more than one.

    Output: controlnet_name - wire into a ControlNet loader, then into your conditioning chain ahead of the sampler.

    How to install it

    This is a submodule node - part of the bundled ComfyUI-Model-Downloader integration rather than the pack's core repo. A plain clone leaves it out:

    cd ComfyUI/custom_nodes
    git clone --recursive https://github.com/liuqianhonga/ComfyUI-QHNodes.git
    

    Already have a bare clone? Pull the submodules in:

    cd ComfyUI/custom_nodes/ComfyUI-QHNodes
    git submodule init && git submodule update
    

    If you went through ComfyUI Manager and this node isn't showing up, that's the likely cause - Manager's default install doesn't reliably pull submodules, so the manual commands above are the fix inside your existing install.

    Common issues & troubleshooting

    Downloaded a ControlNet and it does nothing, or throws a shape mismatch. Check base_model first. The single most common ControlNet failure across the ecosystem generally is pairing weights trained for one architecture with a different one - the symptoms range from a hard error to the ControlNet silently having zero visible effect, depending on how the mismatch manifests.

    The model you wanted isn't available for your checkpoint family. ControlNet coverage for newer base models has caught up quickly, but it's still narrower than the SD 1.5/SDXL era - expect canny, depth, and pose to exist for most current bases, but don't assume every exotic ControlNet variant that existed for SD 1.5 has an equivalent yet.

    Gated or login-required downloads fail with no useful error. As with the other Download* nodes in this pack, there's no API key or token field here - gated HuggingFace repos and CivitAI models requiring an account are both out of reach through this node.

    Category🐟QHNodes/🐟Model (Down)load

    Inputs (5)

    NameTypeDefaultDescription
    sourceCOMBOcivitai2 options: civitai, huggingface
    model_idSTRING
    base_modelCOMBOFlux.15 options: SD1.5, SDXL, Flux.1, Kolors, Pony
    version_idoptSTRING
    file_namesoptSTRING

    Outputs (1)

    NameTypeDescription
    controlnet_name*