Nodes/Pseudocomfy/Vetted ControlNet Loader
ComfyUI Node

Vetted ControlNet Loader

Depth control, curated to one option per generation

By Pseudotools·Created 2 years ago·Updated 7 days ago· 4
Vetted ControlNet Loader
    • control_net
    model
    record_idpseudotools/controlnet-control-lora-depth-rank128

    Of all the vetted loaders in this pack, this one makes the most sense. The Pseudocomfy pipeline is for architectural rendering driven from Rhino, and the single most useful spatial condition for that job is depth - the model gets a depth map of the scene and is told "put the buildings where the geometry is." PseudoVettedControlNetLoader doesn't drown you in a menu of every ControlNet type ever made. It hands you the two depth options that matter and gets out of the way.

    The current dropdown is small and deliberate:

    • control-lora-depth-rank128.safetensors - the SDXL Control-LoRA depth model (Stability AI's lightweight LoRA-style controlnet for SDXL)
    • diffusion_pytorch_model.safetensors - the classic SD 1.5 depth ControlNet from lllyasviel

    That's one answer per generation, which is exactly the right shape for a curated loader. The README even points at lllyasviel's depth model on HuggingFace as the recommended download, with the SDXL Control-LoRA as the modern alternative.

    How it works

    Standard vetted-loader pattern: at startup the node pulls the approved list from https://tools.pseudotools.com/api/models and builds the dropdown. Pick a model and it loads from ComfyUI/models/controlnet using ComfyUI's own load_controlnet, returning a single control_net (CONTROL_NET) output.

    From there you wire it like any other ControlNet: control_net → ControlNetApply (or the advanced version) → conditioning, alongside your preprocessed depth image. A quick reminder of how ControlNet earns its keep here: it trains a copy of the encoder and injects the condition into the frozen UNet's skip connections, so the prompt decides what the content is while depth decides where it goes. For architecture, that means you can restyle the whole composition - change the material prompts, the lighting, the mood - while the massing stays locked to the depth map you exported from the model.

    Gotchas, same family as the other vetted loaders

    • It doesn't download the model. The dropdown is a list of approved filenames; the file itself has to be in models/controlnet with the exact name shown. The README shows you exactly how to grab diffusion_pytorch_model.safetensors from HuggingFace and where to drop it, and ComfyUI Manager's Model Manager can install depth ControlNets too.
    • The dropdown needs the API. Offline, you get (no vetted controlnet models available) and nothing to load. Regular ControlNet Loader still works offline - this one is the convenience that costs you network independence.
    • Match the depth model to your checkpoint's generation. An SD 1.5 depth ControlNet on an SDXL checkpoint will fail to load or produce garbage - the architecture lock-in is absolute. The dropdown conveniently has exactly one per generation, so the choice is on you: pick the SDXL entry for SDXL checkpoints.

    Installation

    Same pack install as the rest:

    # ComfyUI Manager: Custom Nodes Manager > search "Pseudocomfy" > Install
    
    # or manually:
    cd ComfyUI/custom_nodes
    git clone https://github.com/Pseudotools/Pseudocomfy.git
    

    Restart ComfyUI, then download a depth ControlNet (README links diffusion_pytorch_model.safetensors from lllyasviel/sd-controlnet-depth) into models/controlnet. Windows portable users: install diffusers into the embedded Python per README step one.

    Verdict

    The most defensible of the vetted loaders - the curation genuinely helps here because the pipeline only ever uses depth. If you're running the Rhino-driven workflow, use it and don't look back. If you do more general ControlNet work, the regular loader with your full menu is the better tool, and this one's two-item list will feel like a straitjacket.

    CategoryPseudocomfy/Loaders

    Inputs (2)

    NameTypeDefaultDescription
    modelCOMBO2 options: control-lora-depth-rank128.safetensors, diffusion_pytorch_model.safetensors
    record_idSTRINGpseudotools/controlnet-control-lora-depth-rank128

    Outputs (1)

    NameTypeDescription
    control_netCONTROL_NET