Nodes/Mikey Nodes/SD3 Text Conditioning With Options. One Prompt (Mikey)
ComfyUI Node

SD3 Text Conditioning With Options. One Prompt (Mikey)

SD3 Text Conditioning With Options. One Prompt (Mikey) — ComfyUI Node

By bash-j·Created 3 years ago·Updated 10 months ago· 188
SD3 Text Conditioning With Options. One Prompt (Mikey)
  • clip
  • positive_conditioning
  • negative_conditioning
positive_promptpositive prompt
negative_promptnegative prompt
option_positive_clip_lUnmodified
option_positive_clip_gUnmodified
option_positive_t5xxlUnmodified
option_negative_clip_lUnmodified
option_negative_clip_gUnmodified
option_negative_t5xxlUnmodified
padding_character,

SD3 is the model with three separate text encoders bolted onto one diffusion backbone - CLIP-L, OpenCLIP-G, and T5-XXL - and every one of them gets a say in what your image looks like. Stock ComfyUI's triple-clip encoder treats them as a package deal: you type a prompt, all three encoders chew on it, done. This node is what happens when someone decides that's not enough control and lets you tell each of the three encoders something different - for one positive/negative prompt pair, in a single node.

Why you'd want that

The encoders aren't equal. T5-XXL is the expensive one - Stability's own SD3 paper found that dropping it entirely at inference costs almost nothing in aesthetics, a little in prompt adherence, and mostly hits typography. So a very reasonable move is: give CLIP-L and CLIP-G your real prompt, and just don't bother feeding T5 anything - save the compute, keep the look. This node is what gives you that lever per-encoder instead of all-or-nothing. It's also handy if you've noticed CLIP-L/CLIP-G's hard 77-token cap turning long prompts to mush (SD3 truncates ugly past that point, unlike the graceful degrade you get on newer LLM-encoded models) - you can blank or pad the CLIP inputs while keeping T5, which has a much longer effective window, doing the heavy lifting.

The controls that matter

You feed it positive_prompt and negative_prompt as plain text, plus the clip object from SD3's triple CLIP loader. Then, for each of the six slots (positive/negative × clip_l/clip_g/t5xxl), you pick one of three modes:

  • Unmodified - the encoder gets your actual prompt text, normal behavior.
  • Padded - the encoder gets filler instead, built from padding_character (a comma by default) repeated out.
  • Empty - the encoder gets nothing at all.

Out come positive_conditioning and negative_conditioning - plug those straight into your KSampler like any other CONDITIONING pair.

The pack's README doesn't spell out the exact mechanics beyond "text conditioning with additional configurable options," so treat the above as the honest read of what the schema exposes, not a quote from bash-j. What's certain is the shape: six independent switches, one padding character, two conditioning outputs.

Installing it

Same as everything else in this pack - through ComfyUI Manager (search "Mikey Nodes"), or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/bash-j/mikey_nodes

Restart ComfyUI after either method. No extra models to download for this node - it just needs an SD3 checkpoint and its matching triple CLIP loader already in your graph.

Where people get tripped up

The clip input has to come from an actual SD3 triple-encoder loader, not a regular SDXL or Flux CLIP loader - SD3's CLIP object is structured differently (it's carrying three sub-encoders, not one or two), and feeding it the wrong type will error rather than silently degrade.

Worth knowing before you sink time into tuning this node: SD3 itself is a fairly quiet corner of the ecosystem these days. CivitAI pulled the whole family from its generator and eventually from hosting after Stability's 2025 acceptable-use policy revision banned sexual content outright, and the finetune ecosystem never really formed - almost nobody trains on it, almost nobody's shipping new SD3 LoRAs. The people still running SD 3.5 Large mostly use it for a first pass on composition and color, then refine through something newer like Z-Image or Wan. If that's your workflow, this node is genuinely useful for squeezing more control out of a model that doesn't get much tooling attention anymore. If you're just starting a new project, it's worth knowing you're picking a niche architecture before you build a whole pipeline around it.

If your output looks identical regardless of which mode you pick on a given encoder, double-check you're not accidentally leaving every slot on Unmodified - the enum defaults there, so a misclick or a copy-pasted node can silently undo the whole point of using this over the stock triple encoder.

CategoryMikey/SD3/Conditioning

Inputs (10)

NameTypeDefaultDescription
positive_promptSTRINGpositive prompt
negative_promptSTRINGnegative prompt
clipCLIP
option_positive_clip_lCOMBOUnmodified3 options: Unmodified, Padded, Empty
option_positive_clip_gCOMBOUnmodified3 options: Unmodified, Padded, Empty
option_positive_t5xxlCOMBOUnmodified3 options: Unmodified, Padded, Empty
option_negative_clip_lCOMBOUnmodified3 options: Unmodified, Padded, Empty
option_negative_clip_gCOMBOUnmodified3 options: Unmodified, Padded, Empty
option_negative_t5xxlCOMBOUnmodified3 options: Unmodified, Padded, Empty
padding_characterSTRING,

Outputs (2)

NameTypeDescription
positive_conditioningCONDITIONING
negative_conditioningCONDITIONING