Model Armor テンプレートの作成と管理

このページでは、Model Armor テンプレートの作成、表示、更新、削除を行う方法について説明します。

Model Armor テンプレートを作成する

コンソール

  1. Google Cloud コンソールで、[Model Armor] ページに移動します。

    Model Armor に移動

  2. Model Armor を有効にしたプロジェクトが表示されていることを確認します。

  3. [モデルのアーマー] ページで、[テンプレートを作成] をクリックします。[テンプレートを作成] ページが表示されます。

  4. テンプレート ID を指定します。テンプレート ID には、英字、数字、ハイフンを使用できます。63 文字以内で指定してください。スペースを含めたり、先頭をハイフンにしたりすることはできません。

  5. Model Armor テンプレートを実行するリージョンを選択します。リージョンは後で変更できません。

  6. 省略可: ラベルを追加します。ラベルは、関連するテンプレートをグループ化するために使用できる Key-Value ペアです。

  7. [検出] セクションで、次の検出設定を構成します。

    • 悪意のある URL の検出: ユーザーやシステムに害を及ぼすように設計されたウェブアドレス(URL)を特定します。これらの URL は、フィッシング サイト、マルウェアのダウンロード、その他のサイバー攻撃につながる可能性があります。詳細については、悪意のある URL の検出をご覧ください。

    • プロンプト インジェクションとジェイルブレイクの検出: プロンプト内の不正なコンテンツとジェイルブレイクの試行を検出します。より厳格に適用するには、信頼度レベルを低以上** に設定して、プロンプト インジェクションやジェイルブレイクの可能性が高いコンテンツのほとんどを検出します。詳細については、プロンプト インジェクションとジェイルブレイクの検出をご覧ください。

    • 機密データ保護: 機密データを検出し、誤って公開されないようにします。また、プロンプト インジェクションなどの攻撃によって AI モデルからデータを抽出する試みをブロックします。詳細については、Sensitive Data Protection をご覧ください。

      機密データの保護は、基本または高度のいずれかを設定できます。

      • 基本 - 事前定義された infoType を使用して、機密データの種類を検出します。事前定義された infoType の詳細については、機密データの保護の基本構成をご覧ください。

      • 詳細 - Sensitive Data Protection サービスで定義された検査テンプレートを、機密データの infoType の単一ソースとして使用します。

        高度な機密データ保護を選択する場合は、次のパラメータを指定する必要があります。

        • 検査テンプレート: 検査スキャンジョブの構成情報(使用する定義済み検出器またはカスタム検出器を含む)を保存するためのテンプレート。テンプレート名を次の形式で入力します。 projects/projectName/locations/locationID/inspectTemplates/templateName

        • 省略可: 匿名化テンプレート: 匿名化ジョブの構成情報(infoType の変換と構造化データセットの変換の両方を含む)を保存するためのテンプレート。匿名化テンプレートの識別子を次の形式で入力します。projects/projectName/locations/locationID/deidentifyTemplates/templateName

  8. [責任ある AI] セクションで、各コンテンツ フィルタの信頼レベルを設定できます。信頼度レベルは、検出結果がコンテンツ フィルタ タイプと一致する可能性を表します。次の値があります。

    • なし: コンテンツ タイプを検出しません。
    • 低以上: 信頼度レベルが低、中、高のコンテンツを検出します。
    • 中以上: 信頼度が中または高のコンテンツを検出します。
    • : 信頼度が高いコンテンツを検出します。

    より厳格に適用するには、信頼レベルを低以上に設定して、コンテンツ フィルタ タイプに該当するほとんどのコンテンツを検出できるようにします。すべてのコンテンツ タイプの信頼レベルを一度に選択することもできます。

  9. [作成] をクリックします。

gcloud

次のコマンドを実行します。

gcloud model-armor templates create TEMPLATE_ID --location LOCATION

次のように置き換えます。

  • LOCATION - テンプレートの場所。
  • TEMPLATE_ID - テンプレートの ID。

すべてのフィルタを使用した例を以下に示します。

 gcloud model-armor templates create --location LOCATION TEMPLATE_ID 
--rai-settings-filters='[{ "filterType": "HATE_SPEECH", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "HARASSMENT", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "SEXUALLY_EXPLICIT", "confidenceLevel": "MEDIUM_AND_ABOVE" }]'
--basic-config-filter-enforcement=enabled
--pi-and-jailbreak-filter-settings-enforcement=enabled
--pi-and-jailbreak-filter-settings-confidence-level=LOW_AND_ABOVE
--malicious-uri-filter-settings-enforcement=enabled
--template-metadata-custom-llm-response-safety-error-code=798
--template-metadata-custom-llm-response-safety-error-message="test template llm response evaluation failed"
--template-metadata-custom-prompt-safety-error-code=799
--template-metadata-custom-prompt-safety-error-message="test template prompt evaluation failed"
--template-metadata-ignore-partial-invocation-failures
--template-metadata-log-operations
--template-metadata-log-sanitize-operations

REST API

このコマンドを使用して、新しい Model Armor テンプレートを作成します。

  curl -X POST 
-d "{'FILTER_CONFIG': {} }"
-H "Content-Type: application/json"
-H "Authorization: Bearer $(gcloud auth print-access-token)"
"https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates?template_id=TEMPLATE_ID"

