Dans un Transformer standard, chaque token passe par le même réseau feedforward (FFN) dans chaque couche. Dans un Transformer MoE, ce FFN unique est remplacé par plusieurs FFN parallèles — les « experts » — plus un petit réseau de routage (souvent appelé porte, ou gate) qui décide quels experts traitent chaque token. Typiquement, la porte sélectionne les top-k experts (habituellement 2) et mélange leurs sorties en utilisant les poids softmax de la porte. L'intuition clé est que le nombre total de paramètres peut être massif (donnant au modèle une énorme capacité de mémorisation et de généralisation), tandis que le calcul par token reste gérable parce que la plupart des experts sont inactifs pour une entrée donnée. Mixtral 8x7B, par exemple, a environ 47 milliards de paramètres au total mais n'en active qu'environ 13 milliards par token.
Le mécanisme de routage est là où réside la majeure partie de la complexité d'ingénierie. Un routeur naïf pourrait envoyer tous les tokens aux mêmes quelques experts, laissant les autres inutilisés — un problème appelé effondrement d'experts (expert collapse). Pour éviter cela, les modèles MoE utilisent des pertes auxiliaires d'équilibrage de charge qui pénalisent l'utilisation inégale des experts pendant l'entraînement. Le Switch Transformer original de Google utilisait un routage top-1 (un expert par token) et a obtenu un passage à l'échelle impressionnant, mais la plupart des modèles MoE modernes préfèrent le routage top-2 pour la stabilité. Certaines approches plus récentes comme DeepSeekMoE ajoutent des experts partagés qui s'activent toujours aux côtés des experts routés, garantissant un niveau de base de traitement pour chaque token indépendamment des décisions de routage.
Le compromis qui définit le déploiement MoE est mémoire contre calcul. Même si seule une fraction des experts est active par token, tous doivent être chargés en mémoire. Un modèle MoE 8x7B nécessite environ la même mémoire qu'un modèle dense de 47 milliards de paramètres, même s'il tourne à peu près à la vitesse d'un modèle dense de 13 milliards. Cela rend les modèles MoE difficiles à exploiter sur du matériel grand public — si vous ne pouvez loger que 13 milliards de paramètres dans votre VRAM GPU, vous obtiendriez la même vitesse d'inférence d'un modèle dense de 13 milliards sans le surcoût MoE. Le MoE brille vraiment quand vous avez assez de mémoire pour contenir le modèle complet et que vous voulez la meilleure qualité par FLOP. C'est pourquoi c'est un choix naturel pour le service en infonuagique : des fournisseurs comme OpenAI et Mistral peuvent provisionner assez de mémoire sur leurs grappes, et le coût de calcul par requête est ce qui dicte leurs marges.
Le parallélisme d'experts est un pattern de déploiement spécifique au MoE. Dans une configuration multi-GPU, on peut placer différents experts sur différents GPU de sorte que chaque appareil ne détienne et ne calcule qu'un sous-ensemble d'experts. Les tokens sont routés entre les GPU selon les experts dont ils ont besoin, traités, et les résultats sont rassemblés. Cela introduit un surcoût de communication all-to-all mais permet à des modèles bien trop grands pour un seul appareil de tourner efficacement. Les articles GShard et Switch Transformer de Google ont démontré cela à grande échelle, et c'est ainsi que les plus grands modèles MoE sont servis en production aujourd'hui.
Une nuance que les praticiens rencontrent : les modèles MoE peuvent se comporter de manière imprévisible lors du fine-tuning. Si vous faites du fine-tuning sur un domaine étroit, le routeur pourrait commencer à canaliser tous les tokens vers un petit sous-ensemble d'experts, gaspillant effectivement la capacité du reste. Certaines équipes gèlent le routeur pendant le fine-tuning ; d'autres ajoutent de la régularisation supplémentaire. La quantization est un autre piège — les experts qui s'activent rarement ont moins d'échantillons de calibration, donc une quantization post-entraînement naïve peut les dégrader de manière disproportionnée. Le domaine travaille activement à résoudre ces défis opérationnels, mais le MoE est clairement la direction que prennent les choses. Grok, DBRX, Mixtral, et presque certainement GPT-4 l'utilisent tous, et l'argument d'efficacité ne fait que se renforcer à mesure que la taille des modèles augmente.