La fonctionnalité Réponse suggérée suit une conversation entre un agent humain et un utilisateur final, et met en avant des réponses suggérées à l'agent humain. Les réponses suggérées sont calculées par un modèle personnalisé qui a été entraîné à l'aide de vos propres données de transcription de conversation.
Ce document vous explique comment utiliser l'API pour mettre en œuvre la fonctionnalité Réponse suggérée et obtenir des suggestions de cette fonctionnalité pendant l'exécution. Vous devez utiliser la console d'assistance de l'agent pour importer vos données, entraîner un modèle et tester vos résultats de réponse suggérée au moment de la conception. Pour afficher des suggestions de réponses lors de l'exécution, vous devez appeler directement l'API. Consultez le tutoriel Réponse suggérée pour en savoir plus sur l'entraînement d'un modèle et tester ses performances à l'aide de la console Agent Assist.
Avant de commencer
Avant de commencer ce guide, procédez comme suit:
- Créez un ensemble de données de conversation en utilisant vos propres données de transcription.
- Entraînez un modèle de réponse suggérée à l'aide de vos ensembles de données de conversation.
- Créer un profil de conversation
- Testez vos résultats de réponse suggérée à l'aide du simulateur Agent Assist.
Gérer les informations personnelles et les données des enfants
Lorsque vous envoyez des données à cette API, l'API tente de masquer toutes les informations personnelles. Si vous devez garantir que le modèle n'inclut pas d'informations personnelles, vous devez nettoyer les données avant de les envoyer à l'API.
Si vos données contiennent des informations collectées sur des enfants, vous devez les supprimer avant de les envoyer à l'API.
Gérer les conversations lors de l'exécution
Lorsqu'un dialogue commence entre un utilisateur final et un agent humain, vous créez une conversation. Pour afficher les suggestions, vous devez également créer un participant utilisateur final et un participant d'agent humain, puis les ajouter à la conversation. Les sections suivantes vous guident tout au long de ce processus.
Créer une conversation
Pour créer une conversation, appelez la méthode create
sur la ressource Conversation
.
API REST et ligne de commande
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet GCP
- 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/conversations
Corps JSON de la requête :
{ "conversationProfile": "projects/PROJECT_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/conversations/CONVERSATION_ID", "lifecycleState": "IN_PROGRESS", "conversationProfile": "projects/PROJECT_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.
Python
Créer un participant d'utilisateur final
Vous devez ajouter à la conversation des participants à la fois à l'utilisateur final et à l'agent humain pour voir les suggestions. Pour créer un participant d'utilisateur final, appelez la méthode create
sur la ressource Participant
. Indiquez votre ID de conversation et END_USER
pour le champ role
.
API REST et ligne de commande
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 de votre conversation
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_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/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 de l'utilisateur final.
Python
Créer un participant d'agent humain
Pour créer un participant d'agent humain, appelez la méthode create
sur la ressource Participant
. Indiquez votre ID de conversation et HUMAN_AGENT
pour le champ role
.
API REST et ligne de commande
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 de votre conversation
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_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/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID", "role": "HUMAN_AGENT" }
Le segment de chemin d'accès indiqué après participants
contient l'ID du nouveau participant de votre agent humain.
Python
Ajouter et analyser un message de l'agent humain
Chaque fois que l'un des participants saisit un message dans la conversation, vous devez l'envoyer à l'API pour traitement. Les suggestions d'Agent Assist sont basées sur l'analyse des messages des agents humains et des utilisateurs finaux. Pour ajouter et analyser un message d'agent humain pour la conversation, appelez la méthode analyzeContent
sur la ressource Participant
.
Indiquez l'ID de conversation et l'ID de participant de l'agent humain.
API REST et ligne de commande
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 de votre conversation
- PARTICIPANT_ID: ID de votre participant d'agent humain
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent
Corps JSON de la requête :
{ "textInput": { "text": "How may I help you?", "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 :
{ "message": { "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID", "content": "How may I help you?", "languageCode": "en-US", "participant": "PARTICIPANT_ID", "participantRole": "HUMAN_AGENT", "createTime": "2020-02-13T00:01:30.683Z" }, "humanAgentSuggestionResults": [ { "suggestSmartRepliesResponse": { "smartReplyAnswers": [ { "reply": "I am here to help you.", "confidence": 0.5, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID_1" }, { "reply": "Sorry for the wait, we have a high volume of chats right now.", "confidence": 0.3, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID_2" }, { "reply": "Thank you for contacting us!", "confidence": 0.1, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID_3" } ] } } ] }
Python
Ajouter et analyser un message de l'utilisateur final
Pour ajouter et analyser un message d'utilisateur final pour la conversation, appelez la méthode analyzeContent
sur la ressource Participant
. Indiquez l'ID de la conversation et l'ID de participant de l'utilisateur final.
SuggestionFeatureConfig.enable_inline_suggestion
sur "true" dans votre profil de conversation, la réponse contient une liste de suggestions de réponses intelligentes.
API REST et ligne de commande
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 de votre conversation
- PARTICIPANT_ID: ID du participant de l'utilisateur final
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent
Corps JSON de la requête :
{ "textInput": { "text": "I want to reserve a room.", "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 :
{ "message": { "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID", "content": "I want to reserve a room.", "languageCode": "en-US", "participant": "PARTICIPANT_ID", "participantRole": "END_USER", "createTime": "2020-02-13T00:07:35.925Z" }, "humanAgentSuggestionResults": [ { "suggestSmartRepliesResponse": { "smartReplyAnswers": [ { "reply": "Where would you like to reserve a room?", "confidence": 0.5, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID_1" }, { "reply": "What type of rooms would you like to reserve?", "confidence": 0.3, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID_2" }, { "reply": "How long do you want to stay?", "confidence": 0.1, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID_3" } ] } } ] }
Python
Obtenir une suggestion (facultatif)
Vous pouvez obtenir des suggestions à tout moment. Vous pouvez éventuellement spécifier l'ID d'un message pour recevoir les suggestions basées sur ce message. Si ce champ n'est pas défini, les suggestions sont basées par défaut sur le dernier message de l'un des participants.
Pour obtenir des suggestions, appelez la méthode suggestSmartReplies
sur la ressource Suggestion
. Indiquez l'ID de conversation, l'ID de participant à l'agent humain et l'ID de message de l'un des participants (facultatif).
La réponse contient des suggestions de réponses suggérées.
API REST et ligne de commande
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 de votre conversation
- PARTICIPANT_ID: ID du participant de l'utilisateur final
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent
Corps JSON de la requête :
{ "textInput": { "text": "I want to reserve a room.", "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 :
{ "message": { "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID", "content": "I want to reserve a room.", "languageCode": "en-US", "participant": "PARTICIPANT_ID", "participantRole": "END_USER", "createTime": "2020-02-13T00:07:35.925Z" }, "humanAgentSuggestionResults": [ { "suggestSmartRepliesResponse": { "smartReplyAnswers": [ { "reply": "Where would you like to reserve a room?", "confidence": 0.5, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID_1" }, { "reply": "What type of rooms would you like to reserve?", "confidence": 0.3, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID_2" }, { "reply": "How long do you want to stay?", "confidence": 0.1, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID_3" } ] } } ] }
Python
Terminer la conversation
Pour terminer la conversation, appelez la méthode complete
sur la ressource conversations
. Indiquez l'ID de la conversation.
API REST et ligne de commande
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" }
Python