ComfyUI Node

Aesthetic Loader

The model loader that makes Aesthetic Select possible (and downloads four classifiers)

By Zuellni·Created 3 years ago·Updated 3 years ago· 43
Aesthetic Loader
    • MODELS
    aestheticfalse
    stylefalse
    waifufalse
    agefalse

    Let's get the honest version out first: Aesthetic Loader doesn't judge anything. It's the supply side of the pack's cherry-picking duo. You flip four toggles, it downloads the image-classifier models those toggles map to, and hands them to Aesthetic Select as a MODELS list. Without it, Select has nothing to score with - and with nothing connected to Select, your "pick the best image" workflow silently becomes a plain "pick the Nth image" workflow. That's the whole game here.

    What it actually does

    Each of the four toggles - aesthetic, style, waifu, age - loads a HuggingFace classification pipeline and bundles it with a hardcoded weight vector that tells Select which classifier labels count as "good":

    • aestheticcafeai/cafe_aesthetic, which scores how visually pleasing a frame is
    • stylecafeai/cafe_style, with weights spread across five style classes
    • waifucafeai/cafe_waifu, the anime version of the aesthetic scorer
    • agenateraw/vit-age-classifier, weighted so Select can nudge results toward the age bands you're after

    The weight vectors live in the node's source, so you don't tune them from the UI - the author already decided what "good" means for each classifier. Your job is just picking which scorers you trust.

    The inputs that matter

    Honestly, the only inputs are the four booleans, and they're self-explanatory. One worth knowing: leave them all false and the node returns an empty list, which makes Select fall back to its no-models index-pick mode. So there's no real "off" state - just a state where you've paid for model downloads without using them.

    Output is a single MODELS (LIST) socket, wired straight into Aesthetic Select's models input. Nothing else accepts it.

    First run downloads real models

    This is the gotcha that surprises people. The moment the loader executes, it calls pipeline() for each enabled toggle, which pulls the model weights from HuggingFace if they aren't cached. That's a few hundred MB on a first run and it needs network access. The models themselves are small ViTs that run fine on any GPU - this isn't a Stable Diffusion-size download - but it's not instant either, and it happens every first run until the cache is warm.

    Installing the pack

    The pack is Zuellni/ComfyUI-Custom-Nodes, now archived but still installable. Easiest path is ComfyUI Manager - search "Zuellni" and install. Or manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Zuellni/ComfyUI-Custom-Nodes
    

    Restart ComfyUI. On first run the extension writes a config.json beside itself and - by default - runs pip install on its requirements.txt. Aesthetic Loader specifically needs transformers (and torchvision, which ComfyUI already ships), so if pip install was skipped, run pip install -r ComfyUI/custom_nodes/Zuellni/requirements.txt yourself.

    Troubleshooting

    • "ModuleNotFoundError: transformers" - requirements didn't install. Run the pip command above.
    • Loader hangs on first run - it's downloading. Watch the console; it prints pipeline progress.
    • Select behaves like a plain index picker - you didn't wire MODELS in. That's the documented fallback, and the most common "why is my pick random?" report.
    • The pack is archived and unmaintained. It still works because the nodes are thin wrappers over transformers pipelines that haven't rotted, but there's no one fixing bugs. If you're building something you'll rely on, consider that before building your whole pipeline on it.
    CategoryZuellni/Aesthetic

    Inputs (4)

    NameTypeDefaultDescription
    aestheticCOMBOfalse2 options: false, true
    styleCOMBOfalse2 options: false, true
    waifuCOMBOfalse2 options: false, true
    ageCOMBOfalse2 options: false, true

    Outputs (1)

    NameTypeDescription
    MODELSLIST