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 mettre en œuvre la fonctionnalité Réponse suggérée et obtenir des suggestions de cette fonctionnalité. Si vous le préférez, vous avez la possibilité d'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 tester 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 voir comment fonctionne la fonctionnalité Réponse suggérée 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 personnelles et données des enfants
Lorsque vous envoyez des données à cette API, l'API tente de masquer toutes les informations personnelles . Si vous devez vous assurer que le modèle n'inclut pas d'informations personnelles, vous devez nettoyer les 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 d'Agent Assist sont entraînés à l'aide d'ensembles de données de conversation. Un ensemble de données de conversation contient vos propres données de transcription 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 conversation, vous devez d'abord créer un ensemble de données de conversation pour les y placer. Appelez la méthode create sur la
ConversationDataset
ressource 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 conversation dans votre ensemble de données de conversation
Importez vos données de conversation 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 vous avez de conversations, meilleure est la qualité de votre modèle. 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
inputConfigmène à vos données de transcription de conversation 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
ConversationModel
ressource 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
smartReplyModelMetadatasur 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 sont inclus dans les métadonnées de l'opération.
- ID du modèle :
name - ID de la liste d'autorisation :
smart_reply_model_metadata.associated_allowlist_info.document
Déployer le modèle de conversation
Appelez la méthode deploy sur la
ConversationModel
ressource pour déployer le modèle de conversation.
Champ obligatoire :
- Utilisez
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 lors 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
La création d'un modèle crée automatiquement une liste d'autorisation associée au nouveau modèle. La liste d'autorisation est une ressource Document avec 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
Document
ressource pour exporter le document dans 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 du 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 mise à jour de la liste d'autorisation nécessite une mise à jour de l'ensemble du document.
Champ obligatoire :
- Le chemin d'accès
gcsDestinationmè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 de 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éponse suggérée en fonction de vos données de conversation. Vous pouvez maintenant examiner et mettre à jour ces réponses si nécessaire. Téléchargez le fichier CSV depuis votre bucket Cloud Storage, modifiez-le en fonction de vos besoins, puis importez-le à nouveau dans le bucket Cloud Storage. Seules les réponses figurant sur la liste d'autorisation peuvent être présentées aux agents humains.
Si vous modifiez des réponses, nous vous recommandons de ne modifier 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 le message est susceptible d'être présenté.
Vous pouvez également créer des messages si nécessaire. Comme pour les messages modifiés, les messages créés sont moins susceptibles d'être présenté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'ensemble de la liste d'autorisation ou uniquement les messages spécifiés. Pour ne mettre à jour que les messages spécifiés, 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 à mettre à jour.
Appelez la méthode reload sur la
Document
ressource pour mettre à jour la liste d'autorisation. Pour ne mettre à jour que les messages spécifiés, définissez smart_messaging_partial_update sur true dans ReloadDocumentRequest. Pour mettre à jour l'ensemble de la liste d'autorisation, laissez smart_messaging_partial_update non défini ou définissez-le sur false.
Champs obligatoires :
gcsSourceest le 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 avoir 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 de l'agent 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 les données de 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 CreateConversationModelEvaluation
méthode sur une ConversationModel ressource. 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, 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éponse suggérée à tester.
Une ressource ConversationModelEvaluation est renvoyée une fois l'opération de longue durée terminée. Deux métriques sont incluses :
allowlist_coverage: pourcentage de messages d'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 sont contenus dans la liste d'autorisation et qui apparaissent dans les trois premières suggestions présentées par le modèle de réponse suggérée.
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
HumanAgentAssistantConfig
objet. 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.
Indiquez l'ID de votre base de connaissances, l'ID du document, l'ID du projet et l'ID du 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
SuggestionFeatureConfig.enable_inline_suggestion valeur.
Si cette valeur est "true", les appels ultérieurs à AnalyzeContent
génèrent des réponses contenant une liste de suggestions.
La réponse contient le nouvel ID de votre profil de conversation.
Pour savoir comment configurer un profil de conversation, gérer les conversations lors de l'exécution, tester vos résultats et envoyer des commentaires à Agent Assist, consultez la section Réponse suggérée générative.