Nodes/comfyui-prompt-composer/Prompt Composer Multiple Text
ComfyUI Node

Prompt Composer Multiple Text

Ten weighted text blocks in one node

By florestefano1975·Created 3 years ago·Updated 6 months ago· 306
Prompt Composer Multiple Text
    • text_out
    text_1
    weight_11.0
    text_2
    weight_21.0
    text_3
    weight_31.0
    text_4
    weight_41.0
    text_5
    weight_51.0
    text_6
    weight_61.0
    text_7
    weight_71.0
    text_8
    weight_81.0
    text_9
    weight_91.0
    text_10
    weight_101.0
    activefalse
    text_in_opt

    This is Prompt Composer's Single Text node, times ten, crammed into one box on your canvas. Instead of chaining ten separate nodes just to hold ten independent, independently-weighted chunks of a prompt - say, ten physical traits for a character, or ten style descriptors you want to mix and match - you get all of them in one place with one active switch and one output. It's the node to reach for once your prompt has grown past "a few pieces" and you don't want your graph turning into spaghetti.

    Worth flagging up front: the pack's own README describes this as "Multiple Text Node: contains six typing boxes." The node as it actually ships has ten - text_1 through text_10, each with its own weight slider. The README just hasn't caught up with the node. Don't go hunting for a missing four boxes; they're there.

    How it works

    Each of the ten text/weight pairs behaves exactly like the standalone Single Text node: fill in a box, leave its weight at 1 for plain text, or move the slider to get that box's contents wrapped in (text:weight). Whatever you leave blank contributes nothing. However many of the ten you actually fill in get combined, along with anything piped in from text_in_opt, into the single text_out.

    The inputs and outputs that matter

    • text_1text_10 (multiline strings) - ten independent slots. Leave any of them empty and they simply don't add anything.
    • weight_1weight_10 (0 to 1.95, step 0.1, default 1) - one weight per text slot, same rules as Single Text: 1 means untouched, anything else wraps that slot's text in (text:weight).
    • active (boolean) - bypass the whole node without deleting it or its ten boxes' worth of content.
    • text_in_opt (optional string) - chain input from an upstream Prompt Composer node.
    • text_out - the combined result, feeding the next node or your text encoder.

    The same weighting caveat applies, times ten

    Every one of those ten weight sliders builds (text:weight) syntax, and that syntax is CLIP-only. On SD1.5, SDXL and SDXL-derived checkpoints (Illustrious, NoobAI, Pony) it works as expected. On an LLM-encoded checkpoint - Flux, Z-Image, Anima, Chroma's T5 side - none of those ten sliders do anything useful; the parentheses just sit in your prompt as literal text. If you're building a ten-part description for one of those models, it's worth just leaving every slider at 1 and doing the emphasis with word choice and order instead.

    How to install it

    Through ComfyUI Manager: search florestefano1975, install, restart. Or by hand:

    cd ComfyUI/custom_nodes
    git clone https://github.com/florestefano1975/comfyui-prompt-composer
    

    then restart. No models to fetch, no dependency chain to fight - it's plain Python string handling, so the install is quick and low-risk compared to most custom node packs.

    Common issues & troubleshooting

    You expected six boxes and see ten. That's the node, not a bug - the README undercounts by four, as covered above.

    The graph gets tall. Ten multiline text boxes take up real canvas space. If you only need two or three chunks with weights, the standalone Single Text node (or a couple of them chained) is lighter on the eyes; save Multiple Text for when you genuinely have that many independent, separately-weighted pieces.

    Weights aren't doing anything. Same story as everywhere else in this pack - check whether your checkpoint uses a CLIP text encoder or an LLM one. The attention syntax is inert on the latter.

    Upstream text disappeared. text_in_opt is optional and easy to leave unplugged by accident, especially with a node this wide. If a chain feeding into this one seems to have vanished from your output, check that wire first.

    CategoryAI WizArt/Prompt Composer Tools

    Inputs (22)

    NameTypeDefaultDescription
    text_1STRING
    weight_1FLOAT1.00–1.95
    text_2STRING
    weight_2FLOAT1.00–1.95
    text_3STRING
    weight_3FLOAT1.00–1.95
    text_4STRING
    weight_4FLOAT1.00–1.95
    text_5STRING
    weight_5FLOAT1.00–1.95
    text_6STRING
    weight_6FLOAT1.00–1.95
    text_7STRING
    weight_7FLOAT1.00–1.95
    text_8STRING
    weight_8FLOAT1.00–1.95
    text_9STRING
    weight_9FLOAT1.00–1.95
    text_10STRING
    weight_10FLOAT1.00–1.95
    activeBOOLEANfalse
    text_in_optoptSTRING

    Outputs (1)

    NameTypeDescription
    text_outSTRING