次のように置き換えます。

  • FILTER_CONFIG は、テンプレートのフィルタ構成です。
  • PROJECT_ID は、テンプレートが属するプロジェクトの ID です。
  • TEMPLATE_ID は、作成するテンプレートの ID です。
  • LOCATION は、テンプレートの場所です。

このトークンを取得する手順はこちらをご覧ください。

次の例は、Model Armor テンプレートの構成を示しています。

  1. Model Armor テンプレートでスクリーニングするフィルタと、必要に応じて信頼レベルの構成(この場合は FILTER_CONFIG)を作成します。
  2. 作成した構成を使用して、Model Armor テンプレート(この場合は ma-template-id-1234)を作成します。

LOW_AND_ABOVE は、低、中、高のいずれかの可能性のあるコンテンツにフラグが付けられることを意味します。

  export FILTER_CONFIG='{
 "filterConfig": {
  "raiSettings": {
    "raiFilters": [{
      "filterType": "HATE_SPEECH",
      "confidenceLevel": "MEDIUM_AND_ABOVE"
    }, {
      "filterType": "HARASSMENT",
      "confidenceLevel": "HIGH"
    }, {
      "filterType": "DANGEROUS",
      "confidenceLevel": "MEDIUM_AND_ABOVE"
    },{
      "filterType": "SEXUALLY_EXPLICIT",
      "confidenceLevel": "MEDIUM_AND_ABOVE"
    }]
  },

  "piAndJailbreakFilterSettings": {
    "filterEnforcement": "ENABLED",
    "confidenceLevel": "LOW_AND_ABOVE"
  },
  "maliciousUriFilterSettings": {
    "filterEnforcement": "ENABLED"
  }
 }
}'

curl -X POST \
 -d  $FILTER_CONFIG \
 -H "Content-Type: application/json" \
 -H "Authorization: Bearer $(gcloud auth print-access-token)" \
 "https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/ templates?template_id=TEMPLATE_ID"

Model Armor テンプレートを表示する

コンソール

  1. Google Cloud コンソールで、[Model Armor] ページに移動します。

    Model Armor に移動

  2. Model Armor を有効にしたプロジェクトが表示されていることを確認します。[Model Armor] ページが表示され、プロジェクト用に作成されたテンプレートが一覧表示されます。

  3. リスト内の任意のテンプレートをクリックすると、その詳細が表示されます。

gcloud

次のコマンドを実行します。

gcloud model-armor templates describe TEMPLATE_ID --location LOCATION

次のように置き換えます。

  • LOCATION - テンプレートの場所。
  • TEMPLATE_ID - テンプレートの ID。

REST API

次のコマンドを実行します。

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://modelarmor.LOCATION_ID.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates/TEMPLATE_ID"

次のように置き換えます。

  • PROJECT_ID は、テンプレートが属するプロジェクトの ID です。
  • TEMPLATE_ID は、作成するテンプレートの ID です。
  • LOCATION は、テンプレートの場所です。

Model Armor テンプレートを更新する

コンソール

  1. Google Cloud コンソールで、[Model Armor] ページに移動します。

    Model Armor に移動

  2. Model Armor を有効にしたプロジェクトが表示されていることを確認します。[Model Armor] ページが表示され、組織用に作成されたテンプレートが表示されます。

  3. リストから更新するテンプレートをクリックします。[テンプレートの詳細] ページが表示されます。

  4. [編集] をクリックします。

  5. 必要なパラメータを更新し、[保存] をクリックします。

gcloud

次のコマンドを実行します。

gcloud model-armor templates update TEMPLATE_ID --location LOCATION

次のように置き換えます。

  • LOCATION - テンプレートの場所。
  • TEMPLATE_ID - テンプレートの ID。

REST API

次のコマンドを実行します。

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d $FILTER_CONFIG \
"https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates/TEMPLATE_ID?update_mask=FILTER_CONFIG"

次のように置き換えます。

  • PROJECT_ID - テンプレートが属するプロジェクトの ID。
  • LOCATION - テンプレートの場所。
  • TEMPLATE_ID - テンプレートの ID。
  • FILTER_CONFIG - フィルタ構成の JSON 表現。

その他のフィールドはすべて変更できません。他のフィールド(テンプレート名の更新など)を更新しようとすると、エラーが発生します。

Model Armor テンプレートを削除する

コンソール

  1. Google Cloud コンソールで、[Model Armor] ページに移動します。

    Model Armor に移動

  2. Model Armor を有効にしたプロジェクトが表示されていることを確認します。[Model Armor] ページが表示され、組織用に作成されたテンプレートが表示されます。

  3. リストから削除するテンプレートをクリックします。[テンプレートの詳細] ページが表示されます。

  4. [削除] をクリックします。確認ダイアログが表示されます。

  5. テンプレート名を入力して削除を確定してから、[削除] をクリックします。

gcloud

次のコマンドを実行します。

gcloud model-armor templates delete TEMPLATE_ID --location LOCATION

次のように置き換えます。

  • LOCATION - テンプレートの場所。
  • TEMPLATE_ID - テンプレートの ID。

REST API

次のコマンドを実行します。

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)"  \
"https://modelarmor.LOCATION_ID.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates/TEMPLATE_ID"

次のように置き換えます。

  • PROJECT_ID - テンプレートが属するプロジェクトの ID。
  • LOCATION - テンプレートの場所。
  • TEMPLATE_ID - テンプレートの ID。

次のステップ