ModelMergeCosmosPredict2_14B
NVIDIA's robotics world model, merged for nobody
- model1
- model2
- MODEL
Let's be direct: this is a merge node for Cosmos-Predict2 14B, NVIDIA's world foundation model built for Physical AI - robotics simulators and autonomous systems - and it was never aimed at the image-and-video hobby community. The 14B text-to-image/text-to-video variant drew a fortnight of polite curiosity when it landed in June 2025, got written off as not competitive with Flux, and NVIDIA archived the whole repo in December 2025 in favor of Cosmos-Predict2.5. The model's actual lasting relevance here is as the backbone under Anima - but that's the 2B variant, which has its own node. This 14B one is for people doing world-model experimentation, and pretty much nobody else.
How it works
The standard family engine: model1 is cloned as the base, model2's weights are mixed in per-block as model1_weight * (1 - ratio) + model2_weight * ratio. The slider names match the Cosmos-Predict2 transformer:
pos_embedder.- positional embeddingx_embedder.- the input/image embeddingt_embedder.andt_embedding_norm.- timestep conditioning and its normblocks.0.–blocks.35.- the 36 transformer blocks (this is the 14B layout; the 2B has 28 and a different node)final_layer.- output head
And the family trap: every slider defaults to 1.0 = "take model2," so an untouched run outputs pure model2 rather than a blend. Base in model1, flavor in model2, lower sliders to mix.
Gotchas
Both MODEL inputs must be Cosmos-Predict2-14B. Cross it with the 2B variant and the block counts don't line up - no matching weight keys, merge silently no-ops, you get model1 back. Same rule as every node in this family: same architecture or nothing happens.
The output is a MODEL that wires into the normal sampling pipeline for this model type. Only weights change, so conditioning, sampling and decoding are exactly as they'd be for either input.
The honest take
You are almost certainly here because a workflow you downloaded used this node, or you're cataloging ComfyUI's model coverage, rather than because you have a burning need to merge two 14B world models. That's fine - the node works, it ships with core, and it exists for the same reason all the model-specific merge nodes do: when an architecture lands in ComfyUI, a block-merge node lands with it. If you do use it, expect to be on your own - there's no accumulated community lore about merging Cosmos checkpoints, because nobody did it. Treat it as an experiment and keep expectations low. It landed June 2025 as part of the Predict2 support, and NVIDIA archiving the upstream repo hasn't changed that the node still works for the weights already in circulation.
Inputs (43)
| Name | Type | Default | Description |
|---|---|---|---|
| model1 | MODEL | — | |
| model2 | MODEL | — | |
| pos_embedder. | FLOAT | 1.000–1 | — |
| x_embedder. | FLOAT | 1.000–1 | — |
| t_embedder. | FLOAT | 1.000–1 | — |
| t_embedding_norm. | 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 | — |
| final_layer. | FLOAT | 1.000–1 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |