Introduction

Lors de la conception d'agents, la mémoire est souvent réinventée, mais la plupart du temps, cela se fait de manière inefficace. Les décisions de planification ne sont pas correctement exécutées, les requêtes sont trop volumineuses et les appels aux modèles de langage (LLM) dans le chemin de récupération de mémoire entraînent des résultats imprévisibles.

Contexte Technique

La plupart des bibliothèques de mémoire pour agents utilisent des LLM pour réécrire les requêtes, réorganiser les résultats ou résumer les données récupérées. Cependant, cela entraîne des problèmes tels que la non-déterminisme, la latence élevée, le coût accru et l'impossibilité de tester les unités. Memwright propose une approche différente en traitant la mémoire comme une infrastructure et non comme un exercice d'ingénierie de requêtes.

Analyse et Implications

Memwright utilise des embeddings calculés localement à l'aide de MiniLM-L6-v2, et la récupération est effectuée à l'aide de méthodes mathématiques et de traversal de graphes. Cela permet d'obtenir des résultats déterministes, testables et plus rapides. De plus, Memwright prend en charge six rôles RBAC différents, permettant une isolation des espaces de noms et une gestion fine des autorisations.

Perspective

Memwright offre une alternative prometteuse aux approches traditionnelles de gestion de la mémoire des agents. Avec sa capacité à gérer les données de manière efficace et sécurisée, Memwright pourrait devenir un outil essentiel pour les développeurs d'agents. Cependant, il est important de surveiller les limites et les prochaines étapes de ce projet, notamment l'amélioration du modèle d'embedding et l'extension des fonctionnalités de gestion de la mémoire.

Les résultats des tests de Memwright sont prometteurs, avec un score de 81,2% sur le benchmark LOCOMO v2, ce qui le place parmi les meilleures solutions actuelles. La communauté peut suivre les progrès de Memwright sur GitHub et participer à la discussion sur Hacker News.