Ce billet explique comment optimiser l'hébergement d'un grand modèle de langage (LLM) en détaillant le mécanisme du KV Cache, essentiel pour gérer l'attention dans les transformers. L'auteur revient sur le fonctionnement des matrices Query, Key et Value (QKV), qui permettent de calculer les relations entre tokens et d'ajuster leur représentation contextuelle. Le KV Cache stocke les vecteurs Key et Value des tokens actifs, réduisant ainsi la charge computationnelle lors des inférences, mais nécessitant une mémoire GPU significative, comme illustré par les 20,77 GiB utilisés pour 209 456 tokens.
L'article aborde ensuite les solutions techniques comme vLLM et KServe, conçues pour améliorer l'efficacité des LLM en production. Ces outils optimisent la gestion des ressources, notamment via des techniques comme le Grouped Query Attention (utilisé par Mistral), qui réduit la redondance des calculs. L'objectif est de concilier performance et scalabilité, permettant aux entreprises de déployer des modèles toujours plus grands tout en maintenant des temps de réponse acceptables pour un grand nombre d'utilisateurs.