FlexUMM: Flexible Representation Learning for Unified Multimodal Models
Organizations: Carnegie Mellon University · William & Mary · University of Maryland
Abstract
Unified multimodal models (UMMs) can integrate understanding and generation within a single backbone. However, it is commonly known that these two capabilities can cause conflicting representations, leading to a central question: how representation and computation should be shared across functionalities? Existing UMMs often rely on a largely fixed structure, where different inputs and functionalities follow the same depth and parameter-sharing pattern. We argue that this assumption is too restrictive: more effective unification requires sharing the computation that supports cross-functional communication while specializing the capacity that becomes task- or input-specific. We introduce FlexUMM, a flexible UMM framework that dynamically decides when to preserve shared computation, when to route specialized capacity, and when to stop further processing. Evidence shows that this flexible allocation improves UMMs along two complementary axes. It improves accuracy by reducing harmful competition between functionalities, and it improves efficiency by avoiding unnecessary computation once an input representation is sufficiently mature. Beyond simple architectural unification from the pre-trained models, FlexUMM works as a model-agnostic, functional plug-in to make existing UMMs more unified, stronger, and efficient. Code is available at: https://github.com/AIFrontierLab/TorchUMM/tree/main/src/umm/post_training/flexumm.
Figures & tables
| Model | Params | Understanding | Generation | |||||
| MMMU | MMBench-CN | MMBench-EN | MathVista | MMStar | GenEval | WISE | ||
| Bagel ( Deng et al., 2025 ) | 14B | 51.9 | 80.94 | 82.65 | 71.3 | 63.20 | 78.81 | 0.4044 |
| Janus-Pro ( Chen et al., 2025 ) | 7B | 40.9 | 69.93 | 64.84 | 43.8 | 47.93 | 79.02 | 0.3900 |
| Janus ( Wu et al., 2025a ) | 1.3B | 27.3 | 37.19 | 27.69 | 26.6 | 26.67 | 40.04 | 0.2222 |
| Janus Flow ( Ma et al., 2025 ) | 1.3B | 29.0 | 60.31 | 64.16 | 34.8 | 39.13 | 49.99 | 0.2964 |
| Show-O2 ( Xie et al., 2026 ) | 7B | 47.9 | 76.68 | 77.25 | 51.5 | 54.53 | 59.87 | 0.3595 |
| Setting | Rel. compute | MMMU | MMStar | MathVista | ||
| Aggressive | 0.30 | 26.072 | 0.930 | 52.9 | 71.2 | 69.1 |
| Balanced | 0.50 | 27.841 | 0.993 | 54.0 | 70.9 | 73.4 |
| Conservative | 0.80 | 28.000 | 1.000 | 53.6 | 70.8 | 73.1 |
| Variant | Understanding | Generation | |||||
| MMMU | MMBench-CN | MMBench-EN | MathVista | MMStar | GenEval | WISE | |
| Bagel | 51.9 | 80.94 | 82.65 | 71.3 | 63.20 | 78.81 | 0.4044 |
| Bagel+FlexUMM | 53.6 | 85.87 | 86.81 | 73.1 | 70.80 | 82.03 | 0.4292 |
| Capacity axis: which components are routed | |||||||
| Routed attention, shared FFN | 52.1 | 82.26 | 81.95 | 71.2 | 62.30 | 81.21 | 0.4028 |
| Routed attention, routed FFN | 53.2 | 84.81 | 84.24 | 71.9 | 68.90 | 80.65 | 0.3995 |
| Method | Unison | Unified-Bench | ||||||||
| Int. Cons. | U.-G. Gen. | G.-G. Und. | Mut. Enh. | Overall | CLIP | DINOv2 | DINOv3 | LongCLIP | Overall | |
| Bagel | 80.72 | 72.09 | 33.68 | 35.87 | 55.59 | 89.47 | 78.77 | 72.40 | 93.21 | 83.46 |
| +FlexUMM | 83.21 3.1% | 72.96 1.2% | 37.08 10.1% | 46.08 28.5% | 59.83 7.6% | 90.91 1.6% | 79.88 1.4% | 74.53 2.9% | 94.87 1.8% | 85.05 1.9% |
| Model | C-Unsafe | C-Reject | I-Unsafe | Both-Safe |
| Bagel | 43.72% | 5.07% | 49.20% | 43.96% |
| +FlexUMM | 42.35% | 5.23% | 49.06% | 44.86% |
| Backbone | Method | Understanding | Generation | Efficiency | |||||
| MMMU | MMBench-CN | MMBench-EN | MathVista | MMStar | GenEval | WISE | Rel. compute | ||
| Bagel | Full backbone | 51.9 | 80.94 | 82.65 | 71.3 | 63.20 | 78.81 | 0.4044 | 1.00 |
| FlexUMM | 54.0 4.0% | 85.87 6.1% | 86.75 5.0% | 73.4 2.9% | 70.93 12.2% | 82.03 4.1% | 0.4292 6.1% | 0.96 | |
| Janus-Pro | Full backbone | 40.89 | 64.84 | 69.93 | 43.8 | 47.93 | 79.02 | 0.3900 | 1.00 |
| FlexUMM | 46.11 12.8% | 68.47 5.6% | 73.11 4.5% | 51.0 16.4% | 52.33 9.2% | 81.03 2.5% | 0.4095 5.0% | 0.96 | |
| Harmon | Full backbone | 35.0 | 39.43 | 48.94 | 22.0 | 36.53 | 67.81 | 0.3917 | 1.00 |
Appendix figures & tables18 assets
Supplementary material from the paper’s appendix.
Appendix
| Backbone | Params | Lang. layers | Candidate depths | Experts | Trained params |
| Bagel | 14.607B | 28 | 2 | 0.056B (+0.381%) | |
| Janus-Pro | 7.420B | 30 | 2 | 0.035B (+0.472%) | |
| Harmon | 1.5B | 28 | 2 | 0.013B (+0.837%) |
| Regime | Description | ||
| weak-private | 0.5 | Half-amplitude opposing private target | |
| medium-private | 1.0 | Unit-amplitude opposing private target | |
| strong-private | 1.5 | 1.5 -amplitude opposing private target |
| Layer | Attention cosine | FFN cosine | FFN competition |
| 1 | 1.000 | 0.955 | 0.000 |
| 2 | 1.000 | 0.796 | 0.000 |
| 3 | 1.000 | 0.439 | 0.000 |
| 4 | 1.000 | 0.034 | 0.004 |
| 5 | 1.000 | -0.293 | 0.293 |
| 6 | 1.000 | -0.520 | 0.520 |
| Model | Regime | Attention cosine | FFN cosine / competition |
| 4L-8H | medium-private | / | |
| 4L-8H | weak-private | / | |
| 4L-8H | strong-private | / | |
| 8L-8H | medium-private | / | |
| 8L-8H | weak-private | / | |
| 8L-8H | strong-private | / |
| Condition | Shared Attn. | Shared Norm | Attn. cosine | Norm cosine | FFN cosine |
| Shared Attn. + Shared Norm | |||||
| Shared Attn. + Private Norm | N/A | ||||
| Private Attn. + Shared Norm | N/A | ||||
| Private Attn. + Private Norm | N/A | N/A |
| Selected depth | MME samples | Percentage |
| 22 | 296 | 12.47% |
| 23 | 18 | 0.76% |
| 25 | 564 | 23.76% |
| 26 | 1,146 | 48.27% |
| 27 | 52 | 2.19% |
| 28 | 298 | 12.55% |
| Model | Difficulty | Unique best depths | Best-depth mean std | Oracle gain |
| 4L | Uniform | 4 | 0.055 | |
| 4L | Early-heavy | 4 | 0.054 | |
| 4L | Late-heavy | 4 | 0.045 | |
| 8L | Uniform | 8 | 0.106 | |
| 8L | Early-heavy | 8 | 0.102 | |
| 8L | Late-heavy | 8 | 0.088 |
| Variant | Rel. compute | MMMU | MMBench-CN | MMBench-EN | MathVista | MMStar |
| Graded mixing instead of discrete gate | 0.987 | 54.8 | 82.4 | 85.2 | 70.2 | 69.6 |
| No action-mixture target in | 0.988 | 55.2 | 82.0 | 84.0 | 72.2 | 70.4 |
| , | 0.958 | 54.0 | 85.87 | 86.75 | 73.4 | 70.93 |
| 0.978 | 54.4 | 82.0 | 84.8 | 72.4 | 70.2 | |
| 0.951 | 55.2 | 86.6 | 87.1 | 73.6 | 74.4 |
| Suite | Case | Task | Chars. | Depth | Halt@26 | Risk@26 | Regret@26 |
| MMBench-EN | 493 | MMBench-English | 66 | 26 | 0.581 | 0.091 | 0.038 |
| MMBench-EN | 630 | MMBench-English | 41 | 26 | 0.640 | 0.081 | 0.030 |
| MMMU | Biology_21 | biology | 218 | 26 | 0.511 | 0.098 | 0.045 |
| MMMU | Biology_8 | biology | 726 | 26 | 0.506 | 0.088 | 0.035 |
| MMMU | Chemistry_30 | chemistry | 257 | 26 | 0.505 | 0.090 | 0.037 |
| MathVista | 129 | iconqa_integer | 104 | 26 | 0.523 | 0.087 | 0.034 |
| Group | Mean halt@26 | Mean risk@26 | Halt pass | Joint pass | |
| early | 10 | 0.546 | 0.092 | 100.0% | 100.0% |
| full | 740 | 0.424 | 0.132 | 5.0% | 0.0% |
| # | Prompt | FlexUMM result | Baseline failure mode |
| 1 | purple pizza | Pass | No purple pizza; red pizza detected |
| 2 | red dog | Pass | Brown dog rather than red |
| 3 | white scissors | Pass | Purple scissors rather than white |
| 4 | purple backpack | Pass | Suitcase/handbag detected, not backpack |
| 5 | chair left of a zebra | Pass | Bench detected; no chair |
| 6 | parking meter above a broccoli | Pass | Parking meter below the broccoli |