La synthèse avec des sections personnalisées utilise un LLM pour résumer les conversations du service client. Le modèle prend en compte les conversations et les sections personnalisées, qui sont des parties des requêtes textuelles qui définissent la tâche effectuée par le modèle, pour générer ensuite les résumés.
Vous pouvez également écrire vos propres définitions de tâches de résumé dans des sections personnalisées. Les sections prédéfinies et personnalisées sont décrites dans un générateur.
Sections prédéfinies
Cette fonctionnalité propose six sections prédéfinies parmi lesquelles vous pouvez sélectionner:
Situation Il s'agit de ce sur quoi le client a besoin d'aide ou de ce qui lui pose question.
Action. Définit ce que l'agent fait pour aider le client.
Résolution. Quatre options sont proposées.
- Y: Oui. Tous les problèmes et requêtes des clients sont résolus.
- P: Partiel. Seuls certains des nombreux problèmes et requêtes des clients sont résolus.
- N: Non. Aucun des problèmes et des requêtes des clients n'est résolu.
- N/A: Le client n'a soulevé aucun problème ni question spécifique au cours de la conversation.
Satisfaction client Les options sont "Insatisfait" ou "Satisfait".
- D: Le client n'est pas satisfait ou a des sentiments négatifs à la fin de la conversation.
- N: Le client est neutre ou a des sentiments positifs à la fin de la conversation.
Motif de l'annulation Motif de l'annulation si le client demande à annuler la commande. N/A dans le cas contraire.
Entités Paires clé-valeur des entités importantes extraites de la conversation.
Créer un générateur de résumés
Console
Pour créer un générateur de résumés à l'aide de la console Agent Assist, procédez comme suit:
Dans la console, accédez à la page Synthèse, puis sélectionnez Générateur.
Saisissez le nom du générateur.
Sélectionnez la version du générateur.
Sélectionnez la langue de sortie.
Sélectionnez les sections sous Sections prédéfinies.
Ajoutez des sections sous Sections personnalisées: définissez de nouvelles tâches de résumé si nécessaire, et ajoutez éventuellement des exemples à quelques exemples pour améliorer le modèle.
Cliquez sur Enregistrer.
REST
Pour créer un générateur de résumés à l'aide de l'API, procédez comme suit:
Appelez la méthode
CreateGenerator
à partir de la ressource Générateur.Saisissez le nom du générateur dans le champ
description
.Saisissez le code de langue de sortie du générateur dans le champ
output_language_code
.Saisissez l'événement déclencheur
MANUAL_CALL
.Sélectionnez des sections prédéfinies et ajoutez des sections personnalisées avec des exemples à quelques exemples dans SummarizationContext.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Cloud
- LOCATION_ID: votre ID d'emplacement
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/generators
Corps JSON de la requête :
{ "parent": "projects/PROJECT_ID/locations/LOCATION_ID", "description": "test", "triggerEvent": "MANUAL_CALL", "summarizationContext": { "summarizationSections": [{ "type": "SITUATION" }, { "type": "ENTITIES" }, { "key": "custom_section", "definition": "Describe what the customer needs help with or has questions about. If there is an order number mentioned in the conversation, INCLUDE the order number.", "type": "CUSTOMER_DEFINED" }], "version": "2.1", "outputLanguageCode": "en-US" } }
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/generators/GENERATOR_ID", "description": "test", "inferenceParameter": { "maxOutputTokens": 1024, "temperature": 0.0, "topK": 40, "topP": 0.8 }, "triggerEvent": "MANUAL_CALL", "createTime": "2024-05-11T00:28:14.790937126Z", "updateTime": "2024-05-11T01:59:15.751724150Z", "summarizationContext": { "summarizationSections": [{ "type": "SITUATION" }, { "type": "ENTITIES" }, { "key": "custom_section", "definition": "Describe what the customer needs help with or has questions about. If there is an order number mentioned in the conversation, INCLUDE the order number.", "type": "CUSTOMER_DEFINED" }], "version": "2.1", "outputLanguageCode": "en-US" } }
Tester un générateur de résumés
Dans la console, vous pouvez tester le générateur dans la section Tester le générateur, comme illustré dans l'image suivante.
Pour tester un générateur dans la console, procédez comme suit:
Console
Une transcription de la conversation. Vous pouvez saisir manuellement des énoncés ou importer une transcription au format JSON, comme illustré dans l'image suivante.
Cliquez sur Générer pour afficher le résumé.
Configurer un profil de conversation
Un profil de conversation configure un ensemble de paramètres qui contrôlent les suggestions adressées à un agent au cours d'une conversation. Les étapes suivantes permettent de créer un ConversationProfile
avec un objet HumanAgentAssistantConfig
.
Les exemples suivants montrent comment créer un profil de conversation.
Console
Dans la console Agent Assist, accédez à la page Profils de conversation.
Saisissez le nom à afficher.
Sélectionnez Récapitulatif de la conversation (générateur) comme type de suggestion.
Sélectionnez le nom du générateur dans la liste.
REST
Appelez la méthode
create
à partir de la ressource de profil de conversation.Attribuez un nom au nouveau profil de conversation.
Saisissez le code de langue.
Saisissez le nom du générateur dans human_agent_suggestion_config.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Cloud
- LOCATION_ID: votre ID d'emplacement
- CONVERSATION_PROFILE_ID: ID de votre profil de conversation
- GENERATOR_ID: ID de votre générateur
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles
Corps JSON de la requête :
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID", "displayName": "conversation-profile-with-generator", "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "generators": "projects/PROJECT_ID/locations/LOCATION_ID/generators/GENERATOR_ID" } }, "languageCode": "en-US" }
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID", "displayName": "conversation-profile-with-generator", "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "generators": "projects/PROJECT_ID/locations/LOCATION_ID/generators/GENERATOR_ID" } }, "languageCode": "en-US" }
Valider avec le simulateur
Vous pouvez vérifier le profil de conversation dans le simulateur Agent Assist.
Conversations au moment de l'exécution
Au moment de l'exécution, lorsqu'un dialogue commence entre un utilisateur et un agent, vous créez une conversation, qui est une interaction entre un agent (humain ou virtuel) et un client ou un utilisateur de l'assistance. Pour voir les suggestions, créez un participant utilisateur et un participant agent, puis ajoutez-les à la conversation.
Créer une conversation
Pour créer une conversation, appelez la méthode create
sur la ressource Conversation
.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Cloud
- LOCATION_ID: votre ID d'emplacement
- CONVERSATION_PROFILE_ID: ID obtenu lors de la création du profil de conversation
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations
Corps JSON de la requête :
{ "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID", }
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID", "lifecycleState": "IN_PROGRESS", "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID", "startTime": "2018-11-05T21:05:45.622Z" }
Le segment de chemin d'accès après conversations
contient le nouvel ID de la conversation.
Créer un participant utilisateur
Pour créer un participant utilisateur, appelez la méthode create
sur la ressource Participant
. Indiquez votre ID de conversation et END_USER
pour le champ role
.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Cloud
- LOCATION_ID: votre ID d'emplacement
- CONVERSATION_ID: ID de votre conversation
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants
Corps JSON de la requête :
{ "role": "END_USER", }
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID", "role": "END_USER" }
Le segment de chemin d'accès indiqué après participants
contient le nouvel ID de participant utilisateur.
Créer un participant d'agent
Appelez la méthode create
sur la ressource Participant
. Indiquez votre ID de conversation et HUMAN_AGENT
ou AUTOMATED_AGENT
pour le champ role
.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Cloud
- LOCATION_ID: votre ID d'emplacement
- CONVERSATION_ID: ID de votre conversation
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants
Corps JSON de la requête :
{ "role": "HUMAN_AGENT", }
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID", "role": "HUMAN_AGENT" }
Le segment de chemin d'accès indiqué après participants
contient le nouvel ID de participant de l'agent.
Analyser le message
Il existe deux façons d'analyser les messages:
Pendant une conversation Pour ajouter et analyser un message d'agent pour la conversation, appelez la méthode
analyzeContent
sur la ressourceParticipant
. Indiquez l'ID de la conversation et l'ID de participant de l'agent. Pour ajouter et analyser un message utilisateur pour la conversation, appelez la méthodeanalyzeContent
sur la ressourceParticipant
. Indiquez l'ID de la conversation et l'ID de participant de l'utilisateur. N'effectuez pas d'appels en double à la méthodeanalyzeContent
si elle a été appelée pour d'autres fonctionnalités Dialogflow.Après une conversation Vous pouvez utiliser cette option si vous n'utilisez pas la méthode
analyzeContent
pendant la conversation. À la place, vous pouvez utiliser la méthodebatchCreate
sur la ressourcemessages
pour ingérer l'historique des messages de la conversation.
Générer un résumé
Vous pouvez obtenir une suggestion à tout moment du dernier message de l'un des participants.
Appelez la méthode
suggestConversationSummary
sur la ressourceconversations.suggestions
. Indiquez l'ID de la conversation et le dernier ID de message de l'un des participants.Appelez la méthode
generateStatelessSuggestion
. IndiquezConversationContext
, le nom du générateur et l'événement de déclenchement, qui doit êtreMANUAL_CALL
.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Cloud
- LOCATION_ID: votre ID d'emplacement
- GENERATOR_ID: ID de votre générateur
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/statelessSuggestion:generate
Corps JSON de la requête :
{ "parent": "projects/PROJECT_ID/locations/LOCATION_ID", "generatorName": "projects/PROJECT_ID/locations/LOCATION_ID/generators/GENERATOR_ID", "conversationContext" { "messageEntries": [{ "role": "HUMAN_AGENT", "text": "Hi, this is ABC messaging, how can I help you today?", "languageCode": "en-US" }, { "role": "END_USER", "text": "I want to return my order, it is broken", "languageCode": "en-US" }] }, "triggerEvents": [ "MANUAL_CALL" ] }
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "generatorSuggestion": { "summarySuggestion": { "summarySections": [ { "section": "situation", "summary": "customer wants to return an order." }, { "section": "resolution", "summary": "N" } ] } } }
La réponse contient le résumé.
Terminer la conversation
Pour terminer la conversation, appelez la méthode complete
sur la ressource conversations
. Indiquez l'ID de la conversation.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet GCP
- CONVERSATION_ID: ID obtenu lors de la création de la conversation
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID:complete
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID", "lifecycleState": "COMPLETED", "conversationProfile": "projects/PROJECT_ID/conversationProfiles/CONVERSATION_PROFILE_ID", "startTime": "2018-11-05T21:05:45.622Z", "endTime": "2018-11-06T03:50:26.930Z" }
Versions précédentes
- Modèle de référence de la version 2 de la synthèse pour les données de chat et vocales
- Modèle de référence de la version 1 de la synthèse pour le chat et la voix
- Modèle personnalisé de résumé V1 pour Chat