L'attention est le mécanisme central des transformers (BERT, GPT, Llama…). Chaque mot (token) n'est pas traité isolément : il regarde les autres et décide combien chacun pèse en construisant sa propre signification. Ainsi, dans « Le chat… parce qu'il était fatigué », « était » peut apprendre à se concentrer sur le chat. Tu le vois ici de deux façons : la matrice token à token (chaque ligne totalise 1 = 100 %) et les arcs au-dessus de la phrase. Écris ta propre phrase et expérimente.
key
Query, Key et Value (Q/K/V)
Pour décider qui regarder, chaque token produit trois vecteurs : Query (Q, « ce que je cherche »), Key (K, « ce que j'offre ») et Value (V, « ce que j'apporte si on me regarde »).
• Le poids du token i sur le j est le produit scalaire de la Query de i par la Key de j. • On divise par √dk (mise à l'échelle, pour que les nombres ne s'emballent pas) puis on passe par softmax, qui convertit les poids de chaque ligne en pourcentages qui totalisent 1. • En résumé : A = softmax(Q·Kᵀ / √dk). Cet outil dessine cette matrice A ; un modèle réel utiliserait ces poids pour mélanger les Value.
diversity_2
Pourquoi plusieurs têtes
Un transformer n'a pas UNE seule attention, mais plusieurs têtes (ici 4) en parallèle. Chaque tête utilise des projections Q/K différentes, elle apprend donc à se concentrer sur des relations différentes : l'une sur le mot précédent, une autre sur le sujet, une autre sur l'accord… puis elles se combinent. Change de tête avec les boutons 1–4 et observe comme le motif change complètement pour la même phrase.
arrow_forward
Masque causal : ne pas regarder vers le futur
Les modèles qui génèrent du texte (GPT) prédisent le mot suivant, ils ne peuvent donc pas regarder vers le futur : chaque token n'attend que lui-même et les précédents. Active le masque causal (GPT) et tu verras toute la moitié supérieure droite de la matrice s'éteindre — ces positions futures sont mises à 0 avant le softmax. Sans masque, comme dans BERT, chaque token voit toute la phrase, à gauche et à droite.
grid_on
Comment lire la carte de chaleur
La matrice d'attention est une carte de chaleur token × token : la ligne est le token qui regarde (depuis) et la colonne le token regardé (vers).
• Plus la cellule est bleu intense, plus le poids est élevé ; le blanc est presque nul. • Chaque ligne totalise 100 % (c'est une distribution). • Passez la souris sur une cellule pour lire la valeur exacte (p. ex. chat → chat : 40 %). • La diagonale s'allume souvent : un token s'attarde presque toujours pas mal sur lui-même.
timeline
Les arcs : où regarde un token
Sur la bande de la phrase, cliquez sur un mot et des arcs apparaissent vers les mots qu'il regarde, tirés de cette ligne de la matrice. L'épaisseur et l'opacité de chaque arc sont proportionnelles au poids (les poids inférieurs à 2 % sont masqués). Cliquez à nouveau pour désélectionner. C'est la même information qu'une ligne de la carte de chaleur, mais dessinée sur le texte pour la lire d'un coup d'œil.
play_circle
Comment l'utiliser (étape par étape)
1. Écrivez une phrase dans le champ du haut (elle est tokenisée par mots et signes, jusqu'à 40 tokens). 2. Choisissez une Tête (1–4) pour voir différents motifs. 3. Cochez ou décochez le Masque causal pour comparer GPT vs BERT. 4.Cliquez sur un mot (dans la bande ou sur son étiquette de ligne) pour dessiner ses arcs. 5. Passez la souris sur la carte de chaleur pour lire les poids exacts. Tout se recalcule instantanément, dans votre navigateur.
smart_toy
Cette démo face à un modèle réel
Ce visualiseur est pédagogique et déterministe (hors ligne) : les vecteurs de chaque token sont générés par hash (tokens identiques → même vecteur) plus un encodage positionnel sinusoïdal, et les projections Q/K sont fixées avec une graine, si bien que le résultat est reproductible. Le calcul d'attention (produit scalaire mis à l'échelle + softmax, avec masque causal optionnel) est réel. Un vrai modèle apprend Q/K/V à partir de données et empile des dizaines de couches et de têtes. Voir aussi : Tokeniseur, Mini-LLM et Réducteur de dimensionnalité.
center_focus_strongVisualiseur d'attentionCe que regarde chaque mot dans un transformer
hub
Visualiseur d'attentionVoyez quels mots chaque token « regarde » — le mécanisme au cœur d'un transformer
smart_toyCeci est le mécanisme d'attention (produit scalaire mis à l'échelle + softmax). Un vrai modèle apprend les projections Q/K/V et empile des dizaines de couches et de têtes, mais l'idée est celle-ci. Voir aussi : Tokeniseur, Mini-LLM et Réducteur de dimensionnalité.