Il modello personalizzato Riepilogo di Agent Assist per la funzionalità ti consente di fornire riepiloghi delle conversazioni agli agenti al termine di ogni conversazione, sfruttando un modello addestrato esclusivamente su dati specifici dei clienti. Ciò è diverso dalla personalizzazione tramite un modello linguistico di grandi dimensioni, come descritto in Riepilogo con sezioni personalizzate. I riepiloghi aiutano gli agenti a creare le note della conversazione e a comprendere la cronologia delle comunicazioni dell'utente finale. Ad esempio, un output di riepilogo di una conversazione potrebbe essere simile al seguente:
Puoi anche importare un modello di riepilogo personalizzato di Agent Assist da utilizzare con le conversazioni di CCAI Insights.
Prima di iniziare
- Assicurati che i dati siano nel formato richiesto. Hai anche la possibilità di utilizzare un set di dati di esempio o di testare la funzionalità utilizzando il modello di riepilogo demo, senza che sia necessario un set di dati.
Addestra ed esegui il deployment di un modello di riepilogo utilizzando l'API
Creare un set di dati conversazione e importare le trascrizioni
Chiama il metodo create
sulla risorsa
ConversationDataset
per creare un set di dati di conversazione. Includi il percorso del bucket Cloud Storage contenente i dati della trascrizione per importarli nel nuovo set di dati della conversazione.
Esempio di richiesta:
{ "displayName": "CONVERSATION_DATASET_NAME", "inputConfig": { "gcsSource": { "uris": ["gs://PATH_NAME/*"] } } }
La risposta contiene un ID set di dati di conversazione. Esempio di risposta:
{ "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" } }
Creare un modello di conversazione
Chiama il metodo create
sulla risorsa
ConversationModel
per creare un modello di conversazione di riepilogo. Ogni progetto avrà a disposizione fino a 120 ore nodo per l'addestramento ogni mese e potrà eseguire un job di addestramento contemporaneamente.
Campi obbligatori:
datasets
: fornisci un singolo set di dati contenente i dati della trascrizione che hai utilizzato per addestrare il modello.summarizationModelMetadata
: impostalo su un oggetto vuoto o compila il campo per eseguire l'override del valore predefinito.
Esempio di richiesta:
{ "displayName": "CONVERSATION_DATASET_NAME", "datasets": [{ "dataset": "projects/PROJECT_ID/locations/global/conversationDatasets/CONVERSATION_DATASET_ID" }], "summarizationModelMetadata": { "trainingModelType": "SUMMARIZATION_MODEL" }, "languageCode": "en-US" }
La risposta è un'operazione di lunga durata, che puoi eseguire il polling utilizzando GetOperation API
per verificare il completamento. L'addestramento può richiedere diverse ore. La risposta restituisce
lo stato e l'ID modello.
Esempio di risposta:
{ "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" } }
Valutare un modello conversazionale
Al termine dell'addestramento del modello, chiama l'API
ListConversationModelEvaluations
per verificare la qualità del modello.
In ListConversationModelEvaluationsRequest
, specifica il nome del modello
da controllare.
{ "parent": "projects/cloud-contact-center-quality/locations/global/conversationModels/d3f2ca9f3e2c571a" }
ListConversationModelEvaluationsResponse
include un punteggio Rouge-L per
valutare il riepilogo automatico.
{ "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 } }] }
Eseguire il deployment di un modello di conversazione
Una volta completato l'addestramento del modello, puoi eseguirne il deployment utilizzando l'API
DeployConversationModel
.
In DeployConversationModelRequest
, specifica name
del modello da
eseguire il deployment. La risposta è un'operazione di lunga durata, che puoi eseguire il polling utilizzando GetOperation API
per verificare il completamento.
Configurare un profilo di conversazione
Un profilo di conversazione configura un insieme di parametri che controllano i
suggerimenti forniti a un agente durante una conversazione. I passaggi seguenti creano un
ConversationProfile
con un oggetto
HumanAgentAssistantConfig
.
Creare un profilo di conversazione
Per creare un profilo di conversazione,
chiama il metodo create
sulla
risorsa ConversationProfile
.
Fornisci un nome per il nuovo profilo conversazione, il tuo Google Cloud
ID progetto e l'ID modello. In CreateConversationProfileRequest
, specifica il
modello di conversazione da utilizzare e la funzionalità di suggerimento da
CONVERSATION_SUMMARIZATION
.
Di seguito è riportato un esempio di 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" }
La risposta è un oggetto ConversationProfile
contenente il profilo
della conversazione name
:
{ "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" }
Gestire le conversazioni in fase di runtime
Quando inizia un dialogo tra un utente finale e un agente umano, crei una conversazione. Le sezioni seguenti illustrano questa procedura.
Creare una conversazione
Per creare una conversazione,
chiama il metodo create
sulla risorsa
Conversation
.
La risposta contiene il nuovo ID conversazione.
Crea un partecipante utente finale
Per creare un partecipante utente finale, chiama il metodo create
sulla risorsa Participant
. Fornisci l'ID conversazione e END_USER
per il campo role
.
Il segmento di percorso dopo participants
contiene il nuovo ID partecipante utente finale.
Crea un partecipante agente umano
Per creare un partecipante agente umano, chiama il metodo create
sulla risorsa
Participant
. Fornisci l'ID conversazione e HUMAN_AGENT
per il campo role
.
Il segmento di percorso dopo participants
contiene il nuovo ID partecipante dell'agente umano.
Analizza messaggio
Opzione 1: durante una conversazione
Per aggiungere e analizzare un messaggio dell'agente umano per la conversazione, chiama il metodo
analyzeContent
nella risorsa
Participant
. Fornisci l'ID conversazione e l'ID partecipante dell'agente umano.
Per aggiungere e analizzare un messaggio dell'utente finale per la conversazione, chiama il metodo analyzeContent
sulla risorsa Participant
. Fornisci l'ID conversazione e l'ID partecipante utente finale.
Non effettuare chiamate duplicate al metodo analyzeContent
se è stato chiamato
per altre funzionalità di Dialogflow.
Opzione 2: dopo una conversazione
Puoi utilizzare questa opzione se non utilizzi il metodo
analyzeContent
durante la conversazione. In alternativa, puoi utilizzare il metodo
batchCreate
nella risorsa messages
per importare i messaggi storici della conversazione.
Ricevere un suggerimento
Puoi ricevere un suggerimento in qualsiasi momento per l'ultimo messaggio di uno dei partecipanti.
Opzione 1. suggestConversationSummary
Chiama il metodo
suggestConversationSummary
sulla risorsa
conversations.suggestions
. Fornisci l'ID conversazione e l'ID messaggio più recente di uno dei partecipanti.
Opzione 2. generateStatelessSummary
Chiama il metodo generateStatelessSummary
. Fornisci l'Messages
della conversazione e l'ID messaggio più recente di uno dei partecipanti.
Ecco una richiesta JSON di esempio per generateStatelessSummary
:
{ "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" } }
La risposta contiene Summarization
suggerimenti.
Completare la conversazione
Per completare la conversazione, chiama il metodo complete
sulla risorsa
conversations
. Fornisci l'ID conversazione.