为 Gemini Enterprise 配置使用情况审核日志记录

本指南介绍了管理员如何通过 API 为 Gemini Enterprise 启用和监控使用情况审核日志记录。使用情况审核日志可让组织跟踪用户操作、元数据和核心内容,以用于审核和可观测性目的。

您可以使用 Gemini Enterprise 应用中的 ObservabilityConfig 设置来管理 Gemini Enterprise 的使用情况审核。开启可观测性后,系统会捕获请求和响应数据(包括提示和依据元数据),并将其存储在 Cloud Logging 中。

准备工作

在配置审核日志之前,请确保您拥有以下 IAM 角色:

  • 如需启用审核日志记录,您必须拥有 Discovery Engine Admin IAM 角色 (roles/discoveryengine.admin)。
  • 如要访问 Cloud Logging,您必须具有 Logs Viewer IAM 角色 (roles/logging.viewer)。

为应用启用使用情况审核日志记录

以下部分介绍了如何在创建新应用时或针对现有应用开启使用情况审核日志记录。

在创建应用时启用使用情况审核日志记录

您可以在创建新应用时,在应用创建命令中添加 observabilityConfig 设置,以开启使用情况审核日志记录。如需创建已开启使用情况审核日志记录的新应用,请运行以下命令:

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
  }
}'

替换以下内容:

  • ENDPOINT_LOCATION:API 请求的多区域。指定以下值之一:
    • us(表示美国多区域)
    • eu(表示欧盟多区域)
    • global(表示全球位置)
    如需了解详情,请参阅为数据存储区指定多区域
  • PROJECT_ID:您的项目的 ID。
  • LOCATION:数据存储区的多区域:globaluseu
  • APP_ID:您要创建的应用的 ID。
  • APP_DISPLAY_NAME:您要创建的应用的显示名称。

为现有应用启用使用情况审核日志记录

如需在现有应用上启用使用情况审核日志记录,请运行以下命令:

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
  }
}'

替换以下内容:

  • ENDPOINT_LOCATION:API 请求的多区域。指定以下值之一:
    • us(表示美国多区域)
    • eu(表示欧盟多区域)
    • global(表示全球位置)
    如需了解详情,请参阅为数据存储区指定多区域
  • PROJECT_ID:您的项目的 ID。
  • LOCATION:数据存储区的多区域:globaluseu
  • APP_ID:应用的 ID。

记录的信息

下表总结了 Gemini Enterprise 记录的使用情况数据:

服务路径 记录的数据
SearchService.Search

记录用于接地或作为 LLM 输入的来源上的数据。

请求:
  • query
  • user_info

回答:
  • attribution_token
  • results.id
AssistantService.Assist

记录来自 Gemini Enterprise 助理的请求和响应。

请求:
  • name
  • query.text
  • query.parts

回答:
  • 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 请求:
  • name
  • query.text
  • query.parts
  • agents_spec

回答:
  • 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 请求:
  • 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

回答:
  • answer
  • answer_query_token
EngineService.CreateEngine 请求:
  • engine_id
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores

回答:
  • engine_id
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores
EngineService.UpdateEngine 请求:
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores
  • update_mask

回答:
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores
AgentService.SetIamPolicy 请求:
  • policy.bindings.roles
  • policy.bindings.members

回答:
  • policy.bindings.roles
  • policy.bindings.members
AgentService.CreateAgent 请求:
  • parent
  • agent_id
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case

回答:
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case
AgentService.UpdateAgent 请求:
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case
  • update_mask

回答:
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case

访问使用情况日志

如需访问和查看使用情况审核日志,请按以下步骤操作:

  1. 在 Google Cloud 控制台中,前往 Logs Explorer 页面。

    前往日志浏览器

  2. 选择已启用审核日志记录的 Google Cloud 项目。

  3. 如需仅显示 Gemini Enterprise 日志,请在查询编辑器字段中输入以下查询,然后点击运行查询

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

    替换以下内容:

    • PROJECT_ID:您的项目的 ID。

为应用关闭使用情况审核日志

如需关闭使用情况审核日志记录,请运行以下命令:

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
  }
}'

替换以下内容:

  • ENDPOINT_LOCATION:API 请求的多区域。指定以下值之一:
    • us(表示美国多区域)
    • eu(表示欧盟多区域)
    • global(表示全球位置)
    如需了解详情,请参阅为数据存储区指定多区域
  • PROJECT_ID:您的项目的 ID。
  • LOCATION:数据存储区的多区域:globaluseu
  • APP_ID:应用的 ID。