Améliorer la reconnaissance vocale grâce à un vocabulaire personnalisé - Amazon Lex

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Améliorer la reconnaissance vocale grâce à un vocabulaire personnalisé

Vous pouvez fournir à Amazon Lex V2 plus d'informations sur la façon de traiter des conversations audio avec un bot en créant un vocabulaire personnalisé dans une langue spécifique. Un vocabulaire personnalisé est une liste de phrases spécifiques que vous souhaitez qu'Amazon Lex V2 reconnaisse dans l'entrée audio. Il s'agit généralement de noms propres ou de mots spécifiques à un domaine qu'Amazon Lex V2 ne reconnaît pas.

Supposons, par exemple, que vous disposiez d'un bot de support technique. Vous pouvez ajouter « sauvegarde » à un vocabulaire personnalisé pour aider le bot à transcrire correctement l'audio en tant que « sauvegarde », même lorsque le son ressemble à « emballer ». Un vocabulaire personnalisé peut également aider à reconnaître des mots rares dans l'audio, tels que « solvabilité » pour les services financiers ou des noms propres tels que « Cognito » ou « Monitron ».

Principes de base du vocabulaire personnalisé

  • Un vocabulaire personnalisé fonctionne sur la transcription des entrées audio vers un bot. Vous devez fournir des exemples d'énoncés pour reconnaître une intention ou une valeur de créneau.

  • Un vocabulaire personnalisé est propre à une langue spécifique. Vous devez configurer des vocabulaires personnalisés de manière indépendante pour chaque langue. Les vocabulaires personnalisés ne sont pris en charge que pour les langues anglaise (Royaume-Uni) et anglaise (États-Unis).

  • Des vocabulaires personnalisés sont disponibles avec les intégrations de centre d'appels prises en charge par Amazon Lex V2. La fenêtre de test de la console Amazon Lex V2 prend en charge les vocabulaires personnalisés pour tous les robots Amazon Lex V2 créés à compter du 31 juillet 2022. Si vous rencontrez des problèmes avec les vocabulaires personnalisés dans la fenêtre de test, reconstruisez le bot et réessayez.

Amazon Lex V2 utilise des vocabulaires personnalisés pour définir à la fois les intentions et les créneaux. Le même fichier de vocabulaire personnalisé est utilisé pour les intentions et les créneaux. Vous pouvez désactiver de manière sélective la fonctionnalité de vocabulaire personnalisé pour un créneau lorsque vous ajoutez un type de créneau.

Susciter une intention : vous pouvez créer un vocabulaire personnalisé pour susciter une intention. Ces phrases sont utilisées pour la transcription lorsque votre bot détermine l'intention de l'utilisateur. Par exemple, si vous avez configuré l'expression « sauvegarde » dans votre vocabulaire personnalisé, Amazon Lex V2 transcrit la saisie utilisateur en « pouvez-vous sauvegarder mes photos, s'il vous plaît ? » ... même lorsque le son sonne comme « peux-tu, s'il te plaît, emballer mes photos ». Vous pouvez spécifier le degré d'amplification de chaque phrase en configurant une pondération de 0, 1, 2 ou 3. Vous pouvez également spécifier une autre représentation pour la phrase dans la sortie de synthèse vocale finale en ajoutant un displayAs champ.

Les phrases de vocabulaire personnalisées utilisées pour améliorer la transcription lors de la sollicitation d'intentions n'affectent pas les transcriptions lors de l'obtention de créneaux. Pour plus d'informations sur la création d'un vocabulaire personnalisé pour susciter des intentions, reportez-vous à la section. Création d'un vocabulaire personnalisé pour obtenir des intentions et des créneaux

Obtenir des créneaux personnalisés — Vous pouvez utiliser un vocabulaire personnalisé pour améliorer la reconnaissance des créneaux pour les conversations audio. Pour améliorer la capacité de votre bot Amazon Lex V2 à reconnaître les valeurs des emplacements, créez un emplacement personnalisé et ajoutez-y les valeurs des emplacements, puis choisissez Utiliser les valeurs des emplacements comme vocabulaire personnalisé. Les exemples de valeurs d'emplacement incluent les noms de produits, les catalogues ou les noms propres. Vous ne devez pas utiliser de mots ou d'expressions courants tels que « oui » et « non » dans les vocabulaires personnalisés.

Une fois les valeurs d'emplacement ajoutées, ces valeurs sont utilisées pour améliorer la reconnaissance des emplacements lorsque le bot attend une saisie pour l'emplacement personnalisé. Ces valeurs ne sont pas utilisées pour la transcription lors de l'obtention d'une intention. Pour plus d'informations, veuillez consulter Ajouter des types de slots.

