> Discover all available pages from the documentation index: https://mastra.zisheng.pro/fr/llms.txt # SystemPromptScrubber `SystemPromptScrubber` est un **Processor de sortie** qui détecte et traite les prompts système, les instructions et les autres informations révélatrices susceptibles d'introduire des vulnérabilités de sécurité. Ce Processor contribue à préserver la sécurité en identifiant les types de prompts système et en proposant des stratégies flexibles pour les traiter, dont plusieurs méthodes de masquage qui garantissent un nettoyage approprié des informations sensibles. ## Exemple d'utilisation ```typescript import { SystemPromptScrubber } from '@mastra/core/processors' const processor = new SystemPromptScrubber({ model: 'openrouter/openai/gpt-oss-safeguard-20b', strategy: 'redact', redactionMethod: 'mask', includeDetections: true, lastMessageOnly: true, }) ``` ## Paramètres du constructeur **options** (`Options`): Options de configuration pour la détection et le traitement des prompts système **options.model** (`MastraModelConfig`): Configuration du modèle de l'Agent de détection **options.strategy** (`'block' | 'warn' | 'filter' | 'redact'`): Stratégie appliquée lorsque des prompts système sont détectés : 'block' rejette la réponse avec une erreur, 'warn' consigne un avertissement mais autorise la réponse, 'filter' supprime les messages signalés et 'redact' les remplace par des versions masquées **options.customPatterns** (`string[]`): Motifs personnalisés pour détecter les prompts système (chaînes contenant des expressions régulières) **options.includeDetections** (`boolean`): Indique si les avertissements doivent inclure les détails de la détection. Utile pour le débogage et la surveillance **options.lastMessageOnly** (`boolean`): Indique s'il faut inspecter uniquement le message de sortie le plus récent du lot au lieu de vérifier chaque message. Utilisez cette option pour limiter le nettoyage fondé sur un LLM à la dernière réponse. **options.instructions** (`string`): Instructions personnalisées pour l'Agent de détection. Si elles ne sont pas fournies, les instructions par défaut sont utilisées **options.redactionMethod** (`'mask' | 'placeholder' | 'remove'`): Méthode de masquage des prompts système : 'mask' les remplace par des astérisques, 'placeholder' les remplace par un texte générique et 'remove' les supprime entièrement **options.placeholderText** (`string`): Texte générique personnalisé utilisé pour le masquage lorsque redactionMethod vaut 'placeholder' ## Valeur renvoyée **id** (`string`): Identifiant du Processor défini sur 'system-prompt-scrubber' **name** (`string`): Nom d'affichage facultatif du Processor **processOutputStream** (`(args: { part: ChunkType; streamParts: ChunkType[]; state: Record; abort: (reason?: string) => never; tracingContext?: TracingContext }) => Promise`): Traite les parties de sortie en streaming afin de détecter et de gérer les prompts système pendant le streaming **processOutputResult** (`(args: { messages: MastraDBMessage[]; abort: (reason?: string) => never }) => Promise`): Traite les résultats de sortie finaux afin de détecter et de gérer les prompts système dans les scénarios sans streaming ## Exemple d'utilisation avancée Lorsque vous utilisez `SystemPromptScrubber` comme Processor de sortie, il est recommandé de l'associer à `BatchPartsProcessor` pour optimiser les performances. `BatchPartsProcessor` regroupe les segments du flux en lots avant de les transmettre au Processor de nettoyage, ce qui réduit le nombre d'appels au LLM nécessaires à la détection. ```typescript import { Agent } from '@mastra/core/agent' import { BatchPartsProcessor, SystemPromptScrubber } from '@mastra/core/processors' export const agent = new Agent({ id: 'scrubbed-agent', name: 'scrubbed-agent', instructions: 'You are a helpful assistant', model: 'openai/gpt-5.6-sol', outputProcessors: [ // Batch stream parts first to reduce LLM calls new BatchPartsProcessor({ batchSize: 10, }), // Then apply system prompt detection on batched content new SystemPromptScrubber({ model: 'openrouter/openai/gpt-oss-safeguard-20b', strategy: 'redact', customPatterns: ['system prompt', 'internal instructions'], includeDetections: true, redactionMethod: 'placeholder', placeholderText: '[REDACTED]', }), ], }) ``` ## Voir aussi - [Garde-fous](https://mastra.zisheng.pro/fr/docs/agents/guardrails)