Mémoire en graphe pour les agents IA : relations, provenance et révision
La mémoire d’un agent est souvent décrite comme une recherche de passages similaires. Cette approche est utile : un index vectoriel peut retrouver du texte proche d’une demande. Elle ne répond pas toujours à une autre question : quelle relation relie les informations retrouvées ?
Similarité et relation
Un graphe représente des entités et des liens explicites entre elles. Cette représentation peut être pertinente lorsque l’agent doit distinguer une préférence d’une décision, une source d’une hypothèse ou une information remplacée d’une information active. Elle ne rend pas les données exactes par magie ; elle rend la structure examinable.
Les deux approches sont complémentaires. Un index vectoriel peut proposer des candidats sémantiquement proches. Une couche relationnelle peut ensuite préciser les dépendances ou les contradictions qui méritent d’être considérées. L’architecture doit toutefois limiter ce parcours : récupérer davantage de contexte n’améliore pas automatiquement une réponse.
Ce que les composants permettent, et non promettent
La documentation de Mem0 décrit une offre open source configurable, utilisable comme bibliothèque ou dans une installation auto-hébergée. Neo4j documente des modèles de graphes et un langage de requête ; pgvector ajoute la recherche vectorielle à PostgreSQL. Ces projets donnent des briques possibles. Ils ne prescrivent pas une architecture unique ni une politique de mémoire correcte pour tous les agents.
Le choix important est la séparation des responsabilités : stockage des représentations, relations, extraction de faits, autorisations et règles de rétention. Cette séparation aide à auditer le chemin qui a conduit à un résultat et évite de traiter tout fragment récupéré comme une instruction prioritaire.
La gouvernance est une fonctionnalité
Une mémoire produite automatiquement contient des hypothèses. Une extraction peut fusionner deux entités, conserver une préférence périmée ou attribuer une relation inexistante. Chaque élément utile devrait donc porter une origine, un moment, un périmètre et une possibilité de correction ou de suppression.
La mémoire en graphe vaut son coût lorsque les relations sont centrales pour la tâche. Sinon, elle peut ajouter une complexité qui masque plus qu’elle n’explique. Le critère n’est pas le nombre de nœuds : c’est la capacité à retrouver un contexte pertinent, à en signaler les limites et à corriger ce qui n’est plus fiable.