Polarys

Mémoire et robustesse

Gérer la mémoire d'un agent

Gérer la mémoire d'un agent

Un modèle n'a pas de mémoire persistante par défaut

Chaque appel à un modèle est en réalité indépendant : le modèle ne "se souvient" d'une conversation que parce que l'historique complet des échanges lui est renvoyé à chaque nouvel appel. Sans gestion explicite, cet historique grandit indéfiniment.

Le problème de la fenêtre de contexte

Chaque modèle a une limite de fenêtre de contexte (le volume total de texte qu'il peut traiter en une requête). Une conversation ou une tâche agentique longue peut dépasser cette limite, nécessitant une stratégie de gestion.

flowchart TD
    A[Historique de conversation\ngrandit à chaque tour] --> B{Approche de la limite\nde contexte ?}
    B -- Non --> C[Continuer normalement]
    B -- Oui --> D[Résumer l'historique\nancien]
    D --> E[Garder le résumé +\nles derniers échanges détaillés]

Stratégies courantes de gestion de mémoire

  • Fenêtre glissante : ne garder que les N derniers messages, perdant le contexte plus ancien.
  • Résumé progressif : résumer périodiquement les échanges anciens en un texte condensé, gardant l'essentiel sans le détail complet.
  • Mémoire externe : stocker des informations importantes dans une base de données externe (via un outil), consultable à la demande plutôt que gardée en permanence dans le contexte.

Cas concret

Un agent traitant une tâche longue (analyse d'un projet de code volumineux, sur plusieurs dizaines d'étapes) accumule un historique qui approche la limite de contexte du modèle utilisé. Sans stratégie de gestion, l'agent finirait par échouer avec une erreur de dépassement de contexte, ou perdrait en qualité de réponse à mesure que le contexte se remplit d'informations moins pertinentes. Une stratégie de résumé progressif, condensant les étapes anciennes déjà terminées tout en gardant le détail des étapes récentes, permet à l'agent de continuer sa tâche sur une durée bien plus longue.

Erreurs fréquentes

  • Ne jamais gérer la croissance de l'historique, provoquant un dépassement de la fenêtre de contexte sur les tâches longues.
  • Résumer trop agressivement, perdant des détails importants nécessaires plus tard dans la tâche.
  • Confondre mémoire de session (perdue à la fin) et mémoire persistante (stockée durablement), un choix de conception qui dépend entièrement du cas d'usage réel de l'agent.

À retenir

  • Un modèle n'a pas de mémoire intrinsèque : l'historique complet doit être renvoyé à chaque appel, dans la limite de sa fenêtre de contexte.
  • Les stratégies courantes incluent la fenêtre glissante, le résumé progressif, et la mémoire externe via un outil dédié.
  • Le choix de stratégie dépend de la longueur typique des tâches de l'agent et de l'importance de conserver le détail complet dans le temps.

Mini-exercice

Un agent traite une tâche très longue et commence à approcher la limite de contexte de son modèle. Quelle stratégie permet de continuer la tâche sans tout perdre du contexte déjà accumulé ?

Réponse : le résumé progressif de l'historique ancien, condensant les échanges déjà traités en un résumé plus court tout en gardant le détail complet des échanges récents, libérant de la place dans la fenêtre de contexte sans perdre totalement l'information passée.

Quiz de validation

Quiz - 2 questions

1. Un modèle d'IA a-t-il une mémoire persistante entre chaque appel par défaut ?

2. Quelle stratégie permet de continuer une tâche longue sans dépasser la fenêtre de contexte du modèle ?

Suis ta progression

Crée un compte gratuit pour suivre ta progression et accéder à toutes les leçons.