Notes formateur: Poser le problème avant de nommer le mécanisme. Recueillir une prédiction initiale et la conserver pour le ticket de sortie.
Notes formateur: Faire relier chaque étape à la suivante par un verbe causal. Signaler toute flèche purement décorative.
Notes formateur: Ouvrir par l’anecdote du broadcasting silencieux : un (3,) contre une (2,2) refuse, mais certaines formes fausses « marchent » et font n’importe quoi. Demander qui a déjà perdu une heure là-dessus — les mains levées installent le réflexe mieux qu’une règle.
Notes formateur: Faire écrire les dimensions au tableau avant toute opération. Refuser explicitement une multiplication incompatible devant le groupe : c’est le réflexe qui sauve les séances 14 à 18, où les formes deviennent plus difficiles à suivre de tête. Demander systématiquement « quelle forme entre, quelle forme sort ? ».
Notes formateur: Réponse : k vᵀ (et qᵀS) échoue — k a 3 composantes contre 2 lignes de S ; on corrige d’abord d_k, la projection qui produit k. Le contrôle précède le calcul parce qu’une forme fausse peut s’exécuter par broadcasting et corrompre l’aval sans erreur. Erreur attendue : « on tronque k à deux composantes ».
Notes formateur: Question d’accroche : « une mémoire sans adresses, à quoi ça ressemble ? ». Réponse visée : à une pile où tout se mélange. Garder cette image au tableau — l’interférence du dernier beat la recyclera telle quelle.
Notes formateur: Demander le signe du produit scalaire avant tout calcul. Deux vecteurs orthogonaux donnent zéro, et c’est ce zéro qui rend l’adressage possible : sans lui, chaque requête lirait toutes les écritures. Faire formuler cette conséquence par un apprenant plutôt que l’annoncer.
Notes formateur: Réponse : l’écriture posée sur k=[0,1] est invisible pour q=[1,0] — contribution nulle. Ce zéro est recherché : il isole les adresses. Si toutes les clés étaient identiques, chaque lecture rendrait la somme de toutes les valeurs — une mémoire à une seule case. Erreur attendue : « q·k = 0 est un bug ».
Notes formateur: Faire placer q=[1,1] sur le dessin : il est à 45° des deux axes, donc il lit les deux lignes à parts égales. La géométrie annonce le résultat [7,4] du contrôle suivant avant tout calcul.
Notes formateur: Faire dessiner une matrice vide 2×2 et demander : « où ranger [2,3] pour que q=[1,0] la retrouve ? ». Les propositions spontanées (case (1,1) ? diagonale ?) font sentir le besoin d’une règle — k vᵀ EST cette règle.
Notes formateur: Beaucoup confondent produit scalaire et produit extérieur. Faire nommer la forme de sortie de chacun — un scalaire contre une matrice — avant de continuer, et écrire les deux côte à côte au tableau. La confusion non traitée ici réapparaît systématiquement en session 14 sur la règle delta.
Notes formateur: Réponse : k vᵀ = [[0,0],[5,1]] ; la ligne 2 change (k₂ = 1), la ligne 1 reste intacte (k₁ = 0) — la localisation vient des zéros de k. Erreur attendue : transposer et poser [5,1] en colonne ; faire vérifier la forme 2×2 au tableau.
Notes formateur: Faire remplir les quatre cases une par une avec la règle kᵢ × vⱼ avant de montrer le résultat. La ligne de zéros doit venir d’eux : c’est elle qui rend l’écriture « adressée ».
Notes formateur: Demander d’abord : « combien d’opérations pour lire dans une liste de 100 000 entrées ? » puis « et dans une matrice ? ». Le contraste O(n)/O(1) doit précéder la formule, pas l’illustrer après coup.
Notes formateur: Masquer le résultat et faire prédire y à main levée. L’erreur classique consiste à attendre la dernière valeur écrite plutôt que la somme que la requête reconstruit. Recueillir une prédiction fausse et la réparer publiquement vaut mieux que dérouler le calcul juste.
Notes formateur: Réponse : y = [7,4] = [2,3] + [5,1] — aucune des valeurs stockées. « Lire » signifie combiner au prorata de q·k, pas retrouver. Erreur attendue : prédire [5,1], la dernière écriture — c’est exactement l’erreur que la prédiction à main levée doit faire émerger.
Notes formateur: Faire estimer la mémoire d’un cache KV à 100 000 tokens avant d’afficher le support visuel. Les estimations s’étalent typiquement sur trois ordres de grandeur — c’est précisément le symptôme que cette session soigne.
Notes formateur: Relier au coût produit : faire calculer la mémoire d’un cache KV à 100 000 tokens, puis la comparer à celle de S, inchangée. Le contraste chiffré porte toute la séance et prépare la session 18. Ne pas donner le résultat : le faire produire.
Notes formateur: Réponse : S reste à d_k × d_v ; le cache KV est multiplié par 100 (O(n)) ; c’est le cache qui apparaît sur la facture — voir le support visuel : 500 Kio → ≈ 49 Mio par tête et par couche, quand S reste à 32 Kio. Erreur attendue : « S grandit aussi, un peu ».
Notes formateur: Faire refaire les deux multiplications à la calculatrice : 2×128×2×100 000 contre 128×128×2. Puis annoncer que la session 18 refera ce calcul à l’échelle d’un vrai modèle (32 couches, 8 têtes) — mêmes formules, facteurs en plus.
Notes formateur: Rejouer la lecture [11,12] et demander : « qui a bugué ? ». Réponse visée : personne — l’addition a fait exactement son travail. Le malaise de cette réponse est le point d’entrée du beat ; ne pas le désamorcer trop vite.
Notes formateur: Faire construire un cas d’interférence par les apprenants eux-mêmes, en choisissant leurs propres clés proches. Une collision qu’ils ont fabriquée se retient bien mieux qu’une collision montrée, et rend la notion de « clés assez séparées » concrète avant les portes de la session 16.
Notes formateur: Réponse : la quantité perdue est la distinction entre les deux écritures — la somme est exacte, l’attribution est perdue. Mesure de production : un test de rappel contrôlé (insérer des paires clé→valeur connues, mesurer le taux de restitution exacte selon longueur et similarité des clés). Erreur attendue : proposer d’inspecter S, illisible en pratique.
Notes formateur: Dérouler ligne par ligne. Une incohérence se localise à la première étape fautive, pas seulement sur la dernière ligne.
Notes formateur: Faire remplir la dernière ligne par les apprenants avant de la révéler : c’est le compromis qui décide en production.
Notes formateur: Conserver les valeurs initiales et finales. Interdire les changements simultanés qui rendent l’écart impossible à attribuer.
Notes formateur: Pour chaque affirmation, faire produire le contre-exemple minimal par le groupe avant de donner la correction.
Notes formateur: Séparer mécanisme vérifiable, choix d’implémentation rapporté et résultat expérimental. La précision de la preuve doit suivre celle de l’affirmation.
Notes formateur: Réponses : S devient 3×2 (d_k = 3, d_v = 2). Les DEUX lectures se dégradent — q=k₁ lit [4,8 ; 3] au lieu de [2,3] et q=k₂ lit [7,8 ; 1] au lieu de [5,1] : k₃ chevauche les deux adresses et y dépose 0,7 × [4,0] = [2,8 ; 0]. Règle : une écriture est gratuite si et seulement si sa clé est orthogonale à toutes les clés qu’on voudra encore relire. Idée fausse attendue : « seule la lecture la plus proche est touchée ». 10 minutes, binômes.
Notes formateur: Faire reconstruire la chaîne sans regarder les slides, puis remplir le ticket en six lignes maximum. Comparer à la prédiction initiale du premier slide et nommer ce qui a réellement changé.