- カテゴリ:
:doc:`/sql-reference/functions-string`(AI 関数)
AI_REDACT¶
非構造化テキストデータから個人を特定できる情報(PII)を検出して編集します。
構文¶
AI_REDACTを使用してPIIを検出し、編集します。
AI_REDACT( <input> [, <categories> ] [, <return_error_details> ] [, <mode> ] )
引数¶
必須:
input個人を特定できる情報(PII)を含む可能性があるテキストデータを持つVARCHAR値。
オプション:
categories編集される PII のタイプを指定する文字列値の ARRAY。指定しない場合、サポートされるすべての PII カテゴリが編集されます。サポートされているカテゴリのリストについては、 検出される PII カテゴリ をご参照ください。
サポートされていないカテゴリを渡すとエラーになります。
return_error_detailsエラーが発生した場合にエラーの詳細を返すかどうかを示す BOOLEAN フラグ。TRUE に設定した場合、関数は値とエラーメッセージを含む OBJECT を返します。そのうちの1つは関数が成功したか失敗したかに応じて NULL になります。
セッションパラメーターAI_SQL_ERROR_HANDLING_USE_FAIL_ON_ERRORがFALSEに設定されている必要があります。
mode動作モードを指定するVARCHAR値。有効な値:
``redact``(デフォルト):検出されたPIIを[NAME]や[ADDRESS]などのカテゴリプレースホルダーに置き換えます。
detect:テキストの編集は行わず、検出された各PIIインスタンスの場所とカテゴリを特定する``spans``配列を含んだOBJECTを返します。
注釈
:code:`mode`引数では大文字と小文字を区別しません。
戻り値¶
AI_REDACTの戻り値は、``mode``引数によって異なります。
編集モード(デフォルト)¶
入力テキストが「John Smith」であった場合の``[NAME]``など、PIIをカテゴリプレースホルダーに置き換えた入力テキストを含むVARCHARを返します。
検出モード¶
``spans``配列を含むOBJECTを返します。配列の各要素は、次のフィールドをもつOBJECTです。
category:PIIカテゴリ(例、NAME``または``ADDRESS)を特定するVARCHAR値。
start:入力テキスト内のPIIの開始インデックスを特定するNUMBER値。
end:入力テキスト内のPIIの終了インデックスを特定するNUMBER値。
text: 一致したPIIテキストを含むVARCHAR値。
エラー動作¶
デフォルトでは、AI_REDACTが入力を処理できない場合、関数はエラーを返します。クエリが複数の行を処理する場合は、クエリ全体が失敗します。
AI_SQL_ERROR_HANDLING_USE_FAIL_ON_ERRORがFALSEに設定されている場合、エラー時の戻り値は``return_error_details``引数によって異なります。次の表は、``return_error_details``引数に基づいて、どのような戻り値が返されるかを示しています。
return_error_details戻り値
説明
FALSE引数が省略された場合NULL
TRUE
``value``と``error``のフィールドを持つOBJECT
value: 編集されたテキストを含むVARCHAR値、またはエラーが発生した場合はNULL。error: エラーが発生した場合はエラーメッセージを含むVARCHAR値、または関数が成功した場合はNULL。
エラー処理について詳しくは、:ref:`label-ai_redact_error_handling`を参照してください。
使用上の注意¶
AI_REDACT で編集できる PII のカテゴリについては、 検出される PII カテゴリ をご参照ください。
AI_REDACT の現在のバージョンの制限については、 制限事項 をご参照ください。
例¶
編集の例 をご参照ください。