Texte & documents
Nombres & calcul
Données & formats
Sécurité
Développement & DevOps
Intelligence artificielle
Finances
Santé et bien-être
Productivité
Jeux et divertissement
Multimédia & design
Entreprise
Guide d'utilisation
Que regarde chaque mot ?

L'attention est le cœur des transformers (BERT, GPT…). Chaque token calcule, pour tous les autres, à quel point il doit les « regarder » lorsqu'il construit sa représentation. Vous le voyez ici : la matrice est token à token (chaque ligne somme à 1) et les arcs montrent où regarde le token que vous choisissez. Écrivez votre propre phrase.

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.

Plusieurs têtes

Un transformer n'a pas UNE seule attention, mais plusieurs têtes en parallèle, chacune avec des projections différentes → chacune se concentre sur des relations différentes (l'une sur le mot précédent, une autre sur le sujet…). Changez de tête et observez comme le motif change.

Masque causal (GPT)

Les modèles qui génèrent du texte (GPT) ne peuvent pas regarder vers le futur : chaque token n'attend qu'aux précédents. Activez le masque causal et vous verrez la moitié supérieure de la matrice s'éteindre — c'est ainsi qu'on l'entraîne à prédire le token suivant. Sans masque (BERT), chaque token voit toute la phrase.

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.

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.

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.

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é.

Visualiseur d'attentionCe que regarde chaque mot dans un transformer
Visualiseur d'attentionVoyez quels mots chaque token « regarde » — le mécanisme au cœur d'un transformer
Tête

Cliquez sur un mot pour voir où il regarde :

Elgatosesentóenlaalfombraporqueestabacansado
Matrice d'attention (ligne = depuis, colonne = vers)
ElgatosesentóenlaalfombraporqueestabacansadoElEl → El: 9%El → gato: 3%El → se: 13%El → sentó: 3%El → en: 0%El → la: 2%El → alfombra: 1%El → porque: 37%El → estaba: 5%El → cansado: 27%gatogato → El: 3%gato → gato: 1%gato → se: 13%gato → sentó: 6%gato → en: 26%gato → la: 2%gato → alfombra: 10%gato → porque: 2%gato → estaba: 36%gato → cansado: 1%sese → El: 5%se → gato: 4%se → se: 6%se → sentó: 11%se → en: 12%se → la: 13%se → alfombra: 33%se → porque: 1%se → estaba: 13%se → cansado: 1%sentósentó → El: 2%sentó → gato: 11%sentó → se: 19%sentó → sentó: 21%sentó → en: 9%sentó → la: 6%sentó → alfombra: 20%sentó → porque: 3%sentó → estaba: 7%sentó → cansado: 2%enen → El: 3%en → gato: 45%en → se: 17%en → sentó: 13%en → en: 12%en → la: 4%en → alfombra: 1%en → porque: 2%en → estaba: 1%en → cansado: 1%lala → El: 6%la → gato: 11%la → se: 25%la → sentó: 34%la → en: 7%la → la: 3%la → alfombra: 4%la → porque: 3%la → estaba: 6%la → cansado: 1%alfombraalfombra → El: 6%alfombra → gato: 13%alfombra → se: 21%alfombra → sentó: 21%alfombra → en: 7%alfombra → la: 8%alfombra → alfombra: 10%alfombra → porque: 6%alfombra → estaba: 4%alfombra → cansado: 5%porqueporque → El: 26%porque → gato: 17%porque → se: 9%porque → sentó: 11%porque → en: 2%porque → la: 7%porque → alfombra: 4%porque → porque: 5%porque → estaba: 9%porque → cansado: 9%estabaestaba → El: 14%estaba → gato: 13%estaba → se: 15%estaba → sentó: 32%estaba → en: 11%estaba → la: 3%estaba → alfombra: 2%estaba → porque: 7%estaba → estaba: 1%estaba → cansado: 2%cansadocansado → El: 17%cansado → gato: 17%cansado → se: 7%cansado → sentó: 27%cansado → en: 11%cansado → la: 7%cansado → alfombra: 6%cansado → porque: 2%cansado → estaba: 5%cansado → cansado: 2%

Ceci 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é.