Les LLM sont sans état (stateless) par nature. Chaque appel à l’API est totalement indépendant des précédents. Ce que vous percevez comme une “conversation continue” dans une interface comme ChatGPT est en réalité une reconstruction : l’interface renvoie l’intégralité de l’historique à chaque appel. Il n’existe aucune mémoire magique côté modèle : seulement du contexte soigneusement géré côté application.
Les trois types de mémoire
- Mémoire de conversation
- Mémoire externe
- Résumé de conversation
Mémoire in-context (session courante)
C’est la forme la plus simple de mémoire : l’historique complet de la conversation est réinjecté dans le contexte à chaque tour. Le modèle “se souvient” parce qu’il relit tout depuis le début.Avantages :- Simple à implémenter : aucune infrastructure externe requise
- Cohérence parfaite sur les échanges récents
- Aucune perte d’information tant que la limite n’est pas atteinte
- La fenêtre de contexte se remplit progressivement
- Le coût en tokens augmente à chaque tour
- Mémoire perdue à la fin de la session : rien n’est persisté
Stratégies pour simuler la mémoire
Résumé récursif
Le résumé récursif est une technique qui compresse l’historique de façon progressive. Voici comment le mettre en œuvre :1
Définir un seuil de déclenchement
Fixez un seuil (par exemple, lorsque l’historique dépasse 3 000 tokens ou 10 tours de conversation) au-delà duquel la compression est automatiquement déclenchée.
2
Résumer les échanges les plus anciens
Demandez au modèle de produire un résumé structuré des N premiers tours : décisions prises, informations clés échangées, préférences exprimées. Conservez uniquement ce résumé, pas les échanges bruts.
3
Conserver les échanges récents intacts
Maintenez toujours les derniers tours en version complète dans le contexte. La précision du dialogue récent est plus critique que celle des échanges anciens.
4
Injecter le résumé en début de contexte
Placez le résumé condensé au début du contexte, avant l’historique récent. Le modèle dispose ainsi d’une vue d’ensemble de la session tout en ayant accès aux détails des échanges immédiats.
5
Itérer à chaque nouveau seuil
Répétez l’opération chaque fois que le seuil est à nouveau atteint. Avec le temps, votre historique complet se réduit à quelques paragraphes denses d’informations essentielles.
Extraction d’entités clés
Plutôt que de résumer narrativement, vous pouvez extraire et maintenir une fiche structurée des informations importantes au fil de la conversation :Outils qui implémentent la mémoire
Plusieurs bibliothèques et services ont été conçus spécifiquement pour résoudre le problème de la mémoire dans les systèmes LLM :Mem0
Une couche de mémoire intelligente pour les agents IA. Mem0 extrait automatiquement les informations importantes des conversations et les stocke dans un graphe de mémoire personnel, récupérable par recherche sémantique.
MemGPT
Inspiré des systèmes d’exploitation avec gestion de mémoire hiérarchique, MemGPT permet aux LLM de gérer eux-mêmes leur propre contexte, en décidant quoi archiver et quoi garder en mémoire active.
LangChain Memory
LangChain propose plusieurs classes de mémoire prêtes à l’emploi :
ConversationBufferMemory, ConversationSummaryMemory, ConversationKGMemory (graphe de connaissances) et d’autres encore.Zep
Une infrastructure de mémoire long terme pour les assistants IA, avec enrichissement automatique (résumé, extraction d’entités, horodatage) et API de recherche sémantique sur l’historique.
Que retenir explicitement vs laisser le modèle gérer ?
Tous les éléments d’une conversation ne méritent pas d’être mémorisés. Voici un guide pratique pour décider : À retenir explicitement (dans la mémoire structurée) :- Préférences durables de l’utilisateur (style, niveau, langue)
- Décisions techniques ou stratégiques déjà validées
- Informations d’identité et de contexte professionnel
- Contraintes non négociables (budget, délais, technologies imposées)
- Le fil détaillé du raisonnement en cours
- Les formulations exactes de questions et réponses récentes
- Les exemples de code générés dans la session
- Les questions de clarification sans valeur durable
- Les apartés et politesses conversationnelles
- Les tentatives abandonnées ou les pistes invalidées
