ComfyUI Node
LC Krea2 Block Merge Advanced
Krea2 checkpoint merge with a draggable per-block ratio curve across the 28 uniform MMDiT blocks, plus individual sliders for the 10 named regions (first/tmlp/txtmlp/tproj, txtfusion.* x5, last). Reuses ComfyUI's own ModelMergeBlocks patch mechanism (get_key_patches + add_patches, longest-prefix-match) — no custom tensor math. Save writes web/krea2_block_presets/<name>.json (blocks + named sliders together).
LC Krea2 Block Merge Advanced
- model1
- model2
- model
◄preset50_50►
◄edit_modesmooth►
◄smooth_radius2►
◄blocks_curve0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5►
◄first0.50►
◄tmlp0.50►
◄txtmlp0.50►
◄tproj0.50►
◄txtfusion_layer00.50►
◄txtfusion_layer10.50►
◄txtfusion_projector0.50►
◄txtfusion_refiner00.50►
◄txtfusion_refiner10.50►
◄last0.50►
◄save_name►
◄save_curvefalse►
CategoryLC ModelBuilder/Krea2
Inputs (18)
| Name | Type | Default | Description |
|---|---|---|---|
| model1 | MODEL | Ratio 0 side. Blocks/regions at 0.0 come entirely from this checkpoint. | |
| model2 | MODEL | Ratio 1 side. Blocks/regions at 1.0 come entirely from this checkpoint. | |
| preset | COMBO | 50_50 | 9 bundled presets (50_50, face_favor, detail_focus, style_favor, sine_wave, resonance_blocks, even_blend, core_focus, heavy_transplant_anchored) plus anything you save yourself. Loading one sets both the 28-block curve and the 10 named sliders. Custom keeps whatever is currently dragged/typed. |
| edit_mode | COMBO | smooth | smooth = drag one block and blend neighbors. spike = move one block only. |
| smooth_radius | INT | 20–8 | Neighbor window (in blocks) for smooth mode (0 = spike-like). |
| blocks_curve | STRING | 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 | Comma list of 28 ratios (blocks.0. - blocks.27.). 0 = all model1, 1 = all model2. Source of truth when preset is Custom. |
| first | FLOAT | 0.500–1 | first. — earliest input/embedding weights, before block 0. |
| tmlp | FLOAT | 0.500–1 | tmlp. — timestep-embedding MLP (timestep conditioning). |
| txtmlp | FLOAT | 0.500–1 | txtmlp. — text-embedding MLP (text conditioning). |
| tproj | FLOAT | 0.500–1 | tproj. — timestep projection layer. |
| txtfusion_layer0 | FLOAT | 0.500–1 | txtfusion.layerwise_blocks.0. — first text/image fusion block. |
| txtfusion_layer1 | FLOAT | 0.500–1 | txtfusion.layerwise_blocks.1. — second text/image fusion block. |
| txtfusion_projector | FLOAT | 0.500–1 | txtfusion.projector. — projects fused text features into the main stream. |
| txtfusion_refiner0 | FLOAT | 0.500–1 | txtfusion.refiner_blocks.0. — first fusion refiner block. |
| txtfusion_refiner1 | FLOAT | 0.500–1 | txtfusion.refiner_blocks.1. — second fusion refiner block. |
| last | FLOAT | 0.500–1 | last. — final output layer, after block 27. |
| save_name | STRING | Filename under web/krea2_block_presets/ (no extension). | |
| save_curve | BOOLEAN | false | On run, write save_name.json into web/krea2_block_presets/. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |