Mélange d'experts (MoE) dans les transformateurs

HuggingFace - 26/02
Nous sommes en train de faire progresser et de démocratiser l’intelligence artificielle grâce à l’open source et à la science ouverte.
Retour aux articles

Mélange d'experts (MoE) dans les transformateurs

Publié le 26 février 2026
Mise à jour sur GitHub

Introduction

Au cours des dernières années, la mise à l'échelle de modèles de langage dense a été à l'origine de la plupart des progrès dans les LLM. Depuis les premiers modèles comme l'ULMFiT d'origine (~ 30 millions de paramètres) ou le GPT-2 (1,5 milliard de paramètres, qui à l'époque était considéré comme "trop ​​dangereux à publier" 🧌), jusqu'aux systèmes actuels à cent milliards de paramètres, la recette était simple :

Plus de données + plus de paramètres donnent de meilleures performances.

Les lois de mise à l’échelle ont renforcé cette tendance, mais la mise à l’échelle dense présente des limites pratiques :

  • La formation devient de plus en plus coûteuse.
  • La latence d'inférence augmente.
  • Le déploiement nécessite une mémoire et un matériel importants.

C’est là que le mélange d’experts (MoE) entre en scène.

Si vous êtes déjà familier avec les MoE et que vous souhaitez vous lancer directement dans le travail d'ingénierie effectué sur les transformateurs, vous pouvez vous diriger directement vers Transformateurs et MoE.

De dense à clairsemé : que sont les MoE ?

Un modèle de mélange d'experts conserve la structure principale du Transformer, mais remplace certaines couches denses de rétroaction par un ensemble d'experts. Un « expert » n'est pas un module spécialisé dans un sujet (par exemple, « expert en mathématiques », « expert en code »). C'est simplement un sous-réseau apprenable. Pour chaque jeton, un routeur sélectionne un petit sous-ensemble d'experts pour le traiter.

Figure 1 : L'expert 1 parmi 4 experts est activé (Source : Maarten Grootendorst)

Différents jetons activent différents experts, en fonction de leurs représentations cachées.

La capacité du modèle dépend des paramètres totaux, mais la vitesse d'inférence dépend des paramètres actifs.

C'est l'idée clé.

Par exemple, prenonsgpt-oss-20b. Il possède 21 milliards de paramètres au total, mais utilise 4 experts actifs par jeton, sur un total de 32 experts. Compte tenu des composants partagés et des experts actifs, ce modèle utilise environ 3,6 milliards de paramètres actifs par jeton. En exécutant ce modèle sur un Mac M3 Ultra, doté d'une bande passante mémoire d'environ 800 Go, nous pourrions estimer la vitesse de génération à ~800 / (3,6 * 2)dansbfloat16, où chaque paramètre prend 2 octets. Cela donne environ 111 jetons par seconde. Le chiffre de performance réel que nous obtenons est d’environ 115 tok/s, ce qui est très proche du calcul au dos de l’enveloppe.

Votre navigateur ne prend pas en charge la balise vidéo.

Cette vitesse ultra rapide confirme que le modèle fonctionne approximativement comme un modèle à paramètre 3,6B, mais il a la même capacité (ou qualité) qu'un modèle à paramètre 21B.

(Remarque : la vitesse serait encore plus rapide si nous utilisions des noy...
[Courte citation de 8% de l'article original]

Loading...