Möbius: A Unified Motion-Language Model Bridging Understanding and Generation
Organizations: The Hong Kong University of Science and Technology · Tencent Games Motus · Massachusetts Institute of Technology
Abstract
We aim to build a truly unified motion model that can understand, generate, and edit human motion within a single framework. Existing motion UMMs remain only partially unified: motion understanding is handled by a language model, while generation is often delegated to a separate diffusion module operating over learned motion latents. We introduce Möbius, which brings the entire diffusion process into the same multimodal representation space used for motion understanding. Clean motion, noisy motion, and text jointly participate in shared attention, while role-specific parameters process understanding and generation streams. Importantly, Möbius operates directly on continuous frame-level raw motion, requiring neither discrete tokenization nor a pretrained motion VAE. This simple formulation naturally supports motion captioning, text-to-motion generation, temporal completion, and instruction-guided editing within a single model. On HumanML3D, Möbius achieves state-of-the-art performance among unified motion models. Scaling to 1.7B parameters and 1,700 hours of motion data further demonstrates that our framework is both effective and scalable.
Figures & tables
| Method | Task | R@1 | R@2 | R@3 | FID | MMDist | Diversity |
|---|---|---|---|---|---|---|---|
| GT | – | 0.7703 | 0.9030 | 0.9442 | 0.0000 | 14.8785 | 27.7705 |
| Trained on HumanML3D | |||||||
| T2M-GPT ( Zhang et al., 2023 ) | Gen. | 0.5516 | 0.7056 | 0.7788 | 25.4913 | 19.0912 | 25.5949 |
| MoMask ( Guo et al., 2024 ) | Gen. | 0.6404 | 0.7974 | 0.8609 | 21.0729 | 18.1216 | 25.9789 |
| MDM ( Tevet et al., 2022 ) | Gen. | 0.5208 | 0.6937 | 0.7701 | 35.5169 | 19.4246 | 25.3383 |
| MotionStreamer ( Xiao et al., 2025 ) | Gen. | 0.6303 | 0.7865 | 0.8498 | 12.2110 | 16.5810 | 27.4637 |
| Method | BLEU-1 | BLEU-4 | ROUGE-L | CIDEr | BERT | R@1 | R@2 | R@3 | MMDist |
|---|---|---|---|---|---|---|---|---|---|
| GT | 1.0000 | 1.0000 | 1.0000 | 4.5165 | 1.0000 | 0.5068 | 0.7064 | 0.8041 | 2.9784 |
| TM2T ( Guo et al., 2022b ) | 0.4912 | 0.0760 | 0.3808 | 0.1719 | 0.3215 | 0.5180 | 0.7178 | 0.8079 | 2.9584 |
| MotionGPT ( Jiang et al., 2023 ) | 0.4605 | 0.1210 | 0.3849 | 0.3409 | 0.3388 | 0.5087 | 0.6880 | 0.7776 | 3.1121 |
| MotionGPT3 ( Zhu et al., 2025 ) | 0.5383 | 0.1605 | 0.4165 | 0.4077 | 0.3425 | 0.5333 | 0.7178 | 0.8043 | 2.8533 |
| UniMuMo ( Yang et al., 2024 ) | 0.4488 | 0.1271 | 0.3560 | 0.3114 | 0.4517 | 0.5162 | 0.7032 | 0.7984 | 2.9658 |
| Ours 0.6B (ML3D only) | 0.5664 | 0.2032 | 0.4636 | 0.5754 | 0.4541 | 0.6056 | 0.7936 | 0.8761 | 2.4693 |
| Method | FID | R@1 | R@2 | R@3 | AvgR | MMDist | Diversity |
|---|---|---|---|---|---|---|---|
| GT | 0.0000 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 0.0000 | 8.3500 |
| Source motion (no edit) | 0.1066 | 0.4640 | 0.6525 | 0.7502 | 3.5100 | 2.2817 | 8.2000 |
| MotionFix (TMED) ( Athanasiou et al., 2024 ) | 0.5282 | 0.3248 | 0.4877 | 0.5982 | 5.3600 | 3.1974 | 7.8900 |
| MotionLab ( Guo et al., 2025 ) | 0.1339 | 0.4610 | 0.6308 | 0.7315 | 3.7500 | 2.4112 | 8.1800 |
| Ours (0.6B) † | 0.0955 | 0.4936 | 0.6821 | 0.7828 | 2.8026 | 1.8749 | 8.4468 |
| Understanding (M2T) | Generation (T2M) | ||||||||||
| ID | Routing | Encoding | Training | R@1 | BLEU-1 | CIDEr | BERT | R@1 | R@3 | FID | MMDist |
| GT | 0.5068 | 1.0000 | 4.5165 | 1.0000 | 0.7703 | 0.9442 | 0.0000 | 14.8785 | |||
| 1 | Dense | VQ | Und. Gen. | 0.5695 | 0.5593 | 0.4568 | 0.4296 | 0.5627 | 0.7741 | 6.0912 | 16.4993 |
| 2 | Role | VAE | Und. Gen. | 0.5846 | 0.5619 | 0.5522 | 0.4404 | 0.8251 | 0.9655 | 5.9970 | 13.8139 |
| 3 | Modality | Frame | Und. only | 0.5675 | 0.5222 | 0.4525 | 0.4134 | – | – | – | – |
| 4 | Modality | Frame | Und. Gen. | 0.0328 | 0.0776 | 0.0040 | -0.3768 | 0.7512 | 0.9250 | 18.0517 | 15.3010 |
Appendix figures & tables11 assets
Supplementary material from the paper’s appendix.
Appendix
| Component | Möbius -0.6B | Möbius -1.7B |
|---|---|---|
| Backbone | Qwen3-0.6B | Qwen3-1.7B |
| Vocabulary size | 151,673 | 151,673 |
| Total parameters | 1.047B | 3.148B |
| Motion representation | HY201, 30 FPS | HY201, 30 FPS |
| Transformer layers | 28 | 28 |
| Hidden dimension | 1,024 | 2,048 |
| Hyper-parameter | Value | Hyper-parameter | Value |
| Training schedule | Generation objective | ||
| M2T training steps | 20,000 | Prediction target | |
| Generation training steps | 200,000 | Timestep sampling | Uniform |
| Warmup steps (each stage) | 2,000 | Motion dimension | 201 |
| Token budget / GPU | 65,536 | Text condition dropout | 0.1 |
| Gradient accumulation | 1 | Geometric loss | Enabled |
| Task | Context / output | Observed motion |
|---|---|---|
| T2M | None | |
| M2T | Full source | |
| Editing | Full source | |
| Prediction | Prefix | |
| Backcasting | Suffix | |
| In-betweening | Prefix and suffix |
| Setting | Text-to-motion | Motion-to-text |
|---|---|---|
| Sampler / decoder | Euler with clean-endpoint-to-velocity conversion | Autoregressive greedy decoding |
| Steps / time grid | 50; uniform on ; timestep shift | Not applicable |
| CFG scale | Not applicable | |
| Initialization / input | Standard Gaussian noise | Observed clean motion |
| Motion length | Reference length, clipped to frames at 30 FPS | Input motion length |
| Response limit / stopping | Not applicable | 128 new tokens; stop at the configured EOS token |
| Model | Task | Batch | Latency (s) | Clips/s | Memory (GiB) | Tokens/clip |
|---|---|---|---|---|---|---|
| 0.6B | T2M | 1 | 4.988 | 0.20 | 1.99 | — |
| 0.6B | T2M | 8 | 6.462 | 1.24 | 2.07 | — |
| 0.6B | M2T | 1 | 0.319 | 3.13 | 2.00 | 10.0 |
| 0.6B | M2T | 8 | 0.898 | 8.91 | 2.16 | 12.4 |
| 1.7B | T2M | 1 | 5.072 | 0.20 | 5.91 | — |
| 1.7B | T2M | 8 | 6.547 | 1.22 | 6.00 | — |
| Metric | Definition and interpretation |
|---|---|
| R@ | Fraction of queries whose paired target ranks among the top candidates in the task-specific embedding space. Ranks are computed within the candidate set of the corresponding protocol. |
| FID | Fréchet distance between Gaussian fits to generated and real motion embeddings; measures distributional agreement. |
| MMDist / MM-D | Mean paired text–motion embedding distance for T2M/M2T; the editing table uses motion–motion distance. This is not maximum mean discrepancy. |
| M2M-Dist | Mean distance between generated and target motion embeddings for editing. |
| AvgR | Mean rank of the paired target in editing retrieval; depends on candidate-set size. |
| Diversity | Mean embedding distance between sampled motion pairs; compare with the real-data reference. |
| Base | Ours | |
|---|---|---|
| Q1. How does the body’s height change when stepping up versus stepping down? | ||
| Answer | When stepping up, the body moves upward as the person lifts the leg and pushes onto the higher surface. When stepping down, the body moves downward as the person lowers the foot to the lower surface and transfers their weight onto it. | The body’s center of mass rises when stepping up and lowers when stepping down, following the change in support height. |
| Q2. What happens to the knee and hip joints when a person squats down? | ||
| Answer | As a person squats down, both the knees and hips bend to lower the body. The knees move forward while the hips move backward, allowing the person to descend while maintaining balance. | Both the knees and hips flex as the body lowers, with increasing joint flexion toward the bottom of the squat. |
| Q3. Why is it harder to maintain balance when hopping on one foot than when jumping on both feet? | ||
| Answer | Hopping on one foot is more difficult because the body has only one foot supporting its weight. This provides less stability and requires more coordination to keep the body upright, whereas using both feet gives a more stable base of support. | One-foot hopping has a smaller support area, requiring tighter control of the center of mass to remain balanced over the supporting foot. |
| Variant | R@1 | R@2 | R@3 | FID | MMDist |
|---|---|---|---|---|---|
| Main-table model | 0.8209 | 0.9397 | 0.9670 | 6.1291 | 13.9973 |
| Multi-task model | 0.8056 | 0.9221 | 0.9583 | 6.6746 | 14.0824 |
| Method | MPJPE | [P]-MPJPE | FID | R1 | R2 | R3 | MM-D |
|---|---|---|---|---|---|---|---|
| GT | 0.000 | 0.000 | 0.000 | 0.448 | 0.646 | 0.767 | 3.466 |
| Motion Prediction | |||||||
| CondMDI ( Cohan et al., 2024 ) | 11.439 | 5.882 | 3.213 | 0.383 | 0.565 | 0.667 | 3.927 |
| Kimodo ( Rempe et al., 2026 ) | 8.781 | 1.368 | 1.480 | 0.337 | 0.503 | 0.616 | 4.532 |
| HY-Motion (1B) ( Wen et al., 2025 ) | 9.372 | 0.856 | 3.185 | 0.401 | 0.592 | 0.701 | 4.148 |
| MotionLab ( Guo et al., 2025 ) | 9.829 | 4.086 | 1.108 | 0.436 | 0.626 | 0.733 | 3.479 |
Human Motion Generation
Human motion generation creates articulated movement from language, audio, video, spatial constraints, or interaction goals.
See all 296 papers