PIIDetector
PIIDetector est un Processor hybride qui peut traiter les entrées comme les sorties afin de détecter et de masquer les données personnelles identifiables (PII), conformément aux exigences de confidentialité. Ce Processor contribue à protéger la confidentialité en identifiant les types de PII et en proposant des stratégies flexibles pour les gérer, notamment plusieurs méthodes de masquage assurant la conformité au RGPD, au CCPA, à la HIPAA et aux autres réglementations relatives à la confidentialité.
Exemple d’utilisationLien direct vers Exemple d’utilisation
import { PIIDetector } from '@mastra/core/processors'
const processor = new PIIDetector({
model: 'openrouter/openai/gpt-oss-safeguard-20b',
threshold: 0.6,
strategy: 'redact',
detectionTypes: ['email', 'phone', 'credit-card', 'ssn'],
lastMessageOnly: true,
})
Paramètres du constructeurLien direct vers Paramètres du constructeur
options:
model:
detectionTypes?:
threshold?:
strategy?:
redactionMethod?:
instructions?:
includeDetections?:
lastMessageOnly?:
preserveFormat?:
providerOptions?:
{ openai: { reasoningEffort: 'low' } })Valeur renvoyéeLien direct vers Valeur renvoyée
id:
name?:
processInput:
processOutputStream:
Exemple d’utilisation avancéeLien direct vers Exemple d’utilisation avancée
Traitement des entréesLien direct vers Traitement des entrées
import { Agent } from '@mastra/core/agent'
import { PIIDetector } from '@mastra/core/processors'
export const agent = new Agent({
id: 'private-agent',
name: 'private-agent',
instructions: 'You are a helpful assistant',
model: 'openai/gpt-5.6-sol',
inputProcessors: [
new PIIDetector({
model: 'openrouter/openai/gpt-oss-safeguard-20b',
detectionTypes: ['email', 'phone', 'credit-card', 'ssn'],
threshold: 0.6,
strategy: 'redact',
redactionMethod: 'mask',
instructions:
'Detect and redact personally identifiable information while preserving message intent',
includeDetections: true,
preserveFormat: true,
}),
],
})
Traitement des sorties par lotsLien direct vers Traitement des sorties par lots
Lorsque vous utilisez PIIDetector comme Processor de sortie, il est recommandé de l’associer à BatchPartsProcessor afin d’optimiser les performances. BatchPartsProcessor regroupe les segments du flux avant de les transmettre au détecteur de PII, ce qui réduit le nombre d’appels au LLM nécessaires à la détection.
import { Agent } from '@mastra/core/agent'
import { BatchPartsProcessor, PIIDetector } from '@mastra/core/processors'
export const agent = new Agent({
id: 'output-pii-agent',
name: 'output-pii-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 PII detection on batched content
new PIIDetector({
model: 'openrouter/openai/gpt-oss-safeguard-20b',
strategy: 'redact',
}),
],
})