
Tech • IA • Robotique • Jeu
Les modèles de langage Transformer génèrent du texte en prédisant le token suivant à partir du contexte, en utilisant des embeddings, la self-attention, des blocs neuronaux empilés, un pré-entraînement à grande échelle, un post-entraînement orienté instruction, et un cache KV pour une inférence efficace.
Les modèles de langage modernes ne composent pas une réponse d’un seul coup. Ils génèrent le texte un token à la fois, en réutilisant sans cesse le texte déjà produit pour prédire ce qui doit venir ensuite. C’est une forme avancée d’autocomplétion: à chaque étape, le modèle produit une distribution de probabilité sur les tokens suivants possibles, puis un token est sélectionné et ajouté.
Le texte doit d’abord être découpé en éléments appelés tokens. Dans la configuration la plus simple, chaque caractère est un token, ce qui produit un vocabulaire réduit d’environ 65 symboles uniques pour l’anglais avec ponctuation et espaces. Les systèmes réels utilisent généralement une tokenisation en sous-mots, souvent via BPE, ce qui permet de garder les mots fréquents entiers tout en découpant les mots plus rares en parties réutilisables.
Un modèle de langage primitif peut être construit en comptant quel token a tendance à suivre un autre, puis en convertissant ces comptes en probabilités. Il peut aussi utiliser l’échantillonnage au lieu de toujours choisir le résultat le plus probable, et la température peut rendre la sortie plus prévisible ou plus aléatoire. Mais cette approche échoue dès qu’un contexte plus long est nécessaire, car le nombre d’historiques possibles explose: avec 65 caractères possibles et 10 positions d’historique, on obtient environ 1,3 quintillion de combinaisons.
Au lieu de traiter les tokens seulement comme des identifiants, les modèles transformer associent chaque token à un vecteur appelé embedding. Ces vecteurs sont des paramètres appris, stockés dans une matrice d’embedding, et permettent aux tokens utilisés de façon similaire de se retrouver proches les uns des autres dans un espace latent. L’entraînement ajuste ces vecteurs en minimisant la loss par descente de gradient, de sorte que le modèle devient progressivement meilleur pour prédire le token suivant.
Un embedding fixe ne peut pas capturer qu’un mot comme bank a des sens différents selon la phrase. La self-attention résout ce problème en permettant à chaque token de regarder les autres tokens de la même séquence et de décider lesquels comptent le plus. Chaque token produit une query, une key et une value; les comparaisons query-key créent des scores d’attention, softmax les transforme en poids, et les values pondérées sont combinées en une représentation sensible au contexte.
Pendant l’entraînement et la génération, un modèle ne doit pas regarder les tokens futurs; le masquage causal bloque donc l’attention vers les positions ultérieures. Les transformers utilisent aussi l’attention multi-tête, c’est-à-dire plusieurs mécanismes d’attention exécutés en parallèle avec des poids appris différents. Cela permet à une tête de suivre une relation pendant qu’une autre en suit une autre, améliorant la capacité du modèle à représenter simultanément grammaire, références et sens.
L’attention seule ne connaît pas l’ordre des tokens; les modèles ajoutent donc un encodage positionnel aux embeddings. Les vecteurs obtenus passent ensuite dans des blocs transformer répétés combinant attention, feed-forward network, connexions résiduelles et normalisation de couche. L’empilement de ces blocs permet d’affiner l’information au fil de nombreuses étapes, transformant des vecteurs locaux en représentations contextuelles riches.
Les grands modèles sont d’abord construits via un pré-entraînement sur d’immenses corpus de texte et de code, où ils apprennent de larges régularités statistiques de langue, de faits et de style par prédiction du token suivant. Cela seul n’en fait pas des assistants utiles. Le post-entraînement, y compris l’ajustement supervisé et les méthodes fondées sur les préférences, apprend au modèle à suivre des instructions, produire des réponses utiles et se comporter plus régulièrement en contexte interactif.
Au moment de l’inférence, les poids du modèle ne changent plus. Il tokenise le prompt, calcule les probabilités du token suivant, en choisit un, puis recommence. Pour éviter de recalculer les anciennes informations d’attention à chaque nouveau token, les systèmes stockent les keys et values précédentes dans un cache KV, ce qui accélère fortement la génération pour les prompts et sorties longs.
Un modèle avec 7 billion parameters contient environ 7 billion nombres appris. En précision 16-bit, cela représente environ 14 GB pour les seuls poids; 70 billion paramètres demandent environ 140 GB. La quantization réduit cela en stockant les poids en 8-bit ou 4-bit, tandis que la fenêtre de contexte mesure combien de tokens peuvent être pris en compte à la fois. Comme l’attention standard croît approximativement avec le carré de la longueur de séquence, les longs contextes coûtent cher; c’est pourquoi des techniques comme sparse attention et mixture of experts sont utilisées pour améliorer l’efficacité.
Les transformers reposent sur un objectif simple, prédire le token suivant, mais tirent leur puissance de représentations apprises, de l’attention au contexte, de calculs en couches et d’un entraînement massif. Les performances pratiques des systèmes modernes dépendent autant de choix d’ingénierie comme la tokenisation, le cache, la quantification et l’architecture que de la boucle de prédiction elle-même.
Poser une question