Nodes/Endless ️🌊✨ Nodes/β™ΎοΈπŸŒŠβœ¨ Parameterizer & Prompts
ComfyUI Node

β™ΎοΈπŸŒŠβœ¨ Parameterizer & Prompts

Parameterizer & Prompts β€” SDXL's twin text encoders plus refiner, in one node

By tusharbhuttΒ·Created 3 years agoΒ·Updated about a year agoΒ· 68
β™ΎοΈπŸŒŠβœ¨ Parameterizer & Prompts
    • Base Width
    • Base Height
    • Base Cropped Width
    • Base Cropped Height
    • Base Target Width
    • Base Target Height
    • Refiner Width
    • Refiner Height
    • Refiner Aesthetic Score
    • Text_G/Refiner Prompt
    • Text_L Prompt
    β—„base_width1024β–Ί
    β—„base_height1024β–Ί
    β—„base_crop_w0β–Ί
    β—„base_crop_h0β–Ί
    β—„base_target_w1024β–Ί
    β—„base_target_h1024β–Ί
    β—„refiner_width1024β–Ί
    β—„refiner_height1024β–Ί
    β—„refiner_ascore6.00β–Ί
    β—„endlessGTEXT_G,acts as main prompt and connects to refiner text inputβ–Ί
    β—„endlessLTEXT_L, acts as supporting promptβ–Ί

    SDXL is special for one annoying reason: it doesn't have a single text encoder, it has two - a big CLIP (the "G" encoder) and a smaller one (the "L" encoder) - and they get different prompts in a classic setup, on top of the whole base-plus-refiner two-stage thing. The β™ΎοΈπŸŒŠβœ¨ Parameterizer & Prompts tries to make that manageable by bundling all the SDXL geometry, the refiner aesthetic score, and both text prompts into one node that passes everything out on clearly-named sockets.

    It's the expanded version of the pack's plain Parameterizer: same nine dimension outputs, plus two STRING outputs carrying your two prompts. Set the whole configuration of an SDXL base+refiner workflow in one place, then wire the outputs to the encoders. One source of truth for geometry and text.

    How it works

    Inputs:

    • base_width, base_height, base_crop_w, base_crop_h, base_target_w, base_target_h - INT, defaults 1024/1024/0/0/1024/1024. The base encoder's six dimensions.
    • refiner_width, refiner_height - INT, default 1024. Refiner resolution.
    • refiner_ascore - FLOAT, default 6. The refiner's aesthetic score.
    • endlessG - STRING, optional, default is a placeholder: "TEXT_G, acts as main prompt and connects to refiner text input." This is your main prompt for the big G encoder.
    • endlessL - STRING, optional: "TEXT_L, acts as supporting prompt" for the smaller L encoder.

    Outputs: the nine geometry/score sockets (Base Width … Refiner Aesthetic Score), plus Text_G/Refiner Prompt and Text_L Prompt. It's a passthrough node - nothing is computed, everything is just collected and re-emitted. The two prompts feed their respective CLIP text encoders; the base geometry feeds the base encode, the refiner geometry and score feed the refiner.

    The honest take

    Two caveats, same as the Parameterizer. The refiner era is over - the community's verdict is that SDXL fine-tunes made the refiner stage pointless, so unless you're deliberately running base+refiner, half of this node is dead weight. And this is a legacy ESS class from the pre-June-2025 pack; the current Endless-Nodes repo doesn't ship it, so a fresh install (Manager β†’ search "Endless", or git clone https://github.com/tusharbhutt/Endless-Nodes into custom_nodes, restart) won't expose it, and old workflows referencing it will flag it missing.

    If you're maintaining an old SDXL base+refiner workflow and this node is in it, it works and it's honestly a tidy way to keep everything in one box. If you're building new, modern SDXL workflows usually skip the refiner entirely, and the two-encoder dance is handled fine by ComfyUI's own SDXL text-encode node with explicit width/height inputs. This one is a museum piece that happens to still run.

    CategoryEndless 🌊✨/Parameters

    Inputs (11)

    NameTypeDefaultDescription
    base_widthINT102464–8192β€”
    base_heightINT102464–8192β€”
    base_crop_wINT00–1024β€”
    base_crop_hINT00–1024β€”
    base_target_wINT102464–8192β€”
    base_target_hINT102464–8192β€”
    refiner_widthINT102464–8192β€”
    refiner_heightINT102464–8192β€”
    refiner_ascoreFLOAT6.000–18446744073709550000β€”
    endlessGoptSTRINGTEXT_G,acts as main prompt and connects to refiner text inputβ€”
    endlessLoptSTRINGTEXT_L, acts as supporting promptβ€”

    Outputs (11)

    NameTypeDescription
    Base WidthINTβ€”
    Base HeightINTβ€”
    Base Cropped WidthINTβ€”
    Base Cropped HeightINTβ€”
    Base Target WidthINTβ€”
    Base Target HeightINTβ€”
    Refiner WidthINTβ€”
    Refiner HeightINTβ€”
    Refiner Aesthetic ScoreFLOATβ€”
    Text_G/Refiner PromptSTRINGβ€”
    Text_L PromptSTRINGβ€”