PII 検出ガードレールについて、そしてエージェントでの使用方法について学習します。
PII 検出ガードレールは、エージェントの入力で PII (個人識別情報) を検出するために使用できる組み込みのガードレールです。
Agno 2.x : Learn : エージェント – ガードレール : PII 検出ガードレール
作成 : クラスキャット・セールスインフォメーション
作成日時 : 11/04/2025
バージョン : Agno 2.2.6
* 本記事は docs.agno.com の以下のページを独自に翻訳した上で、補足説明を加えてまとめ直しています。スニペットはできる限り日本語を使用しています :
* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。
◆ お問合せ : 下記までお願いします。
- クラスキャット セールス・インフォメーション
 - sales-info@classcat.com
 - ClassCatJP
 
 

Agno 2.x : Learn : エージェント – ガードレール : PII 検出ガードレール
PII 検出ガードレールについて、そしてエージェントでの使用方法について学習します。
PII 検出ガードレールは、エージェントの入力で PII (個人識別情報) を検出するために使用できる組み込みのガードレールです。
これは、PII が LLM に送信されることを許容したくないアプリケーションで有用です。
基本的な使用方法
エージェントに PII 検出ガードレールを提供するには、インポートしてから pre_hooks パラメータを使用してエージェントにわたす必要があります :
from agno.guardrails import PIIDetectionGuardrail
from agno.agent import Agent
from agno.models.openai import OpenAIChat
agent = Agent(
    name="Privacy-Protected Agent",
    model=OpenAIChat(id="gpt-5-mini"),
    pre_hooks=[PIIDetectionGuardrail()],
)
PII フィールド
ガードレールにより処理される PII フィールドのデフォルトのリストは以下のとおりです :
- 社会保障番号 (SSN)
 - クレジットカード番号
 - 電子メールアドレス
 - 電話番号
 
どの特定のフィールドを検出したいか選択することもできます。例えば、このようにすれば電子メールのチェックを無効にできます :
guardrail = PIIDetectionGuardrail(
    enable_email_check=False,
)
カスタム PII フィールド
独自のカスタム PII パターンを追加することで、ガードレールにより処理される PII フィールドのリストを拡張することもできます。
例えば、銀行口座番号用のカスタム PII パターンを追加できます :
guardrail = PIIDetectionGuardrail(
    custom_patterns={
        "bank_account_number": r"\b\d{10}\b",
    }
)
custom_patterns パラメータ経由でカスタム PII パターンを提供すると、PII フィールドのデフォルトのリストを上書きでなく、拡張できることに注意してください。enable_ssn_check, enable_credit_card_check, enable_email_check, そして enable_phone_check パラメータを False に設定することで、デフォルトの PII フィールドのチェックを無効にできます。
PII のマスク
デフォルトでは、PII 検出ガードレールは、入力で PII を検出した場合、エラーを上げます。けれども、mask_pii パラメータを True に設定することで、エラーを上げる代わりに、入力で PII をマスクできます :
guardrail = PIIDetectionGuardrail(
    mask_pii=True,
)
これは、入力のすべての PII をアスタリスク文字でマスクします。例えば、電子メールをチェックする場合、文字列 joe@example.com は、************** としてマスクされます。
以上
