Audit-Logging für die Nutzung von Gemini Enterprise konfigurieren

In dieser Anleitung wird beschrieben, wie Administratoren die Nutzungsprotokollierung für Gemini Enterprise über die API aktivieren und überwachen können. Mit Audit-Logs zur Nutzung können Organisationen Nutzervorgänge, Metadaten und Kerninhalte zu Audit- und Observability-Zwecken nachverfolgen.

Sie können die Nutzungsprüfung für Gemini Enterprise über die ObservabilityConfig-Einstellungen in der Gemini Enterprise App verwalten. Wenn Sie die Observability aktivieren, werden Anforderungs- und Antwortdaten, einschließlich Prompts und Metadaten zur Fundierung, erfasst und in Cloud Logging gespeichert.

Hinweise

Bevor Sie Audit-Logs konfigurieren, müssen Sie die folgenden IAM-Rollen haben:

  • Zum Aktivieren des Audit-Loggings benötigen Sie die IAM-Rolle Discovery Engine Admin (roles/discoveryengine.admin).
  • Für den Zugriff auf Cloud Logging benötigen Sie die IAM-Rolle Logbetrachter (roles/logging.viewer).

Audit-Logging für die Nutzung von Apps aktivieren

In den folgenden Abschnitten wird beschrieben, wie Sie das Audit-Logging für die Nutzung aktivieren, wenn Sie eine neue App erstellen oder für eine bestehende App.

Audit-Logging für die Nutzung beim Erstellen einer App aktivieren

Sie können die Protokollierung von Nutzungs-Audits aktivieren, wenn Sie eine neue App erstellen. Dazu müssen Sie die observabilityConfig-Einstellungen in den Befehl zum Erstellen der App einfügen. Führen Sie den folgenden Befehl aus, um eine neue App zu erstellen, bei der die Audit-Logs zur Nutzung aktiviert sind:

REST

curl -X POST \
-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_ID/locations/LOCATION/collections/default_collection/engines?engineId=APP_ID" \
-d '{
  "name": "projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID",
  "displayName": "APP_DISPLAY_NAME",
  "solutionType": "SOLUTION_TYPE_SEARCH",
  "searchEngineConfig": {
    "searchTier": "SEARCH_TIER_ENTERPRISE",
    "searchAddOns": ["SEARCH_ADD_ON_LLM"],
    "requiredSubscriptionTier": "SUBSCRIPTION_TIER_SEARCH_AND_ASSISTANT"
  },
  "industryVertical": "GENERIC",
  "appType": "APP_TYPE_INTRANET",
  "observabilityConfig": {
    "observabilityEnabled": true,
    "sensitiveLoggingEnabled": true
  }
}'

Ersetzen Sie Folgendes:

  • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:
    • us für die Multiregion „USA“
    • eu für die Multiregion „EU“
    • global für den Standort „Global“
    Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.
  • PROJECT_ID: die Projekt-ID.
  • LOCATION: die Multiregion Ihres Datenspeichers: global, us oder eu
  • APP_ID: die ID der App, die Sie erstellen möchten.
  • APP_DISPLAY_NAME: der Anzeigename der App, die Sie erstellen möchten.

Nutzungs-Audit-Logging für eine vorhandene App aktivieren

Führen Sie den folgenden Befehl aus, um die Audit-Protokollierung der Nutzung für eine vorhandene App zu aktivieren:

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_ID/locations/LOCATION/collections/default_collection/engines/APP_ID?updateMask=observabilityConfig" \
-d '{
  "observabilityConfig": {
    "observabilityEnabled": true,
    "sensitiveLoggingEnabled": true
  }
}'

Ersetzen Sie Folgendes:

  • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:
    • us für die Multiregion „USA“
    • eu für die Multiregion „EU“
    • global für den Standort „Global“
    Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.
  • PROJECT_ID: die Projekt-ID.
  • LOCATION: die Multiregion Ihres Datenspeichers: global, us oder eu
  • APP_ID: die ID der App.

