DMoE solves the core architectural bottleneck of LLM knowledge injection. RAG keeps knowledge outside the model shallow, prompt-level, retrieval-bound. Post-training writes knowledge into shared parameters deep but catastrophically fragile, conflict-prone, expensive to update. DMoE decouples both experts and router from the base model entirely: external corpora become independently updatable LoRA modules, activated only when token uncertainty signals the model lacks sufficient knowledge, placed exclusively at the final-layer FFN to preserve KV-cache reuse throughout autoregressive generation.
LLM parametric knowledge is frozen at pre-training. Domain-specific facts go stale. Time-sensitive queries hallucinate. The two dominant responses to this both fail at the architecture level not the implementation level.
DMoE has three parts: a frozen base model, a decoupled router, and a bank of decoupled expert modules. None of the three are jointly trained. The router and experts are built after the base model is fixed, and they can be added, removed, or replaced without touching the backbone.
The router solves two subproblems independently: when to activate experts, and which experts to activate. Token Uncertainty (TU) handles the first. BM25 handles the second. They are not jointly trained and ablations confirm both matter.
This is the key engineering insight. Placing experts at any intermediate layer breaks KV-cache compatibility. The proof is mechanical and the empirical table confirms it.
Table 3 (paper) confirms this empirically. Inserting experts into the final 25%, 50%, 75%, or 100% of FFN layers consistently underperforms the only-last configuration. Only attaching to the single last layer achieves best overall accuracy while preserving cache compatibility. The performance gap isn't marginal earlier placement actively degrades quality because KV mismatch corrupts the attention context.
Evaluated against Basic-RAG, FLARE, PRAG, and SFT-LoRA on HotpotQA (multi-hop), ComplexWebQuestions (open-domain compositional), Quasar-T (open-domain trivia), and StrategyQA (implicit multi-hop). All methods share the same 27,613-passage Wikipedia corpus, same BM25 retriever, same retrieval budget (k=3), greedy decoding.
| Method | CWQ EM | CWQ F1 | HotpotQA EM | Quasar-T EM | StrategyQA ACC |
|---|---|---|---|---|---|
| DMoE | 0.2467 | 0.3479 | 0.1800 | 0.3133 | 0.5667 |
| PRAG | 0.2500 | 0.3284 | 0.0733 | 0.2200 | 0.5600 |
| FLARE | 0.2400 | 0.3154 | 0.0733 | 0.1867 | 0.5367 |
| SFT-LoRA | 0.2167 | 0.3092 | 0.0767 | 0.2133 | 0.5533 |
| Basic-RAG | 0.1633 | 0.2384 | 0.1700 | 0.2800 | 0.4333 |
| Method | Time (s) | GPU Memory (GB) |
|---|---|---|
| FLARE | 9.2643 | 13.97 |
| DMoE | 2.6656 | 7.24 |
| SFT-LoRA | 1.6700 | 4.82 |
| PRAG | 1.3600 | 4.83 |
| Basic-RAG | 1.8900 | 2.54 |
The conventional MoE bottleneck is that all experts must reside in GPU memory simultaneously. DMoE inverts this: experts live on disk, only the top-k selected experts are loaded per triggering event. Bank size scales disk footprint not inference VRAM.
THE
EXPERTS
DON'T
NEED
TO LIVE
INSIDE.