Processor
ファイルベースの Agent は、自身の processors/ ディレクトリから Processor を検出します。ファイルベースの規約については、このページを参照してください。組み込み Processor、カスタム Processor、ストリーミング動作、高度なパターンについては、Processor ガイドを参照してください。
processors/input/ 内のファイルは、メッセージがモデルに到達する前に実行されます。processors/output/ 内のファイルは、モデルが応答した後に実行されます。各ファイルは 1 つの Processor をデフォルト export し、ファイル名が検出キーになります。
クイックスタートクイックスタートへの直接リンク
processors/input/ に Processor ファイルを配置して、入力 Processor を追加します。
import { PIIDetector } from '@mastra/core/processors'
export default new PIIDetector({
strategy: 'block',
})
この Processor は、ユーザーメッセージがモデルに到達する前に実行されます。
出力 Processor を追加する出力 Processor を追加するへの直接リンク
出力 Processor は、モデルの応答が返される前にフィルタリングまたは変換する場合に適しています。この例では、最終応答から PII を秘匿します。
import { PIIDetector } from '@mastra/core/processors'
export default new PIIDetector({
strategy: 'redact',
})
順序順序への直接リンク
検出された Processor は、config.ts で定義されたすべての Processor の後に追加されます。つまり、設定内の Processor が先に実行されます。
config.inputProcessors → processors/input/* → model
model → config.outputProcessors → processors/output/* → response
config.inputProcessors または config.outputProcessors が関数の場合、関数値の Processor は静的にマージできないため、その種類で検出された Processor は警告とともに無視されます。
config との優先順位config との優先順位への直接リンク
実行時に作成する必要がある Processor や、複数の Agent で共有する Processor には、config.ts を使用します。Agent と一緒にレビューする静的な Agent ごとの Processor には、ファイルベースの Processor を使用します。
優先順位は次のとおりです。
- 関数値の
config.inputProcessorsまたはconfig.outputProcessors - 配列値の
config.inputProcessorsまたはconfig.outputProcessors processors/input/またはprocessors/output/で検出されたファイル
完全なインターフェースについては、Processor リファレンスを参照してください。