βοΈ CR Model Merge Stack
Build a checkpoint-merge recipe with ratios and switches
- model_stack
- MODEL_STACK
- show_help
Checkpoint merging - blending two or more full models together at a given ratio to get something between them - is a real, common practice in this community; whole checkpoint families exist that trace back to a chain of merges. This node is the "recipe" half of doing that in Comfyroll: it builds a list of up to three checkpoints, each with its own merge ratio and an on/off switch, that a separate apply node (CR Apply Model Merge, elsewhere in the pack) actually blends together. Same build-then-apply split as the pack's LoRA stack nodes.
How it works
Each of the three slots takes switch_N (Off/On), ckpt_nameN, model_ratio_N, and clip_ratio_N. The ratios go from -100 to 100 (default 1, step 0.01) - most merges stay within a sane 0β1 range representing "how much of this checkpoint's weights to blend in," but the wider range is there if you want to experiment with extrapolation rather than pure interpolation. An optional model_stack input lets you chain another CR Model Merge Stack node in if three checkpoints isn't enough for your recipe.
Output is a MODEL_STACK - an ordered recipe, not a merged model. Nothing actually gets blended until you run this into the apply node.
Inputs and outputs that matter
switch_N,ckpt_nameN,model_ratio_N,clip_ratio_Nfor N = 1, 2, 3.- Optional
model_stack- chain in another stack node to go past three checkpoints. - Outputs:
MODEL_STACK,show_help.
How to install it
ComfyUI Manager: search "Comfyroll Studio", install, restart. Manual: cd ComfyUI/custom_nodes && git clone https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes.git, restart. All the checkpoints you want to merge need to already be in models/checkpoints before you can pick them here.
Common issues
Merging is a build-time cost you pay once per recipe, and it's real: blending two full checkpoints (several gigabytes each) takes noticeably longer and more RAM/VRAM than a normal generation, so don't expect this to be fast just because the stack node itself is lightweight - the actual work happens at the apply step.
Architecture compatibility is the hard requirement people miss: you can only meaningfully merge checkpoints from the same family (two SDXL checkpoints, say, or two SD1.5 ones) - the weights have to line up layer for layer. Mixing architectures in a stack won't produce a sensible blend even if the node lets you set it up.
It's also worth knowing what you're allowed to do with the result once you've made it: some checkpoint licenses explicitly restrict derivative merges (a NoDerivatives clause blocks it outright), so if you're planning to share or sell a merge built from community checkpoints, check each source checkpoint's license before you do - merging is technically trivial and legally is not always yours to redistribute.
And the standing caveat: if the node's missing from your search menu, that's Comfyroll's shared registration file failing somewhere else in this large pack - check your console log for an import error before troubleshooting this node specifically.
Inputs (13)
| Name | Type | Default | Description |
|---|---|---|---|
| switch_1 | COMBO | 2 options: Off, On | |
| ckpt_name1 | COMBO | 1 options: None | |
| model_ratio1 | FLOAT | 1.00-100β100 | β |
| clip_ratio1 | FLOAT | 1.00-100β100 | β |
| switch_2 | COMBO | 2 options: Off, On | |
| ckpt_name2 | COMBO | 1 options: None | |
| model_ratio2 | FLOAT | 1.00-100β100 | β |
| clip_ratio2 | FLOAT | 1.00-100β100 | β |
| switch_3 | COMBO | 2 options: Off, On | |
| ckpt_name3 | COMBO | 1 options: None | |
| model_ratio3 | FLOAT | 1.00-100β100 | β |
| clip_ratio3 | FLOAT | 1.00-100β100 | β |
| model_stackopt | MODEL_STACK | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| MODEL_STACK | MODEL_STACK | β |
| show_help | STRING | β |