Selector In (Polarity)...
Route your conditioning by model, not by hand
- conditioning1
- conditioning2
- conditioning3
- conditioning4
- conditioning5
- conditioning6
- conditioning7
- conditioning8
- CONDITIONING
SelInPolar ("Selector In (Polarity)") routes CONDITIONING by model type: eight conditioning inputs, one model_type integer, one CONDITIONING output. It's the Selector In family's entry for the prompt side of the pipeline, and it exists because the conditioning that works for one model family isn't automatically the right conditioning for another.
A couple of honest use cases. If your workflow uses a different positive-prompt pipeline per family - one branch with a CLIP Set Last Layer tweak for SDXL, another with a bare encode for Flux, a third doing perp-neg style conditioning for an advanced sampler - SelInPolar lets you pre-wire them all and switch by number. It also matters when the way you condition differs, not just the text: an SDXL dual-CLIP encode produces different conditioning than a Flux T5 encode, and if you're keeping both families alive in one graph, the conditioning lane has to switch in step with the model lane. That's the whole point of the pack's "one number drives everything" design.
How it works
Pack standard: model_type (1–8) selects conditioning<number>, and the winner flows out the single CONDITIONING output into your KSampler's positive (or negative, if that's the lane you're routing). The inputs are lazy, so only the selected conditioning branch evaluates - relevant when a branch hides expensive operations behind it, like a big text encoder pass or conditioning concatenation.
Inputs & outputs that matter
- model_type (INT, required) - the selector, normally fed by RecourseCkpt's MODEL_TYPE broadcast so it follows the loaded model.
- conditioning1 … conditioning8 (CONDITIONING, optional) - your candidate conditionings from CLIP Text Encode and friends.
- CONDITIONING output - the winner, into the sampler.
Installing it
The pack standard. ComfyUI Manager → search comfyui-selector → install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/exdysa/comfyui-selector
Restart and it's under Selector_Recourse/In. No requirements.txt, no model files, no network access.
Gotchas
- The "polarity" in the name is a slight misnomer here. SelInPolar routes a single CONDITIONING lane - it does not split positive and negative. If you want a two-sided (positive + negative) router, the pack's
RecoursePolarnode is the one that does that, andSelOutPolarsplits one conditioning out to eight lanes. - Empty selected port →
Noneout → sampler doesn't run. The usual "check the model_type number" rule applies. - Conditioning objects are tied to the CLIP that produced them. If you route a Flux T5 encode into a KSampler whose model got switched to SDXL in the same broadcast, you can produce mismatched-conditioning errors. Keep the model lane and the conditioning lane switching together - which is the pack's design intent.
- Single-author, GPL-3.0, quiet since early 2025 - a small pack, but the "keep every lane in step with one number" philosophy is genuinely its best idea.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| model_type | INT | 11–8 | — |
| conditioning1opt | CONDITIONING | — | |
| conditioning2opt | CONDITIONING | — | |
| conditioning3opt | CONDITIONING | — | |
| conditioning4opt | CONDITIONING | — | |
| conditioning5opt | CONDITIONING | — | |
| conditioning6opt | CONDITIONING | — | |
| conditioning7opt | CONDITIONING | — | |
| conditioning8opt | CONDITIONING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CONDITIONING | CONDITIONING | — |