Mémoire et sessions des agents
Pour conserver le contexte, un agent a besoin de deux types d'état : l'état de l'interaction qu'il gère actuellement et la connaissance durable qu'il transporte d'une conversation à l'autre. Databricks fournit un stockage entièrement managé pour chacun, tous deux pris en charge par Lakebase et utilisables depuis des agents construits sur n'importe quel framework :
- Les sessions d’agent gérées stockent l’état de session d’un agent : l’état qu’un agent ou un framework conserve pour une interaction. Il s'agit le plus souvent de l'historique de conversation (la transcription ordonnée des messages, des appels d'outils et des résultats), mais cela peut être n'importe quel état persistant géré par un framework, tel qu'un graphe LangGraph. L'agent le lit au start d'un tour et y ajoute des éléments au fil de l'interaction.
- Managed agent memory stores durable facts, preferences, and decisions that an agent recalls in later, separate conversations, retrieved by semantic search.
Relation entre les sessions et la mémoire
Les sessions sont limitées à une seule interaction : l'état de travail que l'agent rejoue pour poursuivre cette interaction, tel que la transcription de sa conversation. Une session se développe au cours de l'interaction et se suffit à elle-même.
Memories are scoped to a subject, not an interaction: the durable facts that should still matter in a future, unrelated conversation, such as a user's stable preferences, a past decision, or an ongoing project. L’agent les rappelle dès qu’elles sont pertinentes, quelle que soit la conversation qui les a suscitées.
Les deux se rejoignent là où un élément d'une conversation mérite d'être conservé. À mesure qu'une session s'accumule, un agent (ou votre application) en extrait les faits durables et les écrit dans la mémoire. La session est ensuite effacée ou expire ; la mémoire persiste. C’est pourquoi ces stockages sont indépendants : supprimer une session, ou l’intégralité d’un stockage de session, ne supprime pas la mémoire conservée dans un stockage de mémoire.
Utilisez les deux ensemble pour la plupart des cas d’usage : les sessions confèrent à l’agent une continuité au sein d’une conversation, et la mémoire lui assure une continuité d’une conversation à l’autre. Vous pouvez également utiliser l’un ou l’autre séparément. Utilisez les sessions seules lorsque vous avez uniquement besoin d’un état au sein de l’interaction, ou la mémoire seule lorsque votre framework gère déjà l’état de la session.
Choisissez où start
-
- Sessions d’agents gérées
- Conservez et reprenez l’état de session d’un agent pour qu’une interaction survive aux redémarrages, et reconstituez le contexte complet (y compris les messages, les appels d’outils et le raisonnement) lors d’un suivi.
-
- Mémoire d'agent gérée
- Remember a user's preferences, facts, and decisions across separate conversations, and personalize responses with what the agent learned earlier.
Approches héritées
Cette approche précédente de la mémoire des agents est obsolète et déconseillée pour les nouveaux agents :
- Mémoire d’agent gérée (héritée): ancien magasin de mémoire géré, régi par Unity Catalog.