Bonnes pratiques pour créer un vocabulaire personnalisé

Obtenir une intention

  • Les glossaires personnalisés fonctionnent mieux lorsqu'ils ciblent des termes ou des expressions spécifiques. N'ajoutez des mots à un vocabulaire personnalisé que s'ils ne sont pas facilement reconnus par Amazon Lex V2.

  • Décidez du poids à accorder à un mot en fonction de la fréquence à laquelle le mot n'est pas reconnu dans la transcription et de sa rareté dans la saisie. Les mots difficiles à prononcer nécessitent un poids plus élevé.

  • Utilisez un ensemble de tests représentatif pour déterminer si un poids est approprié. Vous pouvez collecter un ensemble de tests audio en activant l'enregistrement audio dans les journaux de conversation.

  • Évitez d'utiliser des mots courts tels que « on », « it », « to », « yes », « non » dans un vocabulaire personnalisé.

Obtenir un créneau personnalisé

  • Ajoutez les valeurs au type d'emplacement personnalisé que vous souhaitez voir reconnu. Ajoutez toutes les valeurs d'emplacement possibles pour le type d'emplacement personnalisé, quelle que soit la fréquence ou la rareté de la valeur d'emplacement.

  • Activez cette option uniquement lorsque le type d'emplacement personnalisé contient une liste de valeurs de catalogue ou d'entités telles que des noms de produits ou des fonds communs de placement.

  • Désactivez cette option si le type d'emplacement est utilisé pour capturer des phrases génériques telles que « oui », « non », « je ne sais pas », « peut-être » ou des mots génériques tels que « un », « deux », « trois ».

  • Limitez le nombre de valeurs d'emplacement et de synonymes à 500 ou moins pour de meilleures performances.

Entrez des acronymes ou d'autres mots dont les lettres doivent être prononcées individuellement sous forme de lettres séparées par un point et un espace. N'utilisez pas de lettres individuelles à moins qu'elles ne fassent partie d'une phrase, telle que « J.P. Morgan » ou « A. W. S. » Vous pouvez utiliser des lettres majuscules ou minuscules pour définir un acronyme.

Création d'un vocabulaire personnalisé pour obtenir des intentions et des créneaux

Vous pouvez utiliser la console Amazon Lex V2 pour créer et gérer un vocabulaire personnalisé, ou vous pouvez utiliser les opérations de l'API Amazon Lex V2. Il existe deux manières de créer un vocabulaire personnalisé via la console :

Importez du vocabulaire personnalisé dans la console :
  1. Ouvrez la console Amazon Lex V2 à l'adresse https://console.aws.amazon.com/lexv2/home

  2. Dans la liste des robots, choisissez celui auquel vous souhaitez ajouter le vocabulaire personnalisé.

  3. Sur la page détaillée du bot, dans la section Ajouter des langues, choisissez Afficher les langues.

  4. Dans la liste des langues, choisissez la langue à laquelle vous souhaitez ajouter le vocabulaire personnalisé.

Créez un nouveau vocabulaire personnalisé directement via la console :
  1. Cliquez sur Créer dans la section Vocabulaire personnalisé de la page de détails de la langue. Cela ouvrira une fenêtre d'édition sans vocabulaire personnalisé.

  2. Ajoutez des entrées pour la phrase DisplayAs et le poids selon vos besoins. Vous pouvez également apporter des modifications en ligne aux éléments ajoutés en mettant à jour leurs champs ou en les supprimant de la liste.

  3. Cliquez sur Enregistrer. Remarque : le nouveau vocabulaire personnalisé n'est enregistré dans votre bot qu'après avoir cliqué sur Enregistrer.

  4. Vous pouvez continuer à apporter des modifications en ligne sur cette page et cliquer sur Enregistrer lorsque vous avez terminé.

  5. Cette page vous permet également d'importer, d'exporter et de supprimer un fichier de vocabulaire personnalisé à partir du menu déroulant en haut à droite.

Utilisez l'ListCustomVocabularyItemsAPI pour afficher les entrées de vocabulaire personnalisées :
  1. Utilisez cette ListCustomVocabularyItems opération pour afficher les entrées de vocabulaire personnalisées. Le corps de la demande ressemblera à ceci :

    { "maxResults": number, "nextToken": "string" }
  2. Veuillez noter que les champs maxResults et nextToken sont facultatifs pour le corps de la demande.

  3. La réponse de l'ListCustomVocabularyItemsopération ressemble à ceci :

    { "botId": "string", "botVersion": "string", "localeId": "string", "customVocabularyItems": [ { "itemId": "string", "phrase": "string", "weight": number, "displayAs": "string" } ] }