Logdaten

In der folgenden Tabelle sind die von Gemini Enterprise protokollierten Nutzungsdaten zusammengefasst:

Dienstpfad In Logs erfasste Daten
SearchService.Search

Protokolliert die Daten zu den Quellen, die für die Fundierung oder als LLM-Eingabe verwendet werden.

Anfrage:
  • query
  • user_info

Antwort:
  • attribution_token
  • results.id
AssistantService.Assist

Protokolliert die Anfrage und Antwort des Gemini Enterprise-Assistenten.

Anfrage:
  • name
  • query.text
  • query.parts

Antwort:
  • assist_token
  • answer.name
  • answer.state
  • answer.replies.grounded_content.text
  • answer.replies.grounded_content.text_grounding_metadata.segments
  • answer.replies.grounded_content.text_grounding_metadata.references
  • answer.skipped_reasons
AssistantService.StreamAssist Anfrage:
  • name
  • query.text
  • query.parts
  • agents_spec

Antwort:
  • assist_token
  • answer.name
  • answer.state
  • answer.replies.grounded_content.text
  • answer.replies.grounded_content.text_grounding_metadata.segments
  • answer.replies.grounded_content.text_grounding_metadata.references
  • answer.skipped_reasons
ConversationSearchService.AnswerQuery Anfrage:
  • serving_config
  • query.query_id
  • query.text
  • session
  • user_pseudo_id
  • end_user_spec
  • answer_generation_spec.model_spec.model_version
  • answer_generation_spec.prompt_spec.preamble
  • answer_generation_spec.include_citations
  • answer_generation_spec.answer_language_code
  • answer_generation_spec.ignore_adversarial_query
  • answer_generation_spec.ignore_non_answer_seeking_query
  • answer_generation_spec.ignore_jail_breaking_query

Antwort:
  • answer
  • answer_query_token
EngineService.CreateEngine Anfrage:
  • engine_id
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores

Antwort:
  • engine_id
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores
EngineService.UpdateEngine Anfrage:
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores
  • update_mask

Antwort:
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores
AgentService.SetIamPolicy Anfrage:
  • policy.bindings.roles
  • policy.bindings.members

Antwort:
  • policy.bindings.roles
  • policy.bindings.members
AgentService.CreateAgent Anfrage:
  • parent
  • agent_id
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case

Antwort:
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case
AgentService.UpdateAgent Anfrage:
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case
  • update_mask

Antwort:
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case

Auf Nutzungslogs zugreifen

So greifen Sie auf die Audit-Logs zur Nutzung zu und rufen sie auf:

  1. Rufen Sie in der Google Cloud Console die Seite Log-Explorer auf.

    Zum Log-Explorer

  2. Wählen Sie das Google Cloud -Projekt aus, für das Sie das Audit-Logging aktiviert haben.

  3. Wenn Sie nur Gemini Enterprise-Logs aufrufen möchten, geben Sie die folgende Abfrage in das Feld des Abfrageeditors ein und klicken Sie auf Abfrage ausführen:

      logName="projects/PROJECT_ID/logs/discoveryengine.googleapis.com%2Fgemini_enterprise_user_activity
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID: die Projekt-ID.

Audit-Logs zur Nutzung für eine App deaktivieren

Führen Sie den folgenden Befehl aus, um die Audit-Protokollierung der Nutzung zu deaktivieren:

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_ID/locations/LOCATION/collections/default_collection/engines/APP_ID?updateMask=observabilityConfig" \
-d '{
  "observabilityConfig": {
    "observabilityEnabled": false,
    "sensitiveLoggingEnabled": false
  }
}'

Ersetzen Sie Folgendes:

  • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:
    • us für die Multiregion „USA“
    • eu für die Multiregion „EU“
    • global für den Standort „Global“
    Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.
  • PROJECT_ID: die Projekt-ID.
  • LOCATION: die Multiregion Ihres Datenspeichers: global, us oder eu
  • APP_ID: die ID der App.