このドキュメントでは、Gemini Notebook Enterprise で Model Armor を有効にする方法について説明します。Model Armor は、Gemini Notebook Enterprise を使用して提供された プロンプトとレスポンスを事前にスクリーニングすることで、AI アプリケーションのセキュリティと安全性を強化する Google Cloud サービスです。これにより、さまざまなリスクから保護し、責任ある AI への取り組みを確保できます。Model Armor は Gemini Notebook Enterprise でサポートされており、追加料金はかかりません。
Model Armor は、個人情報(PII)を削除または変更したり、センシティブ データをマスキングしたりしません。ただし、Gemini Notebook Enterprise は、Sensitive Data Protection 検出器をトリガーするレスポンスをブロックします。
ユーザーのクエリや Gemini Notebook Enterprise からのレスポンスで発生する可能性のある問題に対する Model Armor のレスポンスは、テンプレートの適用タイプに則って制御されます。
適用タイプが「検査してブロック」の場合、 Gemini Notebook Enterprise はリクエストをブロックし、エラー メッセージを表示します。これは、コンソールを使用して Model Armor テンプレートを作成する場合のデフォルトの適用タイプです。
適用タイプが「検査のみ」の場合、Gemini Notebook Enterprise はリクエストやレスポンスをブロックしません。
詳細については、 適用タイプを定義するをご覧ください。
始める前に
自分とサービス アカウントに必要なロールが割り当てられていることを確認します。
Gemini Notebook Enterprise で Model Armor を有効にするには、 Gemini Enterprise 管理者 (
roles/discoveryengine.agentspaceAdmin)ロールが必要です。Model Armor テンプレートを作成するには、Model Armor 管理者 ロール(
roles/modelarmor.admin)が必要です。Model Armor API を呼び出すには、Model Armor ユーザー ロール(
roles/modelarmor.user)が必要です。Model Armor テンプレートが Gemini Notebook Enterprise のノートブック とは異なるプロジェクトにある場合、テンプレートのプロジェクト で、ノートブックのサービス アカウントに Model Armor ユーザー ロール(
roles/modelarmor.user)を付与する必要があります。サービス アカウント ID はservice-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.comです。ここで、PROJECT_NUMBERは Gemini Notebook Enterprise インスタンスのプロジェクト番号です。
Model Armor テンプレートを作成する
ユーザー プロンプトとアシスタントからのレスポンスに同じ Model Armor テンプレートを作成して使用することも、2 つの別々の Model Armor テンプレートを作成することもできます。詳細については、Model Armor テンプレートの 作成と 管理をご覧ください。
Gemini Notebook Enterprise 用の Model Armor テンプレートを作成する場合は、次の構成を検討してください。
Model Armor テンプレートは 1 つのプロジェクトで一元的に作成し、さまざまなプロジェクトで再利用できます。プロジェクト横断テンプレートを使用する場合は、 始める前に の説明に従って、プロジェクト横断権限が構成されていることを確認してください。
[リージョン] フィールドで [マルチリージョン] を選択します。次の表に、Model Armor テンプレートのリージョンを Gemini Notebook Enterprise のリージョンにマッピングする方法を示します。
Gemini Notebook Enterprise のマルチリージョン Model Armor マルチリージョン グローバル - US(米国内の複数のリージョン)
- EU(EU 内の複数のリージョン)
US(米国内の複数のリージョン) US(米国内の複数のリージョン) EU(EU 内の複数のリージョン) EU(EU 内の複数のリージョン) Gemini Notebook Enterprise の Model Armor テンプレートで Cloud Logging を構成することはおすすめしません。この構成では、プライベート ログ閲覧者(
roles/logging.privateLogViewer)の IAM ロールを持つユーザーにセンシティブ データが公開される可能性があります。代わりに、次のオプションを検討してください。Model Armor テンプレートを通過するデータをロギングする必要がある場合は、より厳格なアクセス制御を提供する BigQuery などの安全なストレージにログを転送できます。詳細については、ログをルーティングする サポートされている宛先へをご覧ください。
データアクセス監査ログを構成して、Model Armor によって生成されたリクエストとレスポンスのスクリーニング判定を分析してレポートできます。詳細については、監査ログを構成するをご覧ください。
Model Armor テンプレートを使用して Gemini Notebook Enterprise を構成する
次の手順では、Model Armor テンプレートを Gemini Notebook Enterprise に追加する方法について説明します。
REST
Model Armor テンプレートを Gemini Notebook Enterprise に追加するには、次のコマンドを実行します。
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER?update_mask=customerProvidedConfig" \
-d '{
"customerProvidedConfig": {
"notebooklmConfig": {
"modelArmorConfig": {
"userPromptTemplate": "QUERY_PROMPT_TEMPLATE",
"responseTemplate": "RESPONSE_PROMPT_TEMPLATE"
}
}
}
}'
次のように置き換えます。
PROJECT_ID: 実際のプロジェクトの ID。PROJECT_NUMBER: Google Cloud プロジェクトの数。ENDPOINT_LOCATION: API リクエストのマルチリージョン。次のいずれかの値を指定します。- 米国のマルチリージョンの場合は
us - EU のマルチリージョンの場合は
eu - グローバル ロケーションの場合は
global
- 米国のマルチリージョンの場合は
QUERY_PROMPT_TEMPLATE: 作成した Model Armor テンプレートのリソース名 。リソース名を取得するには、Model Armor テンプレートを表示するの手順に沿って、リソース名の値をコピーします。
RESPONSE_PROMPT_TEMPLATE: 作成した Model Armor テンプレートのリソース名 。同じプロジェクトで作成した Model Armor テンプレートを使用することも、別のプロジェクトの Model Armor テンプレートを使用することもできます。
Model Armor テンプレートが有効になっているかどうかをテストする
Model Armor テンプレートを構成したら、Model Armor フィルタで設定された信頼度レベルに従って、Gemini Notebook Enterprise がユーザー プロンプトとレスポンスを事前にスクリーニングしてブロックするかどうかをテストします。
Model Armor テンプレートがポリシーに違反するリクエストを検査してブロック するように構成されている場合、次のポリシー違反メッセージが表示されます。
コンソール
たとえば、次のようなポリシー違反のメッセージが表示されます。
REST
次の情報を含む JSON レスポンス。
次に例を示します。
json
"answer.state": "SKIPPED",
"answer.assist_skipped_reasons": "CUSTOMER_POLICY_VIOLATION_REASON"
Gemini Notebook Enterprise から Model Armor テンプレートを削除する
Gemini Notebook Enterprise から Model Armor テンプレートを削除するには、次のコマンドを実行します。
REST
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER?update_mask=customerProvidedConfig" \
-d '{
"customerProvidedConfig": {
"notebooklmConfig": {
"modelArmorConfig": {}
}
}
}'
次のように置き換えます。
PROJECT_ID: 実際のプロジェクトの ID。PROJECT_NUMBER: Google Cloud プロジェクトの数。ENDPOINT_LOCATION: API リクエストのマルチリージョン。次のいずれかの値を指定します。- 米国のマルチリージョンの場合は
us - EU のマルチリージョンの場合は
eu - グローバル ロケーションの場合は
global
- 米国のマルチリージョンの場合は
Model Armor を使用する際の考慮事項
Gemini Notebook Enterprise で Model Armor を使用する場合は、次の点を考慮してください。
| 匿名化とマスキング |
Model Armor がプロンプトまたはレスポンスのスキャンに Sensitive Data Protection テンプレートを使用する場合、Model Armor は、コンテンツがテンプレートで定義されている検出機能の条件に一致するかどうかを確認します。Sensitive Data Protection はテンプレート構成に基づく匿名化をサポートしていますが、Model Armor は匿名化またはマスキングされたデータを Gemini Notebook Enterprise に返しません。コンテンツが Sensitive Data Protection の検出器をトリガーし、適用タイプが INSPECT_AND_BLOCK の場合、Gemini Notebook Enterprise は匿名化するのではなく、リクエストまたはレスポンスをブロックします。 |
|---|---|
| トークンの上限と割り当て | Gemini Notebook Enterprise で Model Armor を使用する場合、直接的なトークン上限はありませんが、Model Armor 評価の合計スループットは、Gemini Enterprise システムの割り当てと Model Armor API のレート上限によって間接的に管理されます。 |
| サービス レベル契約 | Gemini Notebook Enterprise にはサービス レベル契約が用意されています。Gemini Notebook Enterprise が Model Armor を使用するように構成されている場合、ブロックされたクエリは SLA 違反としてカウントされません。 フェイル オープン モードと フェイル クローズ モードのどちらが使用されているかに関係なく、 |
| コンプライアンス | Gemini Notebook Enterprise と Model Armor はどちらも、さまざまなコンプライアンス認証を提供しています。 両方を組み合わせて使用する場合、有効なコンプライアンス認証は 両方のプロダクトの共通サブセットになります。両方のプロダクトのコンプライアンス 認証を確認し、規制要件を満たしていると確認してください。 |
| ドキュメントのスクリーニング | Model Armor テンプレートがユーザー プロンプトまたはレスポンスをスクリーニングするように構成されている場合、リクエストで送信されると、ソースから抽出されたドキュメント テキストがスクリーニングされます。ただし、ドキュメントに埋め込まれた画像はスクリーニングされません。サポートされているドキュメント タイプについては、ドキュメント スクリーニングをご覧ください。 |
監査ログの構成
Model Armor は、リクエスト とレスポンスのスクリーニング結果の分析に使用できるデータアクセス監査 ログを記録します。これらのログには、Gemini Notebook Enterprise のユーザークエリやレスポンスは含まれていないため、レポートや分析に安全に使用できます。詳細については、Model Armor の監査ロギングをご覧ください。
これらのログにアクセスするには、
プライベート ログ閲覧者
(roles/logging.privateLogViewer)の IAM ロールが必要です。
データアクセス監査ログを有効にする
データアクセス監査ログを有効にするには、次の操作を行います。
Google Cloud コンソールで、[IAM と管理] > [監査ログ] に移動します。
[Model Armor API] を選択します。
[権限タイプ] セクションで、[データ読み取り] 権限タイプを選択します。
[保存] をクリックします。
データアクセスの監査ログを調べる
データアクセス監査ログを調べる手順は次のとおりです。
Google Cloud コンソールで、[ログ エクスプローラ] に移動します。
ログで次のメソッド名を検索します。
google.cloud.modelarmor.v1.ModelArmor.SanitizeUserPrompt(スクリーニングされたユーザー リクエストを表示)google.cloud.modelarmor.v1.ModelArmor.SanitizeModelResponse(スクリーニングされた回答を表示)