Tutoriel avancé sur la mémoire à long terme RedisVL : Utilisation d'un LLM pour extraire des mémoires

DEV - 10/02
Introduction Dans cette note du week-end, nous continuons à parler de la manière de développer la mémoire à long terme pour...

Introduction

Dans cette note du week-end, nous continuons à parler de la façon de créer de la mémoire à long terme pour un agent avec RedisVL.

Lorsque nous construisons un module de mémoire à long terme pour un agent, nous devons surtout nous soucier de deux points :

  • Après une longue exécution, les mémoires enregistrées deviendront-elles trop volumineuses et provoqueront-elles une explosion du contexte ?
  • Comment rappeler les souvenirs les plus importants dans le contexte actuel ?

Nous allons résoudre ces deux problèmes aujourd'hui.

TLDR : dans ce didacticiel pratique, nous utilisons d'abord un LLM pour extraire des informations des messages utilisateur qui ont de la valeur pour les discussions ultérieures. Ensuite, nous stockons cela comme mémoire à long terme dans RedisVL. En cas de besoin, nous recherchons les souvenirs associés avec une recherche sémantique. Avec cette configuration, l'agent comprend le contexte passé de l'utilisateur et donne des réponses plus précises.

Avec ce type de mémoire à long terme, nous ne craignons pas une explosion de mémoire après une longue exécution. Nous ne craignons pas non plus que des souvenirs sans rapport nuisent aux réponses LLM.

Vous pouvez obtenir tout le code source à la fin de cet article.

Pourquoi faisons-nous cela ?

Dans le dernier article pratique, j'ai expliqué comment créer de la mémoire à court et à long terme pour un agent avec RedisVL :

Créez de la mémoire à long terme et à court terme pour les agents utilisant RedisVL

La partie à court terme fonctionne très bien. L'API RedisVL semble beaucoup plus simple que l'API Redis brute. Je peux écrire ce code avec peu d'effort.

La partie à long terme ne fonctionne pas. Nous suivons l'exemple officiel et stockons les requêtes des utilisateurs et les réponses LLM dans RedisVL. Lorsque le chat continue, RedisVL continue d'extraire des requêtes répétées ou des réponses sans rapport via la recherche sémantique. Cela perturbe beaucoup le LLM et bloque la discussion.

Pouvons-nous éviter RedisVL ?

Votre patron ne sera pas d'accord. Il y a déjà Redis dans votre pile. Pourquoi souhaitez-vous toujours installer mem0 ou d'autres outils open source ? Qu'en est-il des frais supplémentaires ? C'est la vraie vie.

Nous devons donc encore faire fonctionner RedisVL. Mais je ne veux pas courir partout comme une mouche sans tête. Avant cela, je veux voir comment les humains gèrent la mémoire.

Comment les humains gèrent la mémoire

Ce qui mérite mémoire

Tout d’abord, nous devons savoir une chose. Seules les informations centrées sur moi et étroitement liées à moi méritent une note autocollante.

Alors, quelles informations sur moi dois-je écrire ?

  • Paramètres de préférence tels que les outils que j'aime, les langues que j'utilise, mon emploi du temps et le ton que je donne lorsque je ...
    [Courte citation de 8% de l'article original]
Loading...