Agent Assist 摘要產生器自訂模型功能可讓您在每次對話結束後,利用專門針對客戶資料訓練的模型,為服務專員提供對話摘要。這與透過大型語言模型進行自訂的方式不同,詳情請參閱「含有自訂部分的摘要」一文。摘要可協助客服專員建立對話記錄,並瞭解使用者與客服團隊的通訊記錄。舉例來說,對話的摘要輸出內容可能會類似以下內容:
您也可以匯入自訂 Agent Assist 摘要模型,搭配 CCAI Insights 對話使用。
事前準備
使用 API 訓練及部署摘要模型
建立對話資料集並匯入轉錄稿
在 ConversationDataset
資源上呼叫 create
方法,即可建立對話資料集。請附上含有轉錄稿資料的 Cloud Storage 值區路徑,以便將轉錄稿匯入新的對話資料集。
要求範例:
{ "displayName": "CONVERSATION_DATASET_NAME", "inputConfig": { "gcsSource": { "uris": ["gs://PATH_NAME/*"] } } }
回應包含對話資料集 ID。回應範例:
{ "done": true, "response": { "@type": "type.googleapis.com/google.cloud.dialogflow.v2beta1.ConversationDataset", "name": "projects/PROJECT_ID/locations/global/conversationDatasets/CONVERSATION_DATASET_ID", "displayName": "CONVERSATION_DATASET_NAME", "createTime": "2022-06-16T23:13:22.627380457Z" } }
建立對話模型
在 ConversationModel
資源上呼叫 create
方法,建立摘要對話模型。每個專案每月最多可使用 120 個節點時數進行訓練,並可同時執行一個訓練工作。
必填欄位:
datasets
:提供單一資料集,其中包含用於訓練模型的轉錄資料。summarizationModelMetadata
:將其設為空物件,或填入欄位以覆寫預設值。
要求範例:
{ "displayName": "CONVERSATION_DATASET_NAME", "datasets": [{ "dataset": "projects/PROJECT_ID/locations/global/conversationDatasets/CONVERSATION_DATASET_ID" }], "summarizationModelMetadata": { "trainingModelType": "SUMMARIZATION_MODEL" }, "languageCode": "en-US" }
回應是長時間執行的作業,您可以使用 GetOperation API
進行輪詢,檢查匯出作業是否完成。訓練作業可能需要數小時的時間才能完成。回應會傳回狀態和模型 ID。
回應範例:
{ "name": "projects/PROJECT_ID/locations/global/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.dialogflow.v2beta1.CreateConversationModelOperationMetadata", "conversationModel": "projects/PROJECT_ID/locations/global/conversationModels/MODEL_ID", "state": "TRAINING", "createTime": "2022-06-16T23:27:50Z" } }
評估對話模型
模型訓練完成後,請呼叫 ListConversationModelEvaluations
API 來檢查模型品質。
在 ListConversationModelEvaluationsRequest
中指定要檢查的模型名稱。
{ "parent": "projects/cloud-contact-center-quality/locations/global/conversationModels/d3f2ca9f3e2c571a" }
ListConversationModelEvaluationsResponse
包含 Rouge-L 分數,可用於評估自動摘要。
{ "conversationModelEvaluations": [{ "name": "projects/cloud-contact-center-quality/locations/global/conversationModels/d3f2ca9f3e2c571a/evaluations/c10ac25411a23fe1", "displayName": "Training Auto Generated Evaluation", "createTime": "2022-06-04T03:38:35.151096Z", "evaluationConfig": { }, "summarizationMetrics": { "rougel": 0.4474459 } }] }
部署對話模型
模型訓練完成後,您可以使用 DeployConversationModel
API 部署模型。
在 DeployConversationModelRequest
中,指定要部署的模型 name
。回應是長時間執行的作業,您可以使用 GetOperation API
進行輪詢,檢查匯出作業是否完成。
設定對話設定檔
對話設定檔會設定一組參數,用於控制在對話期間向服務專員提供的建議。下列步驟會使用 HumanAgentAssistantConfig
物件建立 ConversationProfile
。
建立對話設定檔
如要建立對話設定檔,請在 ConversationProfile
資源上呼叫 create
方法。請為新對話方塊設定名稱、 Google Cloud專案 ID 和模型 ID。在 CreateConversationProfileRequest
中,指定要使用的對話模型,以及要 CONVERSATION_SUMMARIZATION
的建議功能。
以下是 JSON 範例:
{ "displayName": "CONVERSATION_PROFILE_NAME", "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "featureConfigs": [{ "suggestionFeature": { "type": "CONVERSATION_SUMMARIZATION" }, "conversationModelConfig": { "model": "projects/PROJECT_ID/locations/global/conversationModels/MODEL_ID", } }] } }, "languageCode": "en-US" }
回應是包含對話方針 name
的 ConversationProfile
物件:
{ "name": "projects/PROJECT_ID/locations/global/conversationProfiles/CONVERSATION_PROFILE_ID", "displayName": "CONVERSATION_PROFILE_NAME", "automatedAgentConfig": { }, "humanAgentAssistantConfig": { "notificationConfig": { }, "humanAgentSuggestionConfig": { "featureConfigs": [{ "suggestionFeature": { "type": "CONVERSATION_SUMMARIZATION" }, "conversationModelConfig": { } }] }, "messageAnalysisConfig": { } }, "languageCode": "en-US", "createTime": "2022-06-06T21:06:46.841816Z", "updateTime": "2022-06-06T21:06:46.841816Z", "projectNumber": "344549229138" }
在執行階段處理對話
當使用者與人類服務專員開始對話時,您就會建立對話。以下各節將逐步說明這項程序。
建立對話
如要建立對話,請在 Conversation
資源上呼叫 create
方法。
回應會包含新的對話 ID。
建立使用者參與者
如要建立使用者參與者,請在 Participant
資源上呼叫 create
方法。在 role
欄位中提供對話 ID 和 END_USER
。
participants
後方的路徑區段包含了您的新終端使用者參與者 ID。
建立人類服務專員參與者
如要建立人類服務專員參與者,請在 Participant
資源上呼叫 create
方法。在 role
欄位中提供對話 ID 和 HUMAN_AGENT
。
participants
後方的路徑區段包含了新的真人代理參與者 ID。
分析訊息
方法 1:在對話期間
如要為對話新增及分析人工服務專員訊息,請在 Participant
資源上呼叫 analyzeContent
方法。提供對話 ID 和真人服務專員參與者 ID。
如要新增及分析對話的使用者訊息,請在 Participant
資源上呼叫 analyzeContent
方法。提供對話 ID 和使用者參與者 ID。
如果 analyzeContent
方法已用於其他 Dialogflow 功能,請勿重複呼叫該方法。
方法 2:在對話結束後
如果您在對話期間未使用 analyzeContent
方法,可以使用這個選項。您可以改為在 messages
資源上使用 batchCreate
方法,擷取對話的歷來訊息。
取得建議
您隨時可以取得建議,瞭解任何參與者最新的訊息。
選項 1. suggestConversationSummary
對 conversations.suggestions
資源呼叫 suggestConversationSummary
方法。請提供對話 ID 和任一參與者的最新訊息 ID。
選項 2. generateStatelessSummary
呼叫 generateStatelessSummary
方法。請提供對話的 Messages
,以及任一參與者傳送的最新訊息 ID。
以下是 generateStatelessSummary
的 JSON 要求範例:
{ "statelessConversation": { "messages": [{ "content": "Hello, how can I help you today?", "languageCode": "en-US", "participantRole": "HUMAN_AGENT" }, { "content": "I would like to cancel my plan.", "languageCode": "en-US", "participantRole": "END_USER" }, { "content": "Okay, I have canceled your plan. Is there anything else that I can do to help you?", "languageCode": "en-US", "participantRole": "HUMAN_AGENT" }, { "content": "No, thank you.", "languageCode": "en-US", "participantRole": "END_USER" }, { "content": "Okay, have a great day!", "languageCode": "en-US", "participantRole": "HUMAN_AGENT" }], "parent": "projects/PROJECT_ID/locations/global" }, "conversationProfile": { "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "featureConfigs": [{ "suggestionFeature": { "type": "CONVERSATION_SUMMARIZATION" }, "conversationModelConfig": { "model": "projects/PROJECT_ID/locations/global/conversationModels/MODEL_ID" } }] } }, "languageCode": "en-US" } }
回應包含 Summarization
建議。
完成對話
如要完成對話,請在 conversations
資源上呼叫 complete
方法。提供對話 ID。