Recommandations de bonnes pratiques pour la création de bots dans Architect
Présentation de la technologie des bots
Genesys Dialog Engine Bot Flows, comme tout outil d'apprentissage automatique avancé, fonctionne en apprenant à partir de plusieurs exemples, puis en définissant plus en détail pour catégoriser des cas similaires, jamais vus auparavant. Le bot apprend à partir d'exemples, pas à partir de règles.
Les points forts de cette approche incluent :
- Flexibilité de la langue d'entrée et calcul de données invisible. Le bot fait des suppositions basées sur les conversations précédentes.
- Score de confiance statistique afin que vous sachiez à quel point la réponse du bot est sûre avec les réponses.
- Dégradation gracieuse, qui n'est pas une approche de réussite ou d'échec, mais plutôt une perte progressive de certitude pour les données bruyantes.
L'approche de l'apprentissage automatique a un coût : vous n'aurez peut-être pas de résultats prédéterminés pour toutes les entrées. La prise de décision de l'intelligence artificielle (IA) est basée sur ses propres calculs et conclusions, et non sur des commandes directes. Les exemples d'apprentissage biaisent le moteur vers la bonne réponse, mais ne le garantissent pas toujours.
Cet article fournit des indications sur les types de modifications de modèle à faible risque et à haut risque dans les changements de biais de modèle. Pour plus d'informations, voir À propos des flux de robots Genesys Dialog Engine et Tarification des flux de robots Genesys Dialog Engine.
Tenez compte des fonctionnalités système suivantes lors de la conception de votre modèle :
- Fonctionnalité de transfert : Configurez la disponibilité de l'agent pour recevoir une interaction vocale, un message ou un chat, si nécessaire.
- Caractéristiques intégrées :
- Confirmez les déclarations peu claires en faisant une hypothèse et en demandant à confirmer ou à refuser l’intention proposée.
- Remplissez les emplacements et, éventuellement, les confirmations d’emplacement pour une intention et les détails requis avant d’agir. Les emplacements intégrés incluent la date, l'heure, la devise et le nombre.
- Les types d'emplacement personnalisés vous permettent de définir des types d'emplacement et de les utiliser pour mapper des emplacements. Architect prend en charge trois types d'emplacements personnalisés :
- un type de liste
- un type de liste dynamique
- une expression régulière (regex)
- Capable de poser des questions de suivi, notamment :
- Oui et pas de question
- Questions de remplissage de créneaux
- Filtrer facultativement les messages d’accueil.
- Passez en revue le comportement de gestion des événements pour plus de clarté. Par exemple, les événements d’erreur, les échecs de reconnaissance et l’escalade de l’agent.
Lorsque vous définissez des intentions, gardez les directives suivantes à l’esprit :
Définir des éléments d’action pour des intentions potentielles
- Faites une liste des éléments d'action que vous souhaitez que le bot couvre.
- Évaluez si ces requêtes et les exemples correspondants sont de bons candidats pour un bot :
- Les cas sont-ils bien définis ?
- Les exemples partagent-ils un vocabulaire que le bot peut utiliser comme point d'ancrage pour l'apprentissage ?
- Les exemples de demandes potentielles diffèrent-ils suffisamment ?
- Pouvez-vous fournir suffisamment d'exemples distincts ? Les meilleures pratiques recommandent 15 à 30 exemples.
- Examinez les données existantes et déterminez comment votre liste se compare aux cas réels.
- Assurez-vous que vos définitions ont des limites claires et ne se chevauchent pas.
- Si vous avez des exemples qui se situent entre les intentions, décidez où vous préférez qu'ils aillent et redessinez les limites de définition d'intention pour les adapter.
- Préparez d'abord une liste d'intentions plus petite et plus importante. Dans les futures itérations, vous pouvez développer un modèle de preuve de concept qui fonctionne bien.
Utiliser des modèles de dénomination d'intention cohérents
- Configurez les noms d’intention pour qu’ils fonctionnent dans une phrase d’invite ; par exemple, “Je crois que vous êtes intéressé par [nom de l’intention].”
- Assurez-vous que toutes les intentions correspondent au modèle.
- Utilisez des noms plus courts si possible. Ce point est particulièrement important pour les bots vocaux. La confirmation, la désambiguïsation et les invites qui contiennent des noms d'intention longs ne fonctionnent pas bien avec la voix.
- Utilisez une formulation brève, mais naturelle qui correspond à la grammaire rapide.
- Choisissez entre les invites par défaut et personnalisées pour chaque intention, en fonction du cas d’utilisation.
- Assurez-vous que vos invites personnalisées et par défaut sont brèves.
Lorsque vous fournissez des exemples d'intention, tenez compte de ces consignes de bonnes pratiques :
- Fournir au moins 20 à 30 exemples typiques par intention.
- Assurez-vous de fournir des variations d’intention, telles que :
- Incluez la variété sous la forme de questions ou de déclarations que les gens peuvent faire.
- Ajoutez des mots-clés qui représentent l’intention.
- Ajoutez des phrases courtes et des phrases complètes.
- Ajoutez des synonymes pour l'action de l'intent ; par exemple, réservez un hôtel, réservez une chambre et effectuez une réservation.
- Si vous avez plusieurs intentions qui partagent le même lexique, assurez-vous de fournir des exemples suffisamment équilibrés des deux côtés et donnez la priorité aux exemples de phrases qui distinguent les deux intentions. Par example: « laisser un message à un médecin » et « consulter un médecin ». Inclure des verbes qui distinguent différentes actions sur le même nom aide à un bon apprentissage.
- Si une intention a des emplacements à remplir, assurez-vous que vous :
- Définissez le logement et les types de logement.
- Incluez des valeurs plurielles et des synonymes.
- Balisez les entités dans les exemples de phrases d'intention.
- Sélectionnez des invites par défaut ou personnalisées pour chaque créneau.
- Dans vos invites, fournissez des instructions ou des exemples pour les formats d'emplacement intégrés.
Lorsque vous définissez des entités, gardez à l'esprit les consignes suivantes :
- Définissez les types d'informations qui remplissent les emplacements pour effectuer l'action d'intention ou pour informer le parcours client.
- Créez si possible des classes d'espaces publicitaires qui ne se chevauchent pas et demandez :
- Ces informations sont-elles nécessaires pour prendre des mesures ou pour le routage du bot ?
- Ces informations seront-elles enregistrées et utilisées dans le parcours client ?
- Envisagez de choisir une stratégie différente pour les données si vous répondez « oui » à :
- Cette information est-elle difficile à saisir ? Est-ce trop verbeux, y a-t-il trop de choix de formulation qui peuvent empêcher le bot d'orienter le client dans la bonne direction ?
- Si le bot ne capture pas ces données, la classification des intentions échouera-t-elle ?
- Une stratégie différente peut être un emplacement d'entité qui n'est pas requis, choisi uniquement lorsqu'il est présent et non demandé, ou capturé comme une intention différente.
- Évitez les emplacements généraux avec une large gamme de valeurs d'emplacement qui ne peuvent pas être anticipées.
- Évitez les questions ouvertes telles que comment ou pourquoi. Comptez plutôt sur l'orientation des clients vers des options limitées.
- Envisager des questions binaires pour la capture d'informations ; par exemple, utilisez les questions intégrées oui ou non pour demander des créneaux).
Lorsque vous fournissez des exemples d'entités, tenez compte de ces consignes de bonnes pratiques :
- Vous avez besoin d'au moins deux exemples de valeur d'emplacement en surbrillance dans votre ensemble d'entraînement d'intent.
- Si vous avez des exemples d'emplacements dans votre ensemble d'entraînement, essayez de mettre en évidence tous ou la plupart des cas, en particulier les valeurs courantes et les synonymes.
Assurez-vous de créer des invites qui :
- Sont brefs et clairs.
- S’adaptent bien à la grammaire des éventuelles insertions d’intention ou de nom d’option par défaut.
Tenez compte des variations et des ajustements nécessaires pour un robot vocal.
- Intentions : IT n’est pas nécessaire de varier les formats de nombre. Toutefois, assurez-vous que vous savez quel format de nombre votre composant Speech-to-text renvoie, et assurez-vous que vous représentez ce format dans vos intentions.
- Invites : Assurez-vous que vous construisez des invites vocales avec un choix de mots bref et minimal. Contrairement aux messages texte, vous ne pouvez pas les revoir à nouveau. La meilleure pratique recommande des invites vocales simples et courtes, avec peu ou moins de trois mots, et sans répétition.
Cette section décrit les recommandations relatives aux ensembles de tests, les directives pour les tests de bot vocal et pour les tests de moteur de bot textuel ou vocal.
Recommandations sur les ensembles de tests
Un bot basé sur l'apprentissage automatique doit passer par plusieurs itérations de tests et de corrections en ajoutant des exemples et en rééquilibrant les ensembles de formation. Les meilleures pratiques recommandent de créer un ensemble de tests délibéré à partir d'énoncés de clients réels et de le réutiliser à chaque itération pour voir l'amélioration.
Les tests de bot de bout en bout via des appels simulés et les tests NLU uniquement basés sur un ensemble d'exemples de test prédéfinis sont recommandés pour obtenir les meilleurs résultats. Si vous disposez d'informations sur la fréquence des intentions ou d'idées sur les cas les plus centraux ou les plus importants pour votre entreprise, assurez-vous de bien les représenter dans votre ensemble de tests.
Test de bot vocal
Les instructions suivantes vous aident à déterminer si la reconnaissance vocale automatique a un impact sur les performances. Pendant le processus de test, assurez-vous que vos exemples d'intention sont représentés dans des voix et des environnements différents :
- Différences de lexique générationnel
- Compréhension de la reconnaissance automatique de la parole (ASR) dialecte régional
- Représentation du genre. Par exemple, les voix avec un ton plus élevé ont une plage acoustique plus petite et peuvent être plus difficiles à comprendre pour le moteur ASR)
- Test d'environnement bruyant tel qu'un téléphone, un téléphone avec du bruit de la circulation ou de la télévision en arrière-plan.
Test du moteur de bot (texte ou voix)
- Utilisez des variations pour chaque intention. Par exemple, "J'ai besoin d'une chambre pour demain." ou "Je veux réserver une chambre pour demain."
- Tester des cas où une intention n’est pas claire. Par exemple, les problèmes de limites, le vocabulaire se chevauche entre les intentions, une intention demandée à un niveau de détail différent.
- Testez le modèle à l'aide d'un seul mot-clé ou d'énoncés de phrases courtes.
- Testez le modèle à l’aide d’intentions avec et sans options.
- Vérifiez si les mots généraux créent un fort parti pris. Par exemple, les mots “pourquoi” ou “aidez-moi” sélectionnent-ils automatiquement une intention par rapport à une autre ? Dans ce cas, l’action corrective recommandée consiste à équilibrer le modèle en ajoutant ces mots à d’autres intentions, le cas échéant.
- Déterminez si les mots-clés partagés créent un fort biais. Par exemple, “compte” dans les intentions bancaires. Dans ce cas, l’action corrective recommandée consiste à décider d’un défaut, puis à renforcer les sous-cas.
Au cours de l'analyse post-test, passez en revue les domaines d'amélioration, évaluez le taux de réussite du test du modèle et travaillez avec le panel d'apprentissage.
Examen pour amélioration
Après avoir entraîné et testé votre bot, passez en revue les domaines d'amélioration. Utilisez les informations de confiance dans la classification des intentions pour diagnostiquer les problèmes et guider les améliorations :
Si la mauvaise intention est supposée avec un niveau de confiance élevé :
- Y a-t-il des mots essentiels dans votre exemple de test qui suggèrent plus d'une intention ?
- Devez-vous redéfinir les limites d'intention, fusionner ou nettoyer des exemples d'intentions trop similaires et donc confondre le modèle ?
Si la mauvaise intention est supposée avec un faible niveau de confiance :
- L'exemple est-il "typique" ? Suivez les directives mentionnées précédemment dans cet article.
- L'exemple est-il « marginal » ? Concentrez-vous d'abord sur des exemples centraux. Après avoir corrigé ces exemples, vous pouvez traiter les cas limites avec des exemples d'intention.
Si la confiance pour les exemples d'intention centrale est inférieure au seuil de confirmation :
- Affichez la définition de l'intention et les intentions associées ou similaires. La définition et le vocabulaire se chevauchent-ils trop ? Existe-t-il des fusions potentielles entre des intentions trop similaires ? Devriez-vous supprimer certains exemples d'"intentions concurrentes" ?
- L'exemple est-il « marginal » ? Vous pouvez vous attendre à une confiance moindre s'il existe moins d'exemples dans la définition d'intention ou si d'autres intentions partagent des cas similaires.
- Si les points précédents ne s'appliquent pas, vous pouvez ajuster le seuil de confirmation à la baisse.
Évaluer le succès global du test du modèle
- Évaluez la pertinence de vos intentions par rapport aux cas de test et ajustez si des cas centraux manquent.
- Concentrez votre attention sur les phrases clés, pas sur le contenu parasite. Si vous utilisez des données réelles, réfléchissez à la possibilité d'apporter des modifications pertinentes aux tests, telles que la réduction de la formulation des phrases.
- Réfléchissez à l'opportunité d'inclure plus d'exemples de formation ; par exemple, la variation syntaxique et les synonymes.
- Équilibrez vos intentions afin qu’elles éliminent les préjugés existants dans les phrases communes et les mots-clés partagés. Si un exemple inclut un biais fort qui interfère avec la résolution de l’intention, IT.
Travailler avec le panneau d'apprentissage
Le panneau d'apprentissage est conçu pour aider à l'amélioration du modèle. Vous voyez des cas d'utilisation réels avec une classification d'intention et pouvez corriger la classification. Cependant, rappelez-vous qu'un modèle fonctionne mieux lorsqu'il est bien entraîné et équilibré. Résistez aux tentatives d'ajouter tout ce qui se trouve sur le panneau d'apprentissage à l'ensemble de formation du modèle. Cette étape est susceptible d'entraîner un biais vers les intentions communes et peut fournir des phrases inutiles qui obscurcissent l'apprentissage du modèle.
Il est préférable d'ajouter au modèle les cas centraux et saillants qui sont mal classés ou qui ont une faible confiance dans leur classification.
La nature statistique de l'apprentissage automatique signifie que vous essayez de bien couvrir 99 % des cas les plus courants. Moins le cas est courant, plus il est probable qu'il ne soit pas couvert et absent de l'apprentissage. Si vous essayez d'ajouter absolument tous les cas au modèle, les performances sur les cas les plus centraux diminuent et le succès commercial global du cas d'utilisation diminue avec lui.