Processors
Un Agent basé sur des fichiers découvre les Processors dans son répertoire processors/. Utilisez cette page pour la convention basée sur les fichiers ; consultez le guide des Processors pour les Processors intégrés, les Processors personnalisés, le comportement de streaming et les modèles avancés.
Les fichiers dans processors/input/ s’exécutent avant que les messages atteignent le modèle. Les fichiers dans processors/output/ s’exécutent après la réponse du modèle. Chaque fichier exporte par défaut un Processor et le nom du fichier devient sa clé de découverte.
Démarrage rapideLien direct vers Démarrage rapide
Ajoutez un Processor d’entrée en plaçant un fichier de Processor dans processors/input/ :
import { PIIDetector } from '@mastra/core/processors'
export default new PIIDetector({
strategy: 'block',
})
Ce Processor s’exécute avant que les messages utilisateur atteignent le modèle.
Ajouter un Processor de sortieLien direct vers Ajouter un Processor de sortie
Les Processors de sortie permettent de filtrer ou de transformer les réponses du modèle avant leur renvoi. Cet exemple masque les PII de la réponse finale.
import { PIIDetector } from '@mastra/core/processors'
export default new PIIDetector({
strategy: 'redact',
})
Ordre d’exécutionLien direct vers Ordre d’exécution
Les Processors découverts sont ajoutés après ceux définis dans config.ts. Les Processors de config s’exécutent donc d’abord.
config.inputProcessors → processors/input/* → model
model → config.outputProcessors → processors/output/* → response
Si config.inputProcessors ou config.outputProcessors est une fonction, les Processors découverts de ce type sont ignorés avec un avertissement, car les Processors définis par une fonction ne peuvent pas être fusionnés statiquement.
Priorité par rapport à configLien direct vers Priorité par rapport à config
Utilisez config.ts pour les Processors devant être créés à l’exécution ou partagés entre Agents. Utilisez les Processors basés sur des fichiers pour les Processors statiques propres à chaque Agent, qui doivent être révisés avec l’Agent.
La priorité est la suivante :
config.inputProcessorsouconfig.outputProcessorsdéfini par une fonctionconfig.inputProcessorsouconfig.outputProcessorsdéfini par un tableau- Fichiers découverts dans
processors/input/ouprocessors/output/
Consultez la référence de Processor pour l’interface complète.