透過 Cloud Logging 存取 Gemini Enterprise 使用情形稽核記錄

本頁說明如何設定及存取 Gemini Enterprise 的使用情況稽核記錄。

基本概念

本節介紹 Gemini Enterprise 觀測能力相關的重要概念。

概念 說明
使用情況稽核記錄 使用情況稽核記錄會記錄 Google Cloud 資源中的管理和存取活動。詳細說明執行動作的人員、動作內容、時間和來源。這些記錄對於安全性稽核、法規遵循,以及瞭解資源使用情形至關重要。

事前準備

設定稽核記錄前,請確認您具備下列條件:

記錄資訊

下表彙整了 Gemini Enterprise 記錄的用量資料。各欄位的標籤如下:

  • 敏感:欄位可能包含提示、回覆或其他客戶內容。只有在啟用「啟用提示詞輸入內容和回覆輸出內容的記錄功能」設定時,系統才會記錄這項資訊。如果關閉這項設定,文字值會替換為 <elided>,其他值則會省略。詳情請參閱「開啟觀測能力設定」。
  • 不敏感:無論是否啟用設定,系統都會記錄該欄位。
  • 部分機密:只有列出的子欄位屬於機密。其他子欄位則不屬於機密資訊。
服務路徑 記錄資料
SearchService.Search

記錄用於建立基準或做為 LLM 輸入內容的來源資料。

要求:
  • query (機密)
  • user_info (部分敏感)。只有下列子欄位屬於機密:
    • time_zone
    • precise_location

回應:
  • attribution_token (非機密)
  • results.id (非機密)
  • results.document.name (非機密)
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 (部分敏感)。除了 document_metadata.document 和 document_metadata.uri 之外,所有子欄位都屬於機密資訊。
  • answer.skipped_reasons (非機密)
  • agent_info.agent (非機密)
  • agent_info.display_name (機密)
  • agent_info.core_assistant (非機密)
  • agent_info.agent_kind (非機密)
  • agent_info.spiffe_id (非機密)
AssistantService.StreamAssist 要求:
  • name (非機密)
  • query.text (機密)
  • query.parts (機密)
  • agents_spec (部分敏感)。只有下列子欄位屬於機密:
    • agent_specs.input_variables
    • agent_specs.node_context.node_input
    • agent_specs.node_context.agent_description
    • agent_specs.node_context.node_instruction
    • agent_specs.artifact_spec.tagged_artifact_content

回應:
  • 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 (部分敏感)。除了 document_metadata.document 和 document_metadata.uri 之外,所有子欄位都屬於機密資訊。
  • answer.skipped_reasons (非機密)
  • agent_info.agent (非機密)
  • agent_info.display_name (機密)
  • agent_info.core_assistant (非機密)
  • agent_info.agent_kind (非機密)
  • agent_info.spiffe_id (非機密)
  • model_info.model (非機密)
  • model_info.requested_model (非機密)
  • model_info.model_selection_mode (非機密)

model_info.model 是助理在該回合執行的模型。如果要求未固定模型,model_selection_mode 為 MODEL_SELECTION_MODE_AUTO,requested_model 則為空白;如果要求固定模型,model_selection_mode 為 MODEL_SELECTION_MODE_EXPLICIT,requested_model 則會保留要求的模型。

一輪對話可以交給執行不同模型的特殊代理。model_info.model 不會回報該代理的模型,而完全在該代理中執行的回合會使 model_info.model 留空。

ConversationSearchService.AnswerQuery 要求:
  • serving_config (非機密)
  • query.query_id (非機密)
  • query.text (機密)
  • session (非機密)
  • user_pseudo_id (非機密)
  • end_user_spec (部分敏感)。只有下列子欄位屬於機密:
    • end_user_metadata.chunk_info.content
    • end_user_metadata.chunk_info.document_metadata.title
  • 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_text
    • grounding_supports
    • references
    • blob_attachments
    • steps.actions
  • 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 (非機密)
AgentService.DeleteAgent 要求:
  • name (非機密)

回應:
  • 未記錄任何欄位
GroundedGenerationService.GenerateGroundedContent 要求:
  • contents (機密)
  • location (非機密)
  • generation_spec (部分敏感)。只有下列子欄位屬於機密:
    • language_code
  • system_instruction (機密)
  • safety_settings (非機密)
  • user_labels (機密)
  • grounding_spec.explicit_search_queries (機密)
  • grounding_spec.grounding_sources (部分敏感)。只有下列子欄位屬於機密:
    • inline_source
    • search_source.filter
    • api_source.manifest.api_spec.open_api_yaml
    • elastic_source.search_template
    • elastic_source.num_hits
    • parallel_ai_source.custom_configs
    • exa_ai_source.custom_configs

回應:
  • content (機密)
  • grounding_metadata (部分敏感)。只有下列子欄位屬於機密:
    • support_chunks,source和index除外
    • google_maps_support_chunks,source和index除外
    • api_calls.request_payload
    • api_calls.response_body
    • api_calls.uri
  • grounding_score (非機密)
DataConnectorService.UpdateDataConnector 要求:
  • data_connector.name (非機密)
  • data_connector.create_time (非機密)
  • data_connector.update_time (非機密)
  • data_connector.data_source (非機密)
  • data_connector.refresh_interval (非機密)
  • data_connector.bap_config (非機密)

回應:
  • data_connector.name (非機密)
  • data_connector.create_time (非機密)
  • data_connector.update_time (非機密)
  • data_connector.data_source (非機密)
  • data_connector.refresh_interval (非機密)
  • data_connector.bap_config (非機密)
AssistantService.AddContextFile 要求:
  • name (非機密)
  • file_name (機密)

回應:
  • session (非機密)
  • file_id (非機密)
AssistantService.UploadSessionFile 要求:
  • name (非機密)
  • blob.filename (機密)

回應:
  • file_id (非機密)
UserEventService.WriteUserEvent 要求:
  • 要求主體中的所有欄位 (部分機密)。只有下列子欄位屬於機密:
    • user_event.user_info.time_zone
    • user_event.user_info.precise_location
    • user_event.filter
    • user_event.attributes
    • user_event.panel.documents
    • user_event.panels.documents
    • user_event.search_info.search_query
    • user_event.completion_info.selected_suggestion
    • user_event.feedback.comment
    • user_event.feedback.conversation_info.query

回應:
  • 未記錄任何欄位
CoscientistService.CoscientistRunCompletion

Co-Scientist 執行作業順利完成時,系統會記錄一次。與其他資料列不同,這個項目並非 API 要求的記錄。log_metadata.name 是 Co-Scientist 執行個體的資源名稱。暫停並恢復的執行個體會產生一筆涵蓋整個執行個體的項目。如要瞭解如何查詢這些項目,請參閱「監控 Co-Scientist 執行作業」。

coscientist_run_info:
  • starter_user_principal (非機密):啟動執行作業的使用者,以電子郵件地址或其他主體 ID 表示。如果是分支執行作業,則為分支執行作業的使用者。
  • start_time (非機密):執行個體的建立時間。
  • duration (不敏感):從 start_time 到執行完成的時間,包括暫停的時間。
  • input_token_count (非機密):執行個體在所有執行作業中使用的輸入詞元。這是用量,而非費用;請透過 Cloud Billing 核對支出。
  • output_token_count (非機密):執行個體在所有執行作業中使用的輸出權杖。

存取使用情況稽核記錄

如要存取及查看所有 Gemini Enterprise 使用情況稽核記錄,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Logs Explorer」頁面。

    前往 Logs Explorer

  2. 選取已啟用稽核記錄的 Google Cloud 專案。

  3. 如要只顯示 Gemini Enterprise 記錄,請在查詢編輯器欄位中輸入下列查詢,然後按一下「Run Query」(執行查詢):

      logName="projects/PROJECT_ID/logs/discoveryengine.googleapis.com%2Fgemini_enterprise_user_activity" OR logName=~"projects/PROJECT_ID/logs/discoveryengine.googleapis.com%2Fgen_ai.*"
    

    更改下列內容:

    • PROJECT_ID:專案 ID。

控管記錄檔存取權

您可以在 Cloud Logging 中控管記錄檔的存取權。如需存取控管方法的詳細指南,包括使用 IAM 條件進行精細存取,請參閱「使用 IAM 控管存取權」。

預設存取控管

根據預設,Gemini Enterprise 會將 Cloud Logging 資料傳送至 _Default bucket。下列 IAM 角色可控管這個 bucket 的存取權:

精細的存取控管機制

如果專案包含敏感度等級不同的記錄,您可以使用多項 Google Cloud 和 Cloud Logging 工具,設定更精細的存取控管。

您可以使用下列選項,設定精細的存取控管機制:

選項 說明
IAM 條件 使用 IAM 條件設定精細的存取控管機制。詳情請參閱「Logging 角色」。
記錄檢視 使用記錄檢視,限制使用者只能存取記錄檔 bucket 中的部分記錄。詳情請參閱「設定記錄檔 bucket 的記錄檔檢視表」。
記錄接收器 使用記錄檔接收器,將機密記錄檔轉送至 IAM 存取權更嚴格的獨立專案。詳情請參閱「轉送記錄檔至支援的目的地」。
標記 使用標記管理專案中個別記錄檔值區的 IAM 存取權。詳情請參閱「使用標記管理記錄檔 bucket 的存取權」。
欄位層級存取控管 使用欄位層級存取控管機制,隱藏或限制存取記錄項目中的特定欄位。詳情請參閱「設定欄位層級存取權」。

後續步驟