您可以將互動記錄匯出至 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 主控台的選項中。
使用者要在 Dialogflow 中查看 BigQuery 專案,必須具備 resourcemanager.projects.get
權限。或者,您也可以指派下列其中一個 Google Cloud 預先定義的角色:roles/browser
或 roles/bigquery.metadataViewer
,這些角色具備這項權限,但不需要使用者具備 BigQuery 資料集的存取權。
資料表說明
表格的每個資料列都包含一個對話回合,並包含下列欄位:
欄 | 類型 | 說明 |
---|---|---|
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 | 回覆意見回饋 (如果有提供)。 |
設定
如要設定互動記錄匯出功能,請按照下列步驟操作:
- 確認已啟用互動記錄。
- 請按照 BigQuery 資料集建立指南建立資料集。請記下資料集名稱,以便在下一個步驟中使用。
請按照 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 );
設定代理程式設定,啟用 BigQuery 匯出功能,並提供先前建立的資料集和資料表名稱。