Brief IA : MemPalace : révolutionner la mémoire IA au-delà du RAG
🛠️ Outils IA

MemPalace : révolutionner la mémoire IA au-delà du RAG

Brief IA
Tom Levy·6 min·5 vues

MemPalace est un système de mémoire open-source qui permet aux agents IA de stocker des conversations et des données de projet de manière structurée et persistante. Cette approche améliore la précision des interactions en conservant le contexte historique, ce qui est crucial pour des assistants IA plus pertinents et personnalisés.

En bref
1MemPalace est un système de mémoire open-source qui stocke les données dans leur forme originale pour une meilleure rétention contextuelle.
2Contrairement aux systèmes traditionnels, MemPalace utilise une structure hiérarchique pour améliorer la compréhension et la traçabilité des informations.
3Le système offre un rappel supérieur avec un taux de 96,6 % sur LongMemEval, en conservant l'intégralité des conversations.
💡Pourquoi c'est importantMemPalace pourrait transformer la façon dont les IA gèrent et récupèrent les informations, offrant une précision et une profondeur contextuelle inégalées.
Le brief IA que lisent les pros

Tu veux les meilleurs outils IA avant les autres ?

On teste et on décrypte les nouveaux outils IA chaque soir, en 5 min. Gratuit.

Inclus dès l'inscription : notre sélection des meilleurs guides & comparatifs IA.

Choisis ton rythme

Gratuit · Pas de spam · Désabonnement en 1 clic

📄
L'analyse en français

MemPalace : Une nouvelle approche pour la mémoire des IA

Qu'est-ce que MemPalace ?

MemPalace se présente comme une solution innovante pour la gestion de la mémoire dans les systèmes d'intelligence artificielle. Contrairement aux méthodes conventionnelles, ce système open-source se concentre sur le stockage local des conversations et des données de projet dans leur forme originale. Chaque message est considéré comme une unité de mémoire distincte, ce qui permet un rappel organisé et durable.

La structure de MemPalace s'inspire du modèle mnémotechnique du "palais de mémoire". Ce modèle hiérarchique se compose de plusieurs niveaux : les Ailes pour les personnes ou projets, les Chambres pour les sujets, les Salles pour les types de mémoire, et les Tiroirs pour les transcriptions, avec des Placards pour les résumés.

Une approche distincte des systèmes de mémoire traditionnels

Les systèmes de mémoire traditionnels, tels que les pipelines RAG ou les bases de données vectorielles, privilégient l'efficacité de la récupération, souvent au détriment de la richesse contextuelle. Ces systèmes segmentent les données, créent des embeddings et récupèrent des segments similaires lors de l'inférence.

MemPalace adopte une approche différente en conservant l'intégralité des informations dans leur forme originale, plutôt que de se limiter aux embeddings. Cette méthode hiérarchique améliore la compréhension du contexte et utilise une combinaison de structure symbolique et de recherche vectorielle pour relier différents systèmes de connaissances. En conséquence, MemPalace offre des capacités de raisonnement supérieures et une meilleure traçabilité par rapport aux systèmes de mémoire conventionnels.

L'idée principale : Mémoire verbatim vs Résumé

La plupart des outils de mémoire pour agents IA utilisent un modèle de langage (LLM) pour résumer ou extraire des faits clés des conversations. Des outils comme Mem0 et Zep analysent les discussions pour produire des rapports succincts, mais cette approche peut entraîner une perte d'informations contextuelles et de détails subtils. En effet, un LLM doit déterminer ce qui est "important" et écarter le reste.

MemPalace adopte une stratégie opposée en choisissant de "tout stocker". Le système conserve un enregistrement complet de tous les messages échangés entre utilisateurs et assistants, sans résumé ni suppression. Cette méthode de stockage brut présente plusieurs avantages significatifs :

  • Contexte complet : En maintenant un accès total à tous les détails de la conversation, l'IA peut reconstruire l'intégralité du dialogue.

  • Rappel supérieur : Grâce à sa base de données complète, MemPalace atteint une précision exceptionnelle dans la récupération d'informations, avec un taux de 96,6 % de rappel@5 sur LongMemEval, qui comprend 500 questions.

  • Traçabilité : En conservant tout, le système permet aux utilisateurs de vérifier les réponses par rapport aux journaux de discussion originaux.

Exploration de l'architecture de MemPalace

Le design de MemPalace repose sur la méthode mnémotechnique ancienne des loci, créant un cadre multi-niveaux qui facilite la localisation et l'accès aux souvenirs stockés. Voici un aperçu de sa structure hiérarchique et de son système de traitement des données.

