Nodes/Tensor Prism/Competitive Model Selector (Tensor Prism)
ComfyUI Node

Competitive Model Selector (Tensor Prism)

Let models fight block-by-block for the merge

By Arctenox·Created 12 months ago·Updated 7 months ago· 2
Competitive Model Selector (Tensor Prism)
  • model_A
  • model_B
  • model_C
  • model_D
  • model_E
  • winner_model
  • competition_report
competition_modetournament
input_blocks_strategycompete
middle_blocks_strategycompete
output_blocks_strategycompete
detail_preservation_weight0.35
coherence_weight0.25
efficiency_weight0.20
innovation_weight0.20
enable_tie_breakingtrue
minimum_quality_threshold0.00

Normal merging asks "how much of each model?" Competitive Model Selector (Tensor Prism) asks a different question: "which model wins this block?" Instead of averaging two models toward the middle, it runs a competition - block by block, up to five models at a time - and builds an output that takes the best tensor from whichever candidate won each block. It's less a merge and more a committee choosing the strongest parts.

That's a genuinely different philosophy, and it's worth being clear-eyed about. A "winner takes the block" model tends to produce punchier, less muddy results than averaging - but it can also produce something that feels frankensteined if the candidates disagree sharply, because there's no interpolation smoothing over the seams.

How it works

model_A and model_B are the minimum; optional model_C, model_D, model_E let you run a five-model battle. Then competition_mode decides how the verdict is reached:

  • tournament - pairwise elimination until one winner per block. The default, and the most decisive.
  • weighted_vote - every model votes, weighted by how it scores on the criteria below.
  • hybrid_blend - winners get most of the weight, losers a taste, so it lands between pure selection and a blend.
  • consensus - only takes a block from a candidate if most models agree; otherwise it falls back to blending.

You also get per-region strategy dials - input_blocks_strategy, middle_blocks_strategy, output_blocks_strategy - each set to compete, favor_A, favor_B, or blend_50. That's the pragmatic part: if you know model A has the composition and model B has the detail, you can force the input region to A and output region to B without any competition at all.

The scoring weights decide what "winning" means: detail_preservation_weight (0.35), coherence_weight (0.25), efficiency_weight (0.2), innovation_weight (0.2). Raise detail preservation when you want texture to dominate; raise coherence when you want the result to hang together. enable_tie_breaking resolves draws, and minimum_quality_threshold (0) rejects any candidate scoring below it.

Outputs are winner_model (MODEL) - wire it to a KSampler - plus competition_report (STRING), a plain-text rundown of who won what. Show that string in a text node; it's genuinely useful for understanding your own merge.

The settings that matter

If you only touch three things: the three region strategies, competition_mode, and detail_preservation_weight. Start with everything on compete and tournament, see which regions the report says each model won, then lock in the obvious winners via favor_A/favor_B and re-run.

Installing it

Part of ComfyUI-Tensor-Prism-Node-Pack. ComfyUI Manager → search "Tensor Prism" → Install, restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/AstrionX/ComfyUI-Tensor-Prism-Node-Pack

No model downloads; deps are torch, numpy, psutil. Ignore the typo'd clone URL in the README.

The honest caveat

Multi-model competition is one of the most experimental ideas in this pack, and it's from a first-time author's openly "vibe-coded" node pack with essentially no community track record. It's fun, it produces interesting hybrids, and the competition_report output is great for learning what your models are actually good at. Just don't expect it to reliably beat a careful hand-tuned merge - treat it as an exploration tool, and always sanity-check the result against a normal merge of the same models.

CategoryTensor_Prism/Advanced

Inputs (15)

NameTypeDefaultDescription
model_AMODEL
model_BMODEL
competition_modeCOMBOtournament4 options: tournament, weighted_vote, hybrid_blend, consensus
input_blocks_strategyCOMBOcompete4 options: compete, favor_A, favor_B, blend_50
middle_blocks_strategyCOMBOcompete4 options: compete, favor_A, favor_B, blend_50
output_blocks_strategyCOMBOcompete4 options: compete, favor_A, favor_B, blend_50
detail_preservation_weightFLOAT0.350–2
coherence_weightFLOAT0.250–2
efficiency_weightFLOAT0.200–2
innovation_weightFLOAT0.200–2
model_CoptMODEL
model_DoptMODEL
model_EoptMODEL
enable_tie_breakingoptBOOLEANtrue
minimum_quality_thresholdoptFLOAT0.000–1

Outputs (2)

NameTypeDescription
winner_modelMODEL
competition_reportSTRING