MemGPT : Gestion virtuelle du contexte pour les agents LLM
La contrainte qui limite la plupart des agents LLM n'est pas l'intelligence — c'est la mémoire. J'y ai pensé concrètement dans le contexte des grands livres Beancount qui s'étendent sur des années de transactions : quelle que soit la capacité du modèle sous-jacent, une fois que l'historique du grand livre dépasse la fenêtre de contexte, l'agent commence à oublier. MemGPT (Packer et al., UC Berkeley, 2023) s'attaque directement à ce problème en empruntant une solution que les systèmes d'exploitation (OS) ont résolue il y a des décennies.
L'article
"MemGPT: Towards LLMs as Operating Systems" (Packer, Wooders, Lin, Fang, Patil, Stoica, Gonzalez ; arXiv:2310.08560) propose une gestion virtuelle du contexte — une analogie délibérée avec la façon dont les OS créent l'illusion d'une grande mémoire virtuelle en effectuant des pages entre une RAM rapide et un disque lent. La fenêtre de contexte du LLM joue le rôle de la RAM : rare, rapide, directement accessible. Deux stockages externes jouent le rôle du disque : un stockage de rappel (historique des messages récents) et un stockage d'archivage (une base de données à long terme consultable pour n'importe quel texte). L'agent lui-même décide de ce qu'il doit lire depuis le stockage externe et de ce qu'il doit évincer du contexte, en utilisant des appels de fonction explicites — des outils qui déplacent les données entre les niveaux. Le système déclenche un avertissement d'éviction à 70 % de la capacité du contexte et force un vidage à 100 %, générant un résumé récursif des messages évincés pour éviter une perte totale d'informations.
L'article évalue MemGPT sur deux domaines : les agents conversationnels multi-sessions (le jeu de données Multi-Session Chat) et l'analyse de documents sur de grands corpus qui dépassent la fenêtre de contexte native du modèle.
Idées clés
- Trois niveaux de mémoire : mémoire de travail en contexte (rapide, limitée), stockage de rappel (messages récents, consultable) et stockage d'archivage (long terme, indexé). L'agent écrit dans les trois via des appels d'outils.
- Récupération profonde de mémoire (DMR) : la tâche d'évaluation qui nécessite un rappel constant sur plusieurs sessions passées. Avec GPT-4, la base de référence standard à contexte fixe atteint 32,1 % de précision ; MemGPT bondit à 92,5 %. Base de référence GPT-4 Turbo : 35,3 % → 93,4 %.
- Récupération clé-valeur imbriquée : le test de résistance d'analyse de documents. Le GPT-4 standard atteint 0 % de précision à trois niveaux d'imbrication ; MemGPT avec GPT-4 maintient ses performances en effectuant des recherches d'archivage itératives.
- Flux de contrôle via des interruptions : l'agent signale quand il a besoin de plus de temps (pour effectuer des opérations de mémoire) avant de répondre, par analogie avec une interruption de système d'exploitation. Cela maintient la réactivité du système sans forcer tout dans une seule passe d'inférence.
- Le problème de l'éviction : lorsque le contexte est plein, le contenu est résumé et vidé. La résumer récursive préserve l'essentiel mais perd inévitablement des détails — un compromis que l'article reconnaît mais ne quantifie pas entièrement.
Ce qui tient la route — et ce qui ne tient pas
Les chiffres DMR sont frappants : un écart de précision de 60 points entre MemGPT et une base de référence GPT-4 standard sur le jeu de données Multi-Session Chat n'est pas un bruit aléatoire. Le résultat KV imbriqué — les bases de référence échouant à 0 % tandis que MemGPT continue de fonctionner — démontre quelque chose de réel sur la valeur d'une récupération itérative médiée par des outils par rapport à une exposition passive à un contexte long. Cela rejoint la découverte "Lost in the Middle" de Liu et al. (arXiv:2307.03172) : même lorsque l'information tient physiquement dans la fenêtre de contexte, les modèles se dégradent pour le contenu enfoui au milieu. MemGPT contourne ce problème en ne récupérant que ce qui est immédiatement nécessaire.
Cela dit, l'évaluation présente de réelles lacunes. Le jeu de données Multi-Session Chat est étroit — des discussions de persona générées par l'homme avec des formats strictement contrôlés. La manière dont l'approche s'adapte à des conversations réelles plus désordonnées ou à des corpus spécifiques à un domaine (documents financiers, correspondance réglementaire) n'est pas testée. Le stockage d'archivage dans les expériences est une simple base de données vectorielle ; la question de savoir si la qualité de la récupération reste élevée alors que l'archive atteint des millions de documents reste ouverte. Plus fondamentalement : la stratégie de récupération de l'agent n'est pas meilleure que ses requêtes. Si l'agent ne sait pas ce qu'il ne sait pas — un mode d'échec courant dans les tâches à long horizon — il ne lancera jamais la bonne recherche d'archive, et toute l'architecture s'effondrera gracieusement dans le même mode d'échec que le contexte fixe.
Il y a aussi un coût de latence que l'article traite avec légèreté. Chaque recherche d'archive est un appel d'inférence LLM supplémentaire (pour générer la requête) plus une recherche vectorielle. Pour un agent Beancount effectuant un rapprochement de routine sur des années de données, cela pourrait se multiplier en de nombreux allers-retours par réponse. L'article ne rapporte pas de comparaisons de latence en temps réel.
Des travaux ultérieurs ont affiné ces critiques. A-MEM (arXiv:2502.12110) revendique des performances au moins deux fois supérieures à celles de MemGPT sur des tâches à sauts multiples, arguant que la structure rigide par niveaux de MemGPT est moins performante qu'une curation de mémoire plus dynamique. Les benchmarks Mem0 (2024-2025) montrent que des approches concurrentes surpassent MemGPT en termes de précision et de rapidité dans certains contextes. Les auteurs originaux ont depuis fait évoluer le projet vers Letta (septembre 2024), un framework d'agent open-source avec un "calcul en temps de sommeil" asynchrone pour la consolidation de la mémoire — une reconnaissance implicite que la conception synchrone à agent unique a des limites de mise à l'échelle.
Pourquoi cela compte pour l'IA financière
Un grand livre Beancount pour une petite entreprise accumule des dizaines de milliers de transactions sur une décennie. Un agent chargé du rapprochement de fin d'année, d'une enquête sur les anomalies ou d'une analyse des tendances sur plusieurs années ne peut pas tout faire tenir en contexte. La conception à trois niveaux de MemGPT se transpose presque directement : la mémoire de travail contient le lot de transactions en cours d'examen ; le stockage de rappel contient le contexte de session récent (ce que nous avons rapproché la dernière fois) ; le stockage d'archivage contient l'historique complet du grand livre, les écritures de journal et les rapports d'anomalies antérieurs. L'interface d'appel de fonction pour les opérations de mémoire est essentiellement la même interface dont l'agent a déjà besoin pour les opérations d'écriture — ce n'est pas une nouvelle classe de capacité, juste une nouvelle application du même mécanisme d'appel d'outils.
La pertinence plus profonde réside dans le changement de perspective : au lieu de demander "pouvons-nous faire tenir plus d'éléments dans le contexte ?", MemGPT demande "l'agent peut-il gérer sa propre attention ?". Pour la finance, c'est la bonne question. Un audit fiscal peut soulever une question sur une transaction datant de trois ans. Un comptable humain compétent récupère la facture originale, la recoupe avec le grand livre et se rappelle le contexte de la politique de cette année-là. Ce comportement de récupération à la demande est exactement ce que MemGPT nous apprend à concevoir.
L'avertissement honnête : MemGPT n'a pas été évalué sur des données financières, et les documents financiers sont structurellement différents des discussions de persona. La qualité de la récupération sur des données numériques denses, des transactions multi-devises et des schémas de comptabilité en partie double nécessitera son propre benchmark.
Ce qu'il faut lire ensuite
- Lost in the Middle: How Language Models Use Long Contexts (Liu et al., arXiv:2307.03172) — le fondement empirique expliquant pourquoi des fenêtres de contexte plus longues ne résolvent pas à elles seules le problème ; les modèles ne parviennent pas à prêter attention au contenu au milieu des documents, ce qui motive les approches basées sur la récupération comme MemGPT.
- A-MEM: Agentic Memory for LLM Agents (arXiv:2502.12110) — un suivi de 2025 revendiquant des performances de mémoire à sauts multiples supérieures en remplaçant la structure rigide de MemGPT par une curation de mémoire dynamique ; un point de comparaison nécessaire.
- Gorilla: Large Language Model Connected with Massive APIs (arXiv:2305.15334) — le prochain sur cette liste de lecture ; la conception de l'appel d'outils augmentée par la récupération complète la gestion de la mémoire de MemGPT en traitant la manière dont les agents sélectionnent le bon outil parmi une large surface d'API.