La conception hiérarchique de la mémoire "Palais"

  • Ailes (Segmentation au niveau projet) : Les ailes définissent des divisions principales qui englobent des domaines ou projets entiers, permettant de séparer les souvenirs personnels des souvenirs d'équipe. Les sujets au sein d'une aile sont organisés en Chambres spécifiques après la définition des ailes.

  • Chambres (Organisation au niveau sujet) : Les chambres servent d'espaces qui relient tous les sujets existant au sein d'une aile. Par exemple, l'aile "Travail" peut contenir des chambres nommées "Réunions", "Projets" et "Emails". Chaque document ou conversation est assigné à une combinaison spécifique d'aile et de chambre.

  • Salles (Types de mémoire : Faits, Événements, Préférences) : À travers toutes les ailes, des salles communes classifient les types de mémoire. MemPalace définit des salles comme hall_facts, hall_events, hall_discoveries, hall_preferences et hall_advice. Par exemple, une décision de projet est stockée dans la salle_facts de sa chambre, tandis qu'un résumé de réunion va dans hall_events.

  • Tiroirs (Stockage brut verbatim) : Chaque morceau de mémoire est stocké dans un tiroir spécifique, contenant un fichier texte avec la transcription complète d'une discussion ou d'un email, ou un fichier de code tel qu'il a été enregistré. Les tiroirs fonctionnent comme des archives non altérées, conservant leur contenu dans leur forme originale.

  • Placards (Représentations compressées) : Les placards contiennent le résumé compressé AAAK (ou "résumé") qui représente chaque tiroir. Ils dirigent les utilisateurs vers le contenu original de leur tiroir, fonctionnant comme un index compact.

Pipeline de stockage et de récupération

Le pipeline de MemPalace se compose de deux composants principaux : la mémoire d'écriture pour l'ingestion et la mémoire de lecture pour la récupération en temps de requête.

  • Stockage Verbatim (Ingestion) : Lorsqu'une conversation ou un fichier est extrait, MemPalace écrit chaque message comme une nouvelle entrée de tiroir dans sa base de données. Le texte est directement stocké dans un magasin vectoriel (par défaut : ChromaDB) sans filtrage par LLM. Des métadonnées, telles que les balises d'aile, de chambre et de salle, sont attachées pour permettre des requêtes contextuelles ultérieures.

  • Recherche vectorielle avec ChromaDB : Pour la récupération, MemPalace utilise la recherche vectorielle sémantique. Chaque tiroir est intégré et stocké dans ChromaDB. Lors d'une requête, le système vectorise la demande et trouve les tiroirs les plus similaires par similarité cosinus, retournant généralement des correspondances en millisecondes.

  • Couche de métadonnées (Graphique de connaissances) : En plus du texte brut, MemPalace construit un graphique de connaissances temporel dans SQLite local. Chaque fait est stocké avec des fenêtres de validité, incluant des relations temporelles et des dépendances contextuelles.

Mécanisme de compression (AAAK)

MemPalace propose une fonction de compression optionnelle appelée AAAK. Ce système d'abréviations permet de stocker des informations étendues avec un minimum d'utilisation de tokens. La compression avec perte utilise des expressions régulières pour transformer des mots en abréviations et sélectionner des phrases clés, réduisant les tokens d'environ 30 fois.

  • Stratégie de compression sans perte : L'objectif d'AAAK est de parvenir à une compression "sans perte" de contenu, permettant de reconstruire chaque assertion factuelle. AAAK vise à fournir des preuves complètes des actions effectuées, sans utiliser de tokenizers ou embeddings propriétaires.

  • Efficacité des tokens et injection de contexte : L'objectif est de maintenir une compression efficace tout en permettant une reconstruction fidèle des informations contextuelles.

Fonctionnement de MemPalace (Flux de bout en bout)

MemPalace permet aux agents IA de maintenir des éléments de mémoire permanents, accessibles à tout moment. Le système transforme le dialogue parlé en représentations vectorielles, stockées dans ChromaDB. L'agent accède à ses mémoires essentielles lorsqu'il nécessite des informations spécifiques, plutôt que d'utiliser l'intégralité de sa base de données mémoire.

Ingestion des données (Extraction de conversations)

L'ingestion des données constitue la première étape. MemPalace écoute chaque tour d'une conversation, capturant les messages des utilisateurs, les réponses de l'IA et les métadonnées, puis prépare ce texte brut pour le stockage.

  • Découpage : MemPalace divise les longs messages en morceaux de 512 tokens avec des chevauchements de 64 tokens, évitant ainsi la perte de contexte aux frontières des morceaux.

  • Balise de métadonnées : Chaque morceau reçoit un rôle (utilisateur ou assistant), un numéro de tour, un ID de session et un horodatage.

  • Dé-duplication : MemPalace utilise des ID déterministes comme session-tour-N, permettant de réécrire le même tour en écrasant simplement l'entrée existante.

Suivez Brief IA

L'actu IA du jour, aussi dans votre fil.

Commentaires