Utilisez l'BatchCreateCustomVocabularyItemAPI pour créer de nouvelles entrées de vocabulaire personnalisées :
  1. Si aucun vocabulaire personnalisé n'a encore été créé pour les paramètres régionaux de votre bot, veuillez suivre les étapes pour utiliser le StartImportpour créer un vocabulaire personnalisé.

  2. Une fois le vocabulaire personnalisé créé, utilisez l'BatchCreateCustomVocabularyItemopération pour créer de nouvelles entrées de vocabulaire personnalisées. Le corps de la demande ressemblera à ceci :

    { "customVocabularyItemList": [ { "phrase": "string", "weight": number, "displayAs": "string" } ] }
  3. Veuillez noter que les champs weight et displayAs sont facultatifs pour le corps de la demande.

  4. La réponse du BatchCreateCustomVocabularyItem ressemblera à ceci :

    { "botId": "string", "botVersion": "string", "localeId": "string", "errors": [ { "itemId": "string", "errorMessage": "string", "errorCode": "string" } ], "resources": [ { "itemId": "string", "phrase": "string", "weight": number, "displayAs": "string" } ] }
  5. Comme il s'agit d'une opération par lots, la demande n'échouera pas si l'un des éléments ne parvient pas à être créé. La liste des erreurs contiendra des informations sur les raisons de l'échec de l'opération pour cette entrée spécifique. La liste des ressources contiendra toutes les entrées qui ont été créées avec succès.

  6. En effetBatchCreateCustomVocabularyItem, vous pouvez vous attendre à voir les types d'erreurs suivants :

    • RESOURCE_DOES_NOT_EXIST: Le vocabulaire personnalisé n'existe pas. Suivez les étapes de création d'un vocabulaire personnalisé avant de lancer cette opération.

    • DUPLICATE_INPUT: La liste des entrées contient des phrases dupliquées.

    • RESOURCE_ALREADY_EXISTS: La phrase spécifiée pour l'entrée existe déjà dans votre vocabulaire personnalisé.

    • INTERNAL_SERVER_FAILURE: Une erreur s'est produite dans le backend lors du traitement de votre demande. Cela peut indiquer une panne de service ou un autre problème.

Utilisez l'BatchDeleteCustomVocabularyItemAPI pour supprimer des entrées de vocabulaire personnalisées existantes :
  1. Si aucun vocabulaire personnalisé n'a encore été créé pour les paramètres régionaux de votre bot, veuillez suivre les étapes décrites dans la section Utiliser le StartImportpour créer un vocabulaire personnalisé pour en créer un.

  2. Une fois le vocabulaire personnalisé créé, utilisez l'BatchDeleteCustomVocabularyItemopération pour supprimer les entrées de vocabulaire personnalisées existantes. Le corps de la demande ressemblera à ceci :

    { "customVocabularyItemList": [ { "itemId": "string" } ] }
  3. La réponse du BatchDeleteCustomVocabularyItem ressemblera à ceci :

    { "botId": "string", "botVersion": "string", "localeId": "string", "errors": [ { "itemId": "string", "errorMessage": "string", "errorCode": "string" } ], "resources": [ { "itemId": "string", "phrase": "string", "weight": number, "displayAs": "string" } ] }
  4. Comme il s'agit d'une opération par lots, la demande n'échouera pas si l'un des éléments ne parvient pas à être supprimé. La liste des erreurs contiendra des informations sur les raisons de l'échec de l'opération pour cette entrée spécifique. La liste des ressources contiendra toutes les entrées qui ont été supprimées avec succès.

  5. En effetBatchDeleteCustomVocabularyItem, vous pouvez vous attendre à voir les types d'erreurs suivants :

    • RESOURCE_DOES_NOT_EXIST: l'entrée de vocabulaire personnalisée que vous essayez de supprimer n'existe pas.

    • INTERNAL_SERVER_FAILURE: Une erreur s'est produite dans le backend lors du traitement de votre demande. Cela peut indiquer une panne de service ou un autre problème.

Utilisez l'BatchUpdateCustomVocabularyItemAPI pour mettre à jour les entrées de vocabulaire personnalisées existantes :
  1. Si aucun vocabulaire personnalisé n'a encore été créé pour les paramètres régionaux de votre bot, veuillez suivre les étapes décrites dans la section Utiliser le StartImportpour créer un vocabulaire personnalisé.

  2. Une fois le vocabulaire personnalisé créé, utilisez l'BatchUpdateCustomVocabularyItemopération pour mettre à jour les entrées de vocabulaire personnalisées existantes. Le corps de la demande ressemblera à ceci :

    { "customVocabularyItemList": [ { "itemId": "string", "phrase": "string", "weight": number, "displayAs": "string" } ] }
  3. Veuillez noter que les champs weight et displayAs sont facultatifs pour le corps de la demande.

  4. La réponse du BatchUpdateCustomVocabularyItem ressemblera à ceci :

    { "botId": "string", "botVersion": "string", "localeId": "string", "errors": [ { "itemId": "string", "errorMessage": "string", "errorCode": "string" } ], "resources": [ { "itemId": "string", "phrase": "string", "weight": number, "displayAs": "string" } ] }
  5. Comme il s'agit d'une opération par lots, la demande n'échouera pas si l'un des éléments ne parvient pas à être supprimé. La liste des erreurs contiendra des informations sur les raisons de l'échec de l'opération pour cette entrée spécifique. La liste des ressources contiendra toutes les entrées qui ont été mises à jour avec succès.

  6. En effetBatchUpdateCustomVocabularyItem, vous pouvez vous attendre à voir les types d'erreurs suivants :

    • RESOURCE_DOES_NOT_EXIST: l'entrée de vocabulaire personnalisée que vous essayez de mettre à jour n'existe pas.

    • DUPLICATE_INPUT: La liste des entrées contient des ItemID dupliqués.

    • RESOURCE_ALREADY_EXISTS: La phrase spécifiée pour l'entrée existe déjà dans votre vocabulaire personnalisé.

    • INTERNAL_SERVER_FAILURE: Une erreur s'est produite dans le backend lors du traitement de votre demande. Cela peut indiquer une panne de service ou un autre problème.

Création d'un fichier de vocabulaire personnalisé

Un fichier de vocabulaire personnalisé est une liste de valeurs séparées par des tabulations qui contient la phrase à reconnaître, une pondération pour la renforcer et un displayAs champ qui remplacera la phrase dans la transcription du discours. Les phrases dont la valeur d'amplification est plus élevée sont plus susceptibles d'être utilisées lorsqu'elles apparaissent dans l'entrée audio.

Le fichier de vocabulaire personnalisé doit être nommé CustomVocabulary.tsv et doit être compressé dans un fichier zip avant de pouvoir être importé. La taille du fichier zip doit être inférieure à 300 Mo. Le nombre maximum de phrases dans un vocabulaire personnalisé est de 500.

  • phrase de 1 à 4 mots qui doivent être reconnus. Séparez les mots de la phrase par des espaces. Vous ne pouvez pas contenir de phrases dupliquées dans le fichier. Le champ de phrase est obligatoire.

  • poids — La mesure dans laquelle la reconnaissance de la phrase est améliorée. La valeur est un entier 0, 1, 2 ou 3. Si vous ne spécifiez pas de poids, la valeur par défaut est 1. Décidez de la pondération en fonction de la fréquence à laquelle le mot n'est pas reconnu dans la transcription et de la rareté du mot dans l'entrée. La pondération 0 signifie qu'aucun renforcement ne sera appliqué et que l'entrée ne sera utilisée que pour effectuer des remplacements en utilisant le displayAs champ.

  • DisplayAs : définit l'apparence que vous souhaitez donner à votre phrase dans votre sortie de transcription. Ce champ est facultatif dans le vocabulaire personnalisé.

Le fichier de vocabulaire personnalisé doit contenir une ligne d'en-tête avec les en-têtes « phrase », « poids » et « DisplayAs ». Les en-têtes peuvent être dans n'importe quel ordre, mais ils doivent suivre la nomenclature ci-dessus.

L'exemple suivant est un fichier de vocabulaire personnalisé. Le caractère de tabulation requis pour séparer la phrase, le poids et le DisplayAs est représenté par le texte « [TAB] ». Si vous utilisez cet exemple, remplacez le texte par un caractère de tabulation.

phrase[TAB]weight[TAB]displayAs Newcastle[TAB]2 Hobart[TAB]2[TAB]Hobart, Australia U. Dub[TAB]1[TAB]University of Washington, Seattle W. S. U.[TAB]3 Issaquah Kennewick