將對話記錄匯出至 BigQuery

您可以將對話記錄匯出至 BigQuery。設定完成後,所有即時對話記錄都會寫入 BigQuery 資料表。這項功能提供進階分析工具,可協助您偵錯及改善代理,並找出對話資料中的模式。

限制

限制如下:

  • 每段對話最多可匯出 500 則。

跨專案權限

如果 Dialogflow 代理和 BigQuery 資料不在同一個專案,則與 Dialogflow Google Cloud 專案相關聯的服務帳戶,也必須具備 BigQuery Google Cloud 專案中 BigQuery 資料集的 roles/bigquery.dataEditor IAM 權限。

服務帳戶格式:service-<dialogflow-project-number>@gcp-sa-dialogflow.iam.gserviceaccount.com

在 Dialogflow 中設定匯出作業的使用者,必須具備 BigQuery 專案的權限。否則,BigQuery 專案不會顯示在 Dialogflow 控制台的選項中。

使用者必須具備 BigQuery 專案的最低權限 resourcemanager.projects.get,才能在 Dialogflow 中查看該專案。或者,您也可以指派下列其中一個 Google Cloud 預先定義的角色,這些角色包含這項權限,但使用者不需具備 BigQuery 資料集的存取權:roles/browser或roles/bigquery.metadataViewer。

資料表說明

表格中的每一列都包含一個對話回合,並有下列資料欄:

欄 類型 說明
project_id STRING 專案 ID。
agent_id STRING 代理 ID。
conversation_name STRING 工作階段的完整資源名稱。
turn_position INTEGER 對話輪次。
request_time TIMESTAMP 對話回合的時間。
language_code STRING 語言標記。
要求 JSON 偵測意圖要求。
回應 JSON 偵測意圖回應。
partial_responses JSON 部分回覆 (如適用)。
derived_data JSON 這個對話回合的其他中繼資料。
conversation_signals JSON NLU 相關數據分析資料。如需 JSON 結構定義,請參閱 ConversationSignals。
bot_answer_feedback JSON 答案意見回饋 (如有)。

設定

如要設定對話記錄匯出功能,請按照下列步驟操作:

  1. 確認對話記錄已啟用。
  2. 按照 BigQuery 資料集建立指南建立資料集。請記下資料集名稱,下一步會用到。
  3. 請按照 BigQuery 資料表建立指南,使用 SQL 結構定義定義建立資料表。使用下列 SQL 陳述式建立:

    CREATE TABLE <your_dataset_name>.dialogflow_bigquery_export_data(
      project_id STRING,
      agent_id STRING,
      conversation_name STRING,
      turn_position INTEGER,
      request_time TIMESTAMP,
      language_code STRING,
      request JSON,
      response JSON,
      partial_responses JSON,
      derived_data JSON,
      conversation_signals JSON,
      bot_answer_feedback JSON
    );
    
  4. 調整代理設定,啟用 BigQuery Export 功能,並提供上述建立的資料集和資料表名稱。