Agent Assist now supports a new V2 Summarization baseline model for voice and chat data. This model enables users to customize the content of the summary by selecting from the following predefined sections:
- Situation: What the customer needs help with or has question about.
- Action: What the agent does to help the customer.
- Resolution: Result of the customer service.
- Customer satisfaction: "Unsatisfied" if the customer is unsatisfied at the end of the conversation and "Satisfied" otherwise.
- Reason for cancellation: If the customer requests to cancel service. N/A otherwise.
- Entities: The key-value pairs of important entities extracted from the conversation.
Configure a conversation profile
A conversation profile configures a set of parameters that control the
suggestions made to an agent during a conversation. The following steps create a
ConversationProfile
with a
HumanAgentAssistantConfig
object.
Create from console
We recommend creating a conversation profile using the Agent Assist console:
- Input
Display name
for conversation profile. - Select
Language
from the list. - Select suggestion type
Conversation summarization
orConversation summarization (voice)
. - Set
Suggestion model type
toBaseline model
. - Set
Baseline model version
to2.0
. If the selected language is English, select
Output sections
to be included in the summary.
Create from API
To create a conversation profile, do the following:
- Call the
create
method on theConversationProfile
resource. - Provide a name for the new conversation profile.
- Enter your Google Cloud project ID.
- Enter the language code.
- Enter your model ID. To use the V2 baseline model, don't
specify the model ID. Instead, set
baseline_model_version
to2.0
. - If entered language is English, in the
CreateConversationProfileRequest
for the query configuration, specify sections to be included in the summary. The default sections areSITUATION
,ACTION
, andRESOLUTION
if no section is specified. - In the
CreateConversationProfileRequest
for the suggestion feature, specifyCONVERSATION_SUMMARIZATION
for chat orCONVERSATION_SUMMARIZATION_VOICE
for voice.
Baseline model example for voice
The following is a JSON example that uses a baseline summarization model for voice:
{ "displayName": "CONVERSATION_PROFILE_NAME", "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "featureConfigs": [{ "suggestionFeature": { "type": "CONVERSATION_SUMMARIZATION_VOICE" }, "queryConfig": { "sections": { "sectionTypes": "SITUATION", "sectionTypes": "ACTION", "sectionTypes": "RESOLUTION", "sectionTypes": "REASON_FOR_CANCELLATION", "sectionTypes": "CUSTOMER_SATISFACTION", "sectionTypes": "ENTITIES" } }, "conversationModelConfig": { "baselineModelVersion": "2.0", } }] } }, "languageCode": "en-US" }
The response is a ConversationProfile
object containing the conversation
profile name
:
{ "name": "projects/PROJECT_ID/locations/global/conversationProfiles/CONVERSATION_PROFILE_ID", "displayName": "CONVERSATION_PROFILE_NAME", "automatedAgentConfig": { }, "humanAgentAssistantConfig": { "notificationConfig": { }, "humanAgentSuggestionConfig": { "featureConfigs": [{ "suggestionFeature": { "type": "CONVERSATION_SUMMARIZATION_VOICE" }, "queryConfig": { "sections": { "sectionTypes": [ "SITUATION", "ACTION", "RESOLUTION", "REASON_FOR_CANCELLATION", "CUSTOMER_SATISFACTION", "ENTITIES" ] } }, "conversationModelConfig": { "baselineModelVersion": "2.0", } }] }, "messageAnalysisConfig": { } }, "languageCode": "en-US", "createTime": "2023-07-06T21:06:46.841816Z", "updateTime": "2023-07-06T21:06:46.841816Z", "projectNumber": "344549229138" }
Baseline model example for chat
The following is a JSON example that uses a baseline summarization model for chat:
{ "displayName": "CONVERSATION_PROFILE_NAME", "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "featureConfigs": [{ "suggestionFeature": { "type": "CONVERSATION_SUMMARIZATION" }, "queryConfig": { "sections": { "sectionTypes": "SITUATION", "sectionTypes": "ACTION", "sectionTypes": "RESOLUTION", "sectionTypes": "REASON_FOR_CANCELLATION", "sectionTypes": "CUSTOMER_SATISFACTION", "sectionTypes": "ENTITIES" } }, "conversationModelConfig": { "baselineModelVersion": "2.0", } }] } }, "languageCode": "en-US" }
The response is a ConversationProfile
object containing the conversation
profile name
:
{ "name": "projects/PROJECT_ID/locations/global/conversationProfiles/CONVERSATION_PROFILE_ID", "displayName": "CONVERSATION_PROFILE_NAME", "automatedAgentConfig": { }, "humanAgentAssistantConfig": { "notificationConfig": { }, "humanAgentSuggestionConfig": { "featureConfigs": [{ "suggestionFeature": { "type": "CONVERSATION_SUMMARIZATION" }, "queryConfig": { "sections": { "sectionTypes": [ "SITUATION", "ACTION", "RESOLUTION", "REASON_FOR_CANCELLATION", "CUSTOMER_SATISFACTION", "ENTITIES" ] } }, "conversationModelConfig": { "baselineModelVersion": "2.0", } }] }, "messageAnalysisConfig": { } }, "languageCode": "en-US", "createTime": "2023-07-06T21:06:46.841816Z", "updateTime": "2023-07-06T21:06:46.841816Z", "projectNumber": "344549229138" }
Handle conversations at runtime
Conversations are handled the same at runtime whether you're using the baseline model or a custom model. See the Summarization custom model documentation for details.