LTX Reference Tags
Tell the model which tag is which image
- prompt
Here's the dirty secret of LTX multi-subject reference LoRAs: nothing in the model actually ties the tag <Image 1> to reference slot 1. That correspondence exists only because the training captions used it consistently. Sample with a different convention than training did, and the binding simply doesn't happen - the slots stay separated, but the prompt never tells the model which image is the woman and which is the man. This node exists to make that prompt prefix reliably, every time.
It's a small node and it does one job: it assembles the declaration block that names each reference. You type a short noun phrase per subject - "the woman", "the red sports car" - plus an optional scene description, and it returns a single prompt string that looks like:
<Image 1> is the woman. <Image 2> is the man. <Image 1> hands <Image 2> a cup.
The inputs
All six subject_1 through subject_6 fields are optional, so you only fill the ones you wired up. Leave one empty and it's skipped. scene is the multiline one, appended after the declarations.
Two rules decide whether this works at all. First, order matters: subject_2 must describe whatever is wired into reference_2 on the Multi Reference Slots node. There's no checking here - the node trusts you. Second, describe subjects distinctly. Two references both called "the woman" carry zero information about which is which, and the model will happily blend them. This is the mistake people make over and over, and it's exactly why the workflow produces merged faces.
The scene tip from the author is worth taking seriously: refer back to subjects by tag inside the scene ("<Image 1> hands <Image 2> a cup"). A tag that only ever appears in the declaration has to carry both "who this is" and "what they do" at once, which is a harder association for the model to use.
Where it fits
Wire the prompt output into your CLIP Text Encode's positive input (or wherever you'd feed the positive prompt). The graph reads:
LTX model loader → Load LoRA → LTXMultiReferenceSlots → KSampler
↑
LTX Reference Tags → CLIP Text Encode
It needs nothing else - no model, no VAE, just text in, string out. It's a dependency-free convenience node, the kind that looks trivial until you've typed <Image 1> is the... wrong five times in a row.
Install and caveats
Same pack as everything else: ComfyUI Manager → search "ComfyUI-BFSNodes", or clone https://github.com/alisson-anjos/ComfyUI-BFSNodes.git into ComfyUI/custom_nodes, pip install -r requirements.txt if needed, restart. The tag convention you type has to match the one the checkpoint was trained with - most of these LoRAs follow the <Image N> convention, but check the LoRA card before you assume. And remember the bigger picture from the community's early tests: even with the tags right, LTX multi-reference keeps clothing and palette better than faces. The tags get you the separation; identity fidelity is still LTX's weak spot.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| subject_1opt | STRING | What reference image 1 is, as a short noun phrase — 'the woman', 'the red sports car'. Becomes '<Image 1> is <this>.'. Leave empty to skip. | |
| subject_2opt | STRING | What reference image 2 is, as a short noun phrase — 'the woman', 'the red sports car'. Becomes '<Image 2> is <this>.'. Leave empty to skip. | |
| subject_3opt | STRING | What reference image 3 is, as a short noun phrase — 'the woman', 'the red sports car'. Becomes '<Image 3> is <this>.'. Leave empty to skip. | |
| subject_4opt | STRING | What reference image 4 is, as a short noun phrase — 'the woman', 'the red sports car'. Becomes '<Image 4> is <this>.'. Leave empty to skip. | |
| subject_5opt | STRING | What reference image 5 is, as a short noun phrase — 'the woman', 'the red sports car'. Becomes '<Image 5> is <this>.'. Leave empty to skip. | |
| subject_6opt | STRING | What reference image 6 is, as a short noun phrase — 'the woman', 'the red sports car'. Becomes '<Image 6> is <this>.'. Leave empty to skip. | |
| sceneopt | STRING | The scene description, appended after the declarations. Refer back to the subjects by tag here ("<Image 1> hands <Image 2> a cup") — a tag that only ever appears in the declaration has to carry both jobs at once, which is a harder association for the model to use. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| prompt | STRING | — |