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 conversation.
Ce document vous explique comment utiliser l'API pour implémenter la fonctionnalité Réponse suggérée et obtenir des suggestions de cette fonctionnalité. Si vous le préférez, vous pouvez utiliser la console Agent Assist 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 le test de ses performances à l'aide de la console Agent Assist.
Agent Assist fournit également des données de conversation accessibles au public, ainsi qu'un modèle pré-entraîné et une liste d'autorisation. Vous pouvez utiliser ces ressources pour découvrir le fonctionnement des réponses suggérées ou tester votre intégration avant d'importer vos propres données. Pour en savoir plus, consultez la documentation sur le format des données de conversation.
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.
Informations permettant d'identifier personnellement l'utilisateur et données des enfants
Lorsque vous envoyez des données à cette API, l'API tente de masquer toutes les informations permettant d'identifier personnellement l'utilisateur. Si vous devez vous assurer que le modèle n'inclut pas d'informations permettant d'identifier personnellement l'utilisateur, vous devez nettoyer vos données avant de les envoyer à l'API. Remplacez les mots masqués par des espaces réservés tels que `REDACTED_NUMBER` ou `REDACTED_NAME` au lieu de simplement les supprimer.
De plus, si vos données contiennent des informations collectées sur des enfants, vous devez les supprimer avant de les envoyer à l'API.
Entraîner et déployer un modèle
Les modèles de réponse suggérée Agent Assist sont entraînés à l'aide d'ensembles de données de conversation. Un ensemble de données de conversation contient les données de transcription que vous avez importées. Cette section vous explique comment créer un ensemble de données de conversation, y importer vos données de conversation, puis entraîner et déployer un modèle. Vous pouvez également effectuer ces actions à l'aide de la console Agent Assist si vous préférez ne pas appeler directement l'API.
Créer un ensemble de données de conversation
Avant de pouvoir importer des transcriptions de conversations, vous devez d'abord créer un ensemble de données de conversation pour les y placer. Appelez la méthode create
sur la ressource ConversationDataset
pour créer un ensemble de données de conversation.
La réponse contient un ID d'ensemble de données de conversation.
Importer des transcriptions de conversations dans votre ensemble de données de conversation
Importez les données de vos conversations par chat dans votre ensemble de données de conversation afin qu'elles puissent être traitées par Agent Assist.
Assurez-vous que la transcription de chaque conversation est au format JSON
et stockée dans un bucket Cloud Storage.
Un ensemble de données de conversation doit contenir au moins 30 000 conversations, sinon l'entraînement du modèle échouera. En règle générale, plus il y a de conversations, plus la qualité de votre modèle est élevée. Nous vous recommandons d'importer au moins trois mois de conversations pour couvrir un maximum de cas d'utilisation. Le nombre maximal de messages dans un ensemble de données de conversation est de 1 000 000.
Appelez la méthode importConversationData
sur la ressource ConversationDataset
pour importer vos conversations.
Champs obligatoires :
- ID de l'ensemble de données de conversation que vous avez créé précédemment.
- Le chemin d'accès
inputConfig
mène aux données de transcription de vos conversations dans un bucket Cloud Storage.
La réponse est une opération de longue durée que vous pouvez interroger pour vérifier l'avancement.
Créer un modèle de conversation
Appelez la méthode create
sur la ressource ConversationModel
pour créer un modèle de conversation. Cette action crée également la liste d'autorisation du modèle.
Champs obligatoires :
- Dans
datasets
, fournissez un seul ensemble de données à l'aide de l'ID d'ensemble de données de conversation que vous avez créé précédemment. - Définissez
smartReplyModelMetadata
sur un objet vide ou renseignez le champ pour remplacer la valeur par défaut.
La réponse est une opération de longue durée que vous pouvez interroger pour vérifier l'avancement. Une fois l'opération terminée, l'ID du modèle et l'ID de la liste d'autorisation seront inclus dans les métadonnées de l'opération.
- ID du modèle :
name
- ID de la liste d'autorisations :
smart_reply_model_metadata.associated_allowlist_info.document
Déployer le modèle de conversation
Appelez la méthode deploy
sur la ressource ConversationModel
pour déployer le modèle de conversation.
Champ obligatoire :
- Utiliser
conversationModels
: saisissez l'ID du modèle de conversation que vous avez créé précédemment.
Gérer une liste d'autorisation
Chaque modèle est associé à une liste d'autorisation, qui est créée automatiquement lorsque vous créez un modèle de conversation. La liste d'autorisation contient toutes les réponses générées à partir de vos ensembles de données de conversation qui peuvent être présentées à un agent humain au moment de l'exécution. Cette section décrit la création et la gestion des listes d'autorisation. Vous pouvez également effectuer ces actions à l'aide de la console Agent Assist si vous préférez ne pas appeler directement l'API.
Exporter le contenu de la liste d'autorisation dans un fichier CSV
Lors de la création d'un modèle, une liste d'autorisation associée au nouveau modèle est automatiquement créée. La liste d'autorisation est une ressource Document dotée d'un ID unique. L'ID est renvoyé dans smart_reply_model_metadata.associated_allowlist_info.document
lorsqu'un modèle est créé. Pour examiner et modifier les messages de la liste d'autorisation, vous devez l'exporter vers un bucket Cloud Storage.
Appelez la méthode export
sur la ressource Document
pour exporter le document vers un fichier CSV
dans un bucket Cloud Storage.
Le champ smart_messaging_partial_update
est facultatif, mais il affecte la façon dont vous pourrez mettre à jour cette liste d'autorisation à l'avenir. Si la valeur est définie sur true
, le fichier CSV
exporté inclut une colonne contenant un ID unique pour chaque message. Vous pouvez utiliser l'ID de message pour ne mettre à jour que les messages spécifiés au lieu du document entier. Si smart_messaging_partial_update
est défini sur false
ou n'est pas défini, la colonne supplémentaire n'apparaît pas dans le fichier et toute modification de la liste d'autorisation nécessitera une mise à jour de l'ensemble du document.
Champ obligatoire :
- Le chemin d'accès
gcsDestination
mène à votre bucket Cloud Storage.
La réponse est une opération de longue durée que vous pouvez interroger pour vérifier l'avancement. Ensuite, le fichier CSV
que vous avez fourni dans la requête est rempli avec des candidats de réponse.
Examiner la liste d'autorisation
La liste d'autorisation générée contient des réponses qui ont été générées automatiquement par la fonctionnalité Réponses suggérées en fonction de vos données de conversation. Vous pouvez désormais examiner et modifier ces réponses si nécessaire. Téléchargez le fichier CSV
depuis votre bucket Cloud Storage, modifiez-le pour l'adapter à vos besoins, puis réimportez-le dans le bucket Cloud Storage. Seules les réponses figurant sur la liste d'autorisation peuvent être transmises aux agents humains.
Si vous modifiez des réponses, nous vous recommandons de ne corriger que l'orthographe et la grammaire, et de ne pas changer le sens du message. Plus le texte modifié s'éloigne du sens du modèle, moins il est probable que le message soit mis en avant.
Vous pouvez également créer des messages si nécessaire. Comme les messages modifiés, les messages créés sont moins susceptibles d'être affichés lors de l'exécution.
Mettre à jour la liste d'autorisation
Une fois que vous avez terminé de mettre à jour le fichier CSV
, vous pouvez l'utiliser pour mettre à jour la ressource Document
. Vous pouvez choisir de mettre à jour l'intégralité de la liste d'autorisation ou uniquement les messages spécifiés. Pour ne mettre à jour que certains messages, vous devez avoir défini smart_messaging_partial_update
sur true
lorsque vous avez exporté la liste d'autorisation.
Si vous l'avez déjà fait, utilisez la colonne générée automatiquement dans le fichier CSV
exporté pour indiquer les messages à modifier.
Appelez la méthode reload
sur la ressource Document
pour mettre à jour la liste d'autorisation. Pour ne mettre à jour que certains messages, définissez smart_messaging_partial_update
sur true
dans ReloadDocumentRequest
. Pour mettre à jour l'intégralité de la liste d'autorisation, laissez smart_messaging_partial_update
non défini ou définissez-le sur false
.
Champs obligatoires :
gcsSource
correspond au chemin d'accès Cloud Storage au fichierCSV
.- Pour
name
, utilisez le nom de ressource de la liste d'autorisation généré lorsque vous avez créé un modèle de conversation.
Exemple de requête :
{ "name":"projects/project-id/knowledgeBases/knowledge-base-id/documents/allowlist-id", "gcsSource" { "uri": "gs://revised_smart_reply_allowlist_path" } }
Évaluer les performances d'un modèle entraîné
Vous pouvez tester les performances d'un modèle après l'avoir déployé et créé une liste d'autorisation pour celui-ci. Vous devez également fournir un ensemble de données de test. Les réponses générées par le modèle de réponse suggérée entraîné et sa liste d'autorisation associée seront comparées aux messages réels des agents dans l'ensemble de données de test. L'ensemble de données de test doit être constitué de données de conversation réelles, mais ne doit contenir aucune des données de l'ensemble de données de conversation que vous avez utilisé pour entraîner le modèle. Par exemple, si vous disposez d'un mois de trafic de conversation, vous pouvez utiliser trois semaines de données de conversation pour créer un ensemble de données de conversation et la semaine restante pour créer l'ensemble de données de test. Un ensemble de données de test doit contenir au moins 1 000 conversations, mais en règle générale, les métriques d'évaluation seront plus fiables si l'ensemble de données de test contient plus de conversations. Le format de l'ensemble de données de test est identique à celui de l'ensemble de données de conversation.
Pour créer une évaluation de modèle, appelez la méthode CreateConversationModelEvaluation
sur une ressource ConversationModel
. Cette méthode renvoie une opération de longue durée. Vous pouvez interroger l'opération pour vérifier son état, qui renverra l'une des valeurs suivantes : INITIALIZING
, RUNNING
, SUCCEEDED
, CANCELLED
ou FAILED
.
Champs obligatoires :
InputDataset
: ensemble de données de test qui sera utilisé pour tester les performances du modèle.allowlist_document
: liste d'autorisation associée au modèle de réponses suggérées à tester.
Une ressource ConversationModelEvaluation
est renvoyée lorsque l'opération de longue durée est terminée. Deux métriques sont incluses :
allowlist_coverage
: pourcentage des messages de l'agent dans l'ensemble de données de test qui sont couverts par la liste d'autorisation.recall
: pourcentage de messages d'agent dans l'ensemble de données de test qui figurent dans la liste d'autorisation et apparaissent dans les trois premières suggestions proposées par le modèle de réponses intelligentes.
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 ConversationProfile
avec un objet HumanAgentAssistantConfig
. Vous pouvez également effectuer ces actions à l'aide de la console Agent Assist si vous préférez ne pas appeler directement l'API.
Créer un profil de conversation
Pour créer un profil de conversation, appelez la méthode create
sur la ressource ConversationProfile
.
Fournissez l'ID de votre base de connaissances, de votre document, de votre projet et de votre modèle.
{ "displayName":"smart_reply_assist", "humanAgentAssistantConfig":{ "humanAgentSuggestionConfig":{ "featureConfigs":[ { "suggestionFeature": { "type":"SMART_REPLY" }, "queryConfig": { "documentQuerySource":{ "documents": ["projects/PROJECT_ID/knowledgeBases/KNOWLEDGE_BASE_ID/documents/DOCUMENT_ID"] }, "maxResults": 3 }, } }, "conversationModelConfig":{ "model": "projects/PROJECT_ID/conversationModels/MODEL_ID" } } ] } } }
Nous vous recommandons de définir la valeur SuggestionFeatureConfig.enable_inline_suggestion
.
Si cette valeur est "true", les appels ultérieurs à AnalyzeContent
généreront des réponses avec une liste de suggestions.
La réponse contient le nouvel ID de votre profil de conversation.
Consultez Réponse suggérée générative pour savoir comment configurer un profil de conversation, gérer les conversations au moment de l'exécution, tester vos résultats et envoyer des commentaires à Agent Assist.