ModelMergeMochiPreview_motorway_edition
48 blocks of video transformer, blended in the Motorway
- MOTORWAY 🚌💨
- MOTORWAY 🚌💨
Mochi 1 was Genmo's shot at a high-quality open video model, and its backbone is a big transformer - 48 main blocks plus embedders. ModelMergeMochiPreview is ComfyUI's per-block merge node for it, and this is its Motorway-ed clone. The "Preview" in the name isn't a joke about quality; it's because Mochi's open release was a preview of the full model family, and this merge node covers that specific architecture.
The block layout
pos_frequencies- the positional encoding, which teaches the model where each token is in space and time. If you're merging two checkpoints that differ in training resolution or frame handling, this region can matter more than you'd expect.t_embedder- the timestep conditioning.t5_y_embedderandt5_yproj- the T5 text-encoder conditioning path. Text understanding lives here.blocks.0–blocks.47- the 48 transformer blocks that make up the body. Lower blocks are earlier in the network (structure, coarse motion); the higher ones carry fine temporal detail and texture.final_layer- the output projection back to the latent.
Every ratio defaults to 1.0 - the family trap again: untouched, the node returns model2. The pattern is the same as every per-block merge: choose a base blend for all the floats, sample, then push the regions you care about (embedders for conditioning, late blocks for detail).
Honest framing: Mochi's checkpoint ecosystem was always thin, and it's been largely superseded in community mindshare by Wan, Hunyuan and LTX for local video. You're most likely to hit this node because it's part of the auto-generated clone family or because you're experimenting with Mochi checkpoints - both are fine, just know the node is architecture-specific and won't map to other video models' layouts.
The inputs
INPUT_model1_key(defaultmodel1) andINPUT_model2_key(defaultmodel2) - the two Mochi models.- The block ratios, each 0.0–1.0, step 0.01, default 1.0.
OUTPUT_MODEL_key(defaultMODEL) - where the merged model lands.
The wrapper keeps every ratio as a widget, turns the models into key strings, and keyed-writes the result. Runtime behavior matches stock ModelMergeMochiPreview.
Install
One install for the whole pack. ComfyUI Manager, search "ComfyUI_agilly1989_motorway", or:
cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway
Restart ComfyUI. No requirements.txt, no model downloads.
Troubleshooting
- Result is pure model2? All ratios default to 1.0 - set a base blend first.
- Merge Mochi with Mochi only. LTX has 28 transformer blocks and a totally different embedder set, Cosmos has its own layout - the numbers won't line up across families.
'MotorwayClass' object has no attribute 'hash_'= a model key isn't in the Motorway; check the loaders ran and the key spelling matches (case-sensitive).- Pack caveats: BETA, and the newest published version (1.1.7) disabled clone generation, so on a fresh install these
_motorway_editionnodes may be missing from the menu. They're present in the 1.1.0–1.1.6 builds comfy.icu indexed.
Inputs (57)
| Name | Type | Default | Description |
|---|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — | |
| INPUT_model1_key | STRING | model1 | — |
| INPUT_model2_key | STRING | model2 | — |
| pos_frequencies. | FLOAT | 1.000–1 | — |
| t_embedder. | FLOAT | 1.000–1 | — |
| t5_y_embedder. | FLOAT | 1.000–1 | — |
| t5_yproj. | FLOAT | 1.000–1 | — |
| blocks.0. | FLOAT | 1.000–1 | — |
| blocks.1. | FLOAT | 1.000–1 | — |
| blocks.2. | FLOAT | 1.000–1 | — |
| blocks.3. | FLOAT | 1.000–1 | — |
| blocks.4. | FLOAT | 1.000–1 | — |
| blocks.5. | FLOAT | 1.000–1 | — |
| blocks.6. | FLOAT | 1.000–1 | — |
| blocks.7. | FLOAT | 1.000–1 | — |
| blocks.8. | FLOAT | 1.000–1 | — |
| blocks.9. | FLOAT | 1.000–1 | — |
| blocks.10. | FLOAT | 1.000–1 | — |
| blocks.11. | FLOAT | 1.000–1 | — |
| blocks.12. | FLOAT | 1.000–1 | — |
| blocks.13. | FLOAT | 1.000–1 | — |
| blocks.14. | FLOAT | 1.000–1 | — |
| blocks.15. | FLOAT | 1.000–1 | — |
| blocks.16. | FLOAT | 1.000–1 | — |
| blocks.17. | FLOAT | 1.000–1 | — |
| blocks.18. | FLOAT | 1.000–1 | — |
| blocks.19. | FLOAT | 1.000–1 | — |
| blocks.20. | FLOAT | 1.000–1 | — |
| blocks.21. | FLOAT | 1.000–1 | — |
| blocks.22. | FLOAT | 1.000–1 | — |
| blocks.23. | FLOAT | 1.000–1 | — |
| blocks.24. | FLOAT | 1.000–1 | — |
| blocks.25. | FLOAT | 1.000–1 | — |
| blocks.26. | FLOAT | 1.000–1 | — |
| blocks.27. | FLOAT | 1.000–1 | — |
| blocks.28. | FLOAT | 1.000–1 | — |
| blocks.29. | FLOAT | 1.000–1 | — |
| blocks.30. | FLOAT | 1.000–1 | — |
| blocks.31. | FLOAT | 1.000–1 | — |
| blocks.32. | FLOAT | 1.000–1 | — |
| blocks.33. | FLOAT | 1.000–1 | — |
| blocks.34. | FLOAT | 1.000–1 | — |
| blocks.35. | FLOAT | 1.000–1 | — |
| blocks.36. | FLOAT | 1.000–1 | — |
| blocks.37. | FLOAT | 1.000–1 | — |
| blocks.38. | FLOAT | 1.000–1 | — |
| blocks.39. | FLOAT | 1.000–1 | — |
| blocks.40. | FLOAT | 1.000–1 | — |
| blocks.41. | FLOAT | 1.000–1 | — |
| blocks.42. | FLOAT | 1.000–1 | — |
| blocks.43. | FLOAT | 1.000–1 | — |
| blocks.44. | FLOAT | 1.000–1 | — |
| blocks.45. | FLOAT | 1.000–1 | — |
| blocks.46. | FLOAT | 1.000–1 | — |
| blocks.47. | FLOAT | 1.000–1 | — |
| final_layer. | FLOAT | 1.000–1 | — |
| OUTPUT_MODEL_key | STRING | MODEL | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — |