Pourquoi l'IA ralentit quand la conversation s'allonge

Vous avez probablement remarqué le phénomène : au début d'une conversation avec une IA, les réponses arrivent quasi instantanément. Mais après une vingtaine de messages, quelques PDF joints et des consignes complexes, l'attente s'allonge sensiblement. Ce n'est pas un bug. C'est un problème fondamental de contexte et de calcul.

Le contexte : tout ce que l'IA garde en mémoire

Le contexte, c'est l'ensemble des informations que le modèle prend en compte pour générer sa réponse :

Certains modèles récents peuvent traiter jusqu'à 1 million de tokens de contexte. Mais cette capacité a un coût.

Plus de contexte, plus de latence

L'IA ne lit pas votre texte comme un humain. Elle calcule les relations entre chaque token du contexte via le mécanisme d'attention.

Prenons un exemple concret : en début de conversation, vous mentionnez que votre chat s'appelle Michel. Quinze questions plus tard, vous demandez "Comment rendre Michel plus sympa ?". Le modèle doit comparer le mot "Michel" avec tous les mots précédents pour comprendre que vous parlez de votre chat et non d'une personne. Et pour chaque mot de sa réponse, il effectue des millions de calculs sur l'ensemble du contexte.

Le résultat : la complexité computationnelle explose avec la taille du contexte, et la latence suit la même courbe.

Les caches aident, mais pas toujours

Le KV cache, qui stocke les vecteurs Key et Value déjà calculés, est censé atténuer ce problème. Mais en pratique, plusieurs facteurs limitent son efficacité :

Purge mémoire

Sur une infrastructure partagée (comme les services cloud), le cache est régulièrement vidé pour libérer de la RAM ou de la VRAM pour d'autres utilisateurs. Votre conversation perd alors son cache, et le modèle doit tout recalculer.

Contenu partiel

Dans un format de type "réflexion puis réponse" (Think > Answer), seule la réponse finale est souvent conservée dans le cache. La phase de raisonnement, qui peut être longue, est écartée, rendant le cache partiellement invalide pour les échanges suivants.

Pas de persistance entre sessions

Rares sont les services qui conservent le cache d'une session à l'autre. À chaque nouvelle connexion, le modèle repart de zéro, même si votre conversation précédente était longue et détaillée.

Les implications pour les systemes en production

Ces contraintes sont cruciales pour quiconque construit des systèmes basés sur des LLMs :

Stratégies d'atténuation

Plusieurs approches permettent de limiter l'impact :

Conclusion

Les LLMs peuvent traiter d'énormes contextes, mais ils ne le font pas rapidement, ni sans contraintes mémoire, ni de façon stable. Comprendre ces limites est essentiel pour concevoir des systèmes fiables, performants et scalables. La taille de la fenêtre de contexte affichée par un modèle n'est qu'une partie de l'histoire : ce qui compte vraiment, c'est comment cette fenêtre est gérée en conditions réelles.


Des questions sur cet article ou votre propre projet ? Réserver une consultation