Cache KV
Le cache qui stocke les vecteurs « clé » et « valeur » du mécanisme d'attention pour les tokens déjà traités, afin de ne pas avoir à les recalculer à chaque nouveau token généré. Absolument déterminant pour que la génération de texte autorégressive reste rapide.
Pourquoi : un LLM génère un token à la fois, et chaque nouveau token doit « regarder » tous les tokens précédents via l'attention. Sans cache, toute la séquence serait recalculée à chaque étape (un gaspillage quadratique). Le cache KV conserve les vecteurs clé/valeur de tous les tokens précédents ; à chaque nouvelle étape, seuls les vecteurs du nouveau token sont calculés puis comparés au cache. Problème : le cache croît linéairement avec la longueur de la séquence ET avec la taille du batch, et devient vite le principal poste de consommation mémoire en contexte long → un goulot d'étranglement pour le débit. Solutions : PagedAttention (gestion mémoire efficace), grouped-query attention (moins de têtes KV), et quantification du cache KV. La structure de données centrale de l'inférence des LLM.