Memory
Un Agent basé sur des fichiers obtient une mémoire à partir d’un fichier memory.ts qui exporte par défaut une instance de Memory. Utilisez cette page pour la convention basée sur les fichiers ; consultez la documentation de Memory pour l’historique des messages, le rappel sémantique, le stockage et les Processors.
Sans memory.ts ou config.memory, l’Agent n’a pas de mémoire par défaut. Chaque appel à generate() ou stream() commence sans état de conversation mémorisé, sauf si vous transmettez vous-même le contexte antérieur.
Démarrage rapideLien direct vers Démarrage rapide
Créez memory.ts à côté du config.ts de l’Agent :
import { Memory } from '@mastra/memory'
export default new Memory()
L’instance exportée devient la memory de l’Agent. Si votre application configure un fournisseur de stockage sur l’instance Mastra principale, les données de mémoire y sont stockées. Consultez le stockage pour plus d’informations.
Utilisez les mêmes valeurs de resource et thread lorsque vous appelez l’Agent afin de poursuivre une conversation :
const response = await weatherAgent.generate('Remember that I prefer Celsius.', {
memory: {
resource: 'user-123',
thread: 'weather-chat',
},
})
Configurer la mémoireLien direct vers Configurer la mémoire
Transmettez des options à new Memory() lorsque le comportement par défaut ne suffit pas.
import { Memory } from '@mastra/memory'
export default new Memory({
options: {
lastMessages: 20,
workingMemory: {
enabled: true,
scope: 'resource',
},
},
})
Consultez la référence de Memory pour les options du constructeur. Utilisez ces pages pour les fonctionnalités de mémoire associées :
- Stockage: configurez la persistance des données de mémoire.
- Rappel sémantique: récupérez les messages passés pertinents selon leur signification sémantique.
- Processors de mémoire: filtrez, tronquez ou transformez les messages avant que la mémoire ne les ajoute au contexte du modèle.
Priorité par rapport à configLien direct vers Priorité par rapport à config
config.memory est prioritaire sur memory.ts. Si aucun n’est présent, l’Agent basé sur des fichiers assemblé n’a pas de mémoire. Consultez la priorité de config.ts pour le tableau complet de fusion.