Nodes/ComfyUI-Kolors-MZ/MinusZone - KolorsControlNetLoader
ComfyUI Node Runs on cloud

MinusZone - KolorsControlNetLoader

Loading Kolors' official ControlNets, without the guesswork

By MinusZoneAI·Created 2 years ago·Updated about a year ago· 579
MinusZone - KolorsControlNetLoader
    • ControlNet
    control_net_name

    ControlNet is how you make a diffusion model obey a layout: hand it an edge map, a depth map, or a pose skeleton, and the generated image follows the structure while your prompt controls the content. Kuaishou shipped official ControlNets for Kolors in three flavors - Depth, Canny, and Pose - and MZ_KolorsControlNetLoader is the node that loads them. One dropdown, one CONTROL_NET output, and then you're ready to apply it in your sampler.

    How it works

    The input, control_net_name, lists everything in models/controlnet/. Pick your Kolors ControlNet file and the node loads it with ComfyUI's standard controlnet loader, but inside the pack's Kolors hook context. That context is the important part: Kolors' ControlNets were trained against the Kolors UNet's quirks (its encoder_hid_proj and label embedding), and loading them inside the hook keeps the machinery aligned. The output CONTROL_NET goes into the control_net input on the Apply ControlNet node in front of your KSampler - no custom apply node needed, the core one works.

    The practical effect is what ControlNet always does: structure in, structure out. Canny for crisp edges (architecture, mechanical stuff), depth for spatial arrangement, pose for human skeletons. The caveats are the usual ControlNet ones - strength around 0.8–1.0 for the official models, weaker if the condition fights your prompt - and one Kolors-specific wrinkle covered in the next node.

    Install and models

    Standard pack install: ComfyUI Manager search "ComfyUI-Kolors-MZ", or git clone https://github.com/MinusZoneAI/ComfyUI-Kolors-MZ into custom_nodes, restart. Then grab the official weights:

    # from Kwai-Kolors
    Kolors-ControlNet-Depth  -> models/controlnet/
    Kolors-ControlNet-Canny  -> models/controlnet/
    Kolors-ControlNet-Pose   -> models/controlnet/
    

    Each repo has the .safetensors on its HuggingFace page.

    Common issues

    Empty dropdown = nothing in models/controlnet/. Load errors after that usually mean a stale ComfyUI core (the loader rides core controlnet code, so update before debugging). And the big one: if your ControlNet results look like garbage, the loader is probably working fine and the patch node isn't - a real-world Kolors workflow needs MZ_KolorsControlNetPatch wired between the loaded ControlNet and the model so the controlnet gets the Kolors UNet's projection layer. The pack's changelog notes that automatic compatibility was removed (2024-07-14) in favor of that explicit patch node, so "load and apply" alone may not cut it. See MZ_KolorsControlNetPatch for the fix.

    CategoryMinusZone - Kolors

    Inputs (1)

    NameTypeDefaultDescription
    control_net_nameCOMBO0 options:

    Outputs (1)

    NameTypeDescription
    ControlNetCONTROL_NET