Langues et assistants numériques

Vous pouvez développer des assistants numériques en une seule langue et en plusieurs langues. Bien que la majorité du travail lié à la langue s'effectue dans les compétences de l'assistant numérique, vous devez également vous assurer que celui-ci détecte lui-même la langue de l'utilisateur et présente le message d'accueil, l'aide, la désambiguïsation et d'autres messages dans cette langue.

Voici vos options de haut niveau :

  • Créez un assistant numérique unilingue ou multilingue pour les compétences qui utilisent la prise en charge linguistique native d'Oracle Digital Assistant.

    Dans l'assistant numérique, vous spécifiez des langues cibles, puis ajoutez des compétences qui les prennent en charge. Lorsque les utilisateurs initient des conversations dans l'assistant numérique, la langue est automatiquement détectée, puis utilisée par l'assistant numérique pendant la durée de la conversation.

    Pour la sortie, vous définissez des entrées d'ensemble de ressources pour chaque langue.

    Voir aussi Prise en charge linguistique native pour les compétences.

  • Créez un assistant numérique multilingue basé sur un service de traduction dans lequel vous :

    • Ajoutez un service de traduction.
    • Ajoutez des compétences qui sont configurées avec un service de traduction, avec le composant Detect Language (Détecter la langue) et dont les données d'entraînement sont en anglais.
    • Facultativement (mais préférablement), ajoutez des ensembles de ressources dans une ou plusieurs langues pour les étiquettes, invites et messages de l'assistant numérique.

    Voir aussi Compétences multilingues avec traduction automatique.

  • Créez un assistant numérique à langue unique autre que l'anglais et basé sur un service de traduction, dans lequel vous :

    • Ajoutez un service de traduction.
    • Ajoutez des compétences qui sont configurées avec un service de traduction, avec le composant Détecter la langue et dont les données d'entraînement sont dans la langue cible de la compétence et de l'assistant numérique.
    • Fournissez des traductions pour les différentes chaînes de sortie (en utilisant des ensembles de ressources ou directement dans les champs des propriétés).

    Voir aussi Compétences en langue unique autre que l'anglais utilisant un service de traduction.

Choix entre la prise en charge linguistique native et le service de traduction

Lorsque vous créez des compétences et des assistants numériques, vous pouvez utiliser la prise en charge linguistique native d'Oracle Digital Assistant ou utiliser un service de traduction de 3e partie. Cependant, dans chaque compétence et assistant numérique, vous ne pouvez utiliser qu'une seule de ces approches. Une compétence ne peut être ajoutée à un assistant numérique que si elle utilise la même approche de traduction que lui

Il vous faudra probablement utiliser la prise en charge native pour les langues si toutes celles que vous ciblez figurent sur la liste des langues prises en charge de manière native. En utilisant la prise en charge linguistique native :

  • Vous pouvez construire le modèle d'entraînement des compétences et des assistants numériques avec des données provenant de toutes vos langues cibles. (Lorsque vous utilisez l'approche du service de traduction, vous ne pouvez fournir des données d'entraînement que pour la langue prédominante.)
  • Vous évitez de payer un service tiers pour les frais de traduction.
  • Vous n'avez pas besoin de donner à un service tiers accès aux données d'entraînement de votre compétence ou au texte provenant de conversations d'utilisateur.

Utilisez un service de traduction si vous souhaitez que soient prises en charge des langues qui ne le sont pas de manière native.

Prise en charge linguistique native dans les assistants numériques

À partir de la version 20.12 de la plate-forme, vous pouvez développer des assistants numériques avec prise en charge linguistique native. Pour ces assistants numériques, vous n'avez pas besoin d'utiliser un service de traduction tiers pour traiter les entrées d'utilisateur et les réponses de compétence dans ces langues.

Un assistant numérique avec prise en charge linguistique native doit contenir des compétences avec prise en charge linguistique native . Pour en savoir plus sur le développement de ces compétences, voir Prise en charge linguistique native pour les compétences.

Configurer un assistant numérique en mode de prise en charge linguistique native

Voici les étapes initiales de la configuration d'un assistant numérique avec la prise en charge linguistique native :

  1. Cliquez sur icône d'ouverture du menu latéral pour ouvrir le menu latéral, sélectionnez Development > Digital Assistants (Développement > Assistants numériques), puis cliquez sur New Digital Assistant (Nouvel assistant numérique).

  2. Remplissez la boîte de dialogue en accordant une attention particulière à ces champs :
    • Version de plate-forme : La version de la plate-forme affecte le comportement de vos assistants numériques, par exemple, la façon dont le moteur de compréhension du langage naturel (NLU) résout les intentions et les langues prises en charge de manière native.

      Pour la prise en charge linguistique native, vous devez régler cette valeur à 20.12 ou supérieure.

      Voir Version de plate-forme.

    • Langue principale : Cela détermine à la fois la langue par défaut de l'assistant numérique et si elle sera prise en charge de manière native ou par l'intermédiaire d'un service de traduction.

      Dans ce champ, vous devez sélectionner l'une des langues dans la section Natively-Supported (Prise en charge de manière native) de la liste déroulante.

  3. Si vous avez besoin d'ajouter des langues supplémentaires à l'assistant numérique :
    1. Dans la barre de navigation gauche du tout nouvel assistant numérique, cliquez sur icône des paramètres.
    2. Cliquez sur Add Language (Ajouter une langue) et sélectionnez la langue à ajouter.

Langues complètes et en cours

Dans les assistants numériques basés sur la prise en charge linguistique native d'Oracle Digital Assistant, les langues que vous configurez pour eux doivent correspondre à celles configurées pour les compétences.

Pour vous aider à vérifier si les langues configurées pour vos compétences et votre assistant numérique correspondent, une vérification est exécutée chaque fois que vous ajoutez une langue ou une compétence à l'assistant numérique et que chaque langue est marquée Complete (Complète) ou In Progress (En cours) :

  • Les langues complètes sont celles dans lesquelles chacune des compétences de l'assistant numérique est configurée pour cette langue.
  • Les langues en cours sont celles pour lesquelles une ou plusieurs compétences ne sont pas configurées.

Vous pouvez trouver la liste des langues complètes et en cours dans l'onglet General de la page Settings (Paramètres) de l'assistant numérique (icône des paramètres).

Note Il est également possible d'ajouter des compétences configurées pour une langue pour laquelle l'assistant numérique ne l'est pas.

Ces langues ne sont pas prises en compte dans la page Settings (Paramètres) de l'assistant numérique.

Passer d'un service de traduction à une prise en charge linguistique native

Si vous souhaitez tirer profit de la prise en charge linguistique native d'Oracle Digital Assistant dans un assistant numérique qui a déjà été configuré pour utiliser un service de traduction, suivez les étapes générales ci-dessous :

  1. Pour toutes les compétences de l'assistant numérique, créez des versions qui utilisent la prise en charge linguistique native.

    Voir Créer une compétence avec des langues prises en charge de manière native.

    Pour la liste des langues prises en charge de manière native, voir Langues prises en charge de manière native. (Si l'une des langues que vous souhaitez prendre en charge ne figure pas sur cette liste, vous devez continuer à utiliser le mode de service de traduction.)

  2. Créez une nouvelle version ou un clone de l'assistant numérique.

    1. Cliquez sur icône d'ouverture du menu latéral pour ouvrir le menu latéral, puis sur Development > Digital Assistants (Développement > Assistants numériques).

    2. Dans la vignette de l'assistant numérique que vous souhaitez modifier ou cloner, cliquez sur icône d'ouverture du menu Options et sélectionnez Version ou Clone.

    3. Remplissez les champs obligatoires et cliquez sur Create (Créer).
  3. Supprimez toutes les compétences de la nouvelle version ou du clone que vous venez de créer.

    Ceci est nécessaire, car vous ne pouvez pas modifier l'assistant numérique pour qu'il utilise la prise en charge linguistique native s'il contient des compétences en mode de service de traduction.

  4. Créez une nouvelle version ou un clone de cet assistant numérique modifié, sélectionnez la version de plate-forme 20.12 ou supérieure, puis le mode linguistique Natively-Supported (Prise en charge de manière native).

    Avec cette étape, vous êtes en mesure de préserver la configuration que vous avez effectuée pour l'assistant numérique, même si vous devez traiter les compétences séparément.

  5. Ajoutez les versions avec prise en charge linguistique native des compétences à l'assistant numérique.

Détection des langues dans les assistants numériques avec des langues prises en charge de manière native

Dans les assistants numériques (ou compétences autonomes) qui utilisent plusieurs langues prises en charge de manière native, l'assistant numérique peut détecter automatiquement la langue de l'utilisateur au début de la session. Fonctionnement :

  • La langue est automatiquement détectée pour les assistants numériques et les compétences configurés avec plusieurs langues prises en charge de manière native.
    • S'il n'y a qu'une seule langue (prise en charge de manière native) dans l'assistant numérique, la détection de la langue est désactivée.
    • Si l'assistant numérique utilise un service de traduction, ce dernier gère la détection de la langue à sa place.
  • La langue n'est pas détectée automatiquement si l'assistant numérique est accessible par un canal où la variable profile.languageTag ou profile.locale a été définie.
  • La langue est détectée dans le premier énoncé de la conversation. Elle n'est pas mise à jour dans la session, même si l'utilisateur change de langue.
  • Par défaut, la session de canal dure 7 jours avant son expiration.

Assistants numériques avec services de traduction

Configuration d'un assistant numérique en langue unique autre que l'anglais en mode de service de traduction

Voici les étapes initiales de la configuration d'un assistant numérique en mode de service de traduction :

  1. Cliquez sur icône d'ouverture du menu latéral pour ouvrir le menu latéral, sélectionnez Development > Digital Assistants (Développement > Assistants numériques), puis cliquez sur New Digital Assistant (Nouvel assistant numérique).

  2. Remplissez la boîte de dialogue en accordant une attention particulière à ces champs :
    • Version de plate-forme : La version de la plate-forme affecte le comportement de vos assistants numériques, par exemple, la façon dont le moteur de compréhension du langage naturel (NLU) résout les intentions et les langues prises en charge de manière native.

      Si vous commencez par un nouvel assistant numérique, vous devez sélectionner la version la plus récente disponible, car la prise en charge de cette version durera le plus longtemps.

      Voir Version de plate-forme.

    • Primary Language (Langue principale) : Ce champ ne s'affiche que si vous avez sélectionné la version 20.12 ou supérieure de la plate-forme.

      Dans ce champ, vous devez sélectionner votre langue cible dans la section Translation Service (Service de traduction) de la liste déroulante.

      Attention :

      Assurez-vous d'avoir effectué votre sélection dans la section Translation Service (Service de traduction). Si vous sélectionnez dans la section Natively-Supported (Prise en charge de manière native), l'assistant numérique n'acceptera que les compétences qui utilisent le mode Natively-Supported (Prise en charge de manière native).

      Si ce champ n'apparaît pas, la langue de l'assistant numérique est déterminée par la langue de la première compétence que vous lui ajoutez. Dans ce cas, cette langue est appelée langue prédominante au lieu de langue principale.

Configuration d'un assistant numérique multilingue en mode de service de traduction

Voici les étapes initiales de la configuration d'un assistant numérique multilingue en mode linguistique de service de traduction :

  1. Cliquez sur icône d'ouverture du menu latéral pour ouvrir le menu latéral, sélectionnez Development > Digital Assistants (Développement > Assistants numériques), puis cliquez sur New Digital Assistant (Nouvel assistant numérique).

  2. Remplissez la boîte de dialogue en accordant une attention particulière à ces champs :
    • Version de plate-forme : La version de la plate-forme affecte le comportement de vos assistants numériques, par exemple, la façon dont le moteur de compréhension du langage naturel (NLU) résout les intentions et les langues prises en charge de manière native.

      Si vous commencez par un nouvel assistant numérique, vous devez sélectionner la version la plus récente disponible, car la prise en charge de cette version durera le plus longtemps.

      Voir Version de plate-forme.

    • Primary Language (Langue principale) : Ce champ ne s'affiche que si vous avez sélectionné la version 20.12 ou supérieure de la plate-forme.

      Dans ce champ, vous devez sélectionner English (Anglais) dans la section Translation Service (Service de traduction) de la liste déroulante.

      Attention :

      Assurez-vous d'avoir effectué votre sélection dans la section Translation Service (Service de traduction). Si vous sélectionnez dans la section Natively-Supported (Prise en charge de manière native), l'assistant numérique n'acceptera que les compétences qui utilisent le mode Natively-Supported (Prise en charge de manière native).

      Si ce champ n'apparaît pas, la langue de l'assistant numérique est déterminée par la langue de la première compétence que vous lui ajoutez. Dans ce cas, cette langue est appelée langue prédominante au lieu de langue principale.

Ajouter un service de traduction à un assistant numérique

  1. Si ce n'est pas encore fait, configurez un service de traduction pour votre instance de Digital Assistant. Procédez de la façon suivante :
    1. Cliquez sur icône d'ouverture du menu latéral pour ouvrir le menu latéral et sélectionnez Settings > Translation Service (Paramètres > Service de traduction).
    2. Cliquez sur + Service.
    3. Entrez l'URL et le jeton d'autorisation pour le service de traduction de Microsoft ou Google dans la boîte de dialogue Translation Services (Services de traduction).
    Consultez la documentation de Microsoft Translator et de l'API de traduction Google pour voir comment obtenir l'URL et le jeton d'accès.
    Note

    Pour utiliser l'API de traduction Google, vous devez générer la clé d'API. Vous créez cette clé depuis la console GCP (APIs & services > Credentials (API et services > Données d'identification)). Pour en savoir plus, voir la documentation de la plate-forme Google Cloud.
  2. Définissez le service de traduction dans votre assistant numérique en procédant de la façon suivante :
    1. Cliquez sur icône d'ouverture du menu latéral pour ouvrir le menu latéral, sélectionnez Development > Digital Assistants (Développement > Assistants numériques), puis votre assistant.
    2. Dans la barre de navigation gauche de l'assistant numérique, cliquez sur l'icône Settings (Paramètres) (icône des paramètres) et sélectionnez l'onglet General (Général).
    3. Naviguez jusqu'à la liste déroulante Translation Service (Service de traduction) et effectuez votre sélection.

Activer la détection des langues dans les assistants numériques utilisant un service de traduction

Par défaut, si un assistant numérique est configuré avec un service de traduction, il détecte la langue de l'utilisateur comme le fait une compétence dotée du composant Detect Language (Détecter la langue).

Cependant, vous devez également vous assurer que les compétences de l'assistant numérique utilisent la langue détectée par l'assistant numérique. Lorsqu'une compétence fait partie d'un assistant numérique, ce dernier traduit l'entrée de l'utilisateur en anglais et transmet ce texte à la compétence. Par défaut, le composant Détecter la langue de la compétence détecterait donc l'anglais et réglerait la variable profile.LanguageTag à anglais, même si l'utilisateur a entré du texte dans une autre langue.

Pour empêcher ce passage à l'anglais dans une compétence avec un flux de dialogue développé en mode visuel, vous devez régler la propriété Existing Profile Language Tag (Marqueur de langue de profil existant) du composant Détecter la langue à True dans chaque compétence.

La compétence honorera ainsi la valeur de la variable profile.LanguageTag définie par l'assistant numérique.

Pour empêcher ce retour à l'anglais dans une compétence basée sur YAML, vous devez ajouter la propriété suivante au composant System.DetectLanguage dans chaque compétence :


      useExistingProfileLanguageTag: true

Voici un exemple du composant System.DetectLanguage d'une compétence basée sur YAML où useExistingProfileLanguageTag est défini :

  detectLang:
    component: "System.DetectLanguage"
    properties:
      useExistingProfileLanguageTag: true
    transitions:
      ...
Note

Vous pouvez utiliser cette propriété dans toutes vos compétences, même si elles ne sont pas toutes utilisées dans un assistant numérique. Si la compétence ne fait pas partie d'un assistant numérique, la propriété n'a pas aucun effet.

Traduction du texte de sortie

Pour un texte visible par l'utilisateur dans un assistant numérique qui utilise un service de traduction, vous pouvez utiliser l'une ou l'autre de ces approches :

  • Utilisez le service de traduction configuré pour l'assistant numérique.

    Si vous utilisez cette approche, vous n'avez besoin que de messages de sortie en anglais. Aucune autre configuration n'est nécessaire. Le service de traduction configuré traduira automatiquement les messages de sortie dans la langue de l'utilisateur.

  • Utilisez un ensemble de ressources pour traduire les messages de sortie vous-même.
    Note

    Pour les messages de sortie sans référence à une clé d'ensemble de ressources, le service de traduction sera automatiquement utilisé pour les traduire.

Appel explicite dans les assistants numériques traduits

Dans les assistants numériques utilisant un service de traduction, un appel explicite des compétences est reconnu dans la langue détectée et en anglais.

Conditions pour ajouter une compétence à un assistant numérique

Lorsque vous essayez d'ajouter une compétence à un assistant numérique, seules les compétences compatibles vous sont proposées. Voici les règles de compatibilité :

  • La compétence et l'assistant numérique doivent tous deux prendre en charge leurs langues cibles de la même manière (de manière native ou par l'intermédiaire d'un service de traduction).
  • La compétence doit prendre en charge les mêmes langues que les assistants numériques créés avec la prise en charge linguistique native.
    • Si la compétence prend en charge plus de langues, l'assistant numérique les ignore.
    • Si la compétence est publiée et ne prend en charge qu'un sous-ensemble des langues de l'assistant numérique, elle ne peut pas être ajoutée.
    • Si la compétence est en mode brouillon, elle peut être ajoutée, même si elle ne prend en charge qu'un sous-ensemble des langues de l'assistant numérique. Toutefois, vous devez ajouter les langues manquantes à la compétence avant de la publier.
Note

Si vous mettez à niveau un assistant numérique (que ce soit au moyen du clonage, du contrôle des versions ou du rebasage) et que vous modifiez son mode de langue, les compétences de l'assistant numérique seront désactivées. Pour que ces compétences fonctionnent, vous pouvez les remplacer par des versions configurées avec le même mode de langue que celui de l'assistant numérique.

Ensembles de ressources pour assistants numériques

Lorsque vous souhaitez contrôler le libellé des réponses de votre assistant numérique en plusieurs langues, utilisez des ensembles de ressources. Vous pouvez fournir des ensembles de ressources pour autant de langues que nécessaire.

Le processus de traduction à l'aide d'ensembles de ressources comprend les étapes suivantes :

  • Identifiez les champs et les propriétés à traduire.
  • Créez des clés d'ensemble de ressources pour l'un des champs qui ne les possèdent pas encore et fournissez des valeurs pour la langue par défaut.
  • Pour chaque clé, entrez des valeurs traduites dans autant de langues que nécessaire.
  • Pour les champs et propriétés pour lesquels vous avez fourni des traductions, entrez des références à la clé d'ensemble de ressources correspondante. Pour les chaînes simples, utilisez le format d'expression suivant (où rb est un identificateur réservé à l'ensemble de ressources) :
    ${rb.BundleKeyName}

    Pour les propriétés comportant des variables, utilisez le format d'expression suivant :

    ${rb('bundleKey', variableForParam0, variableForParam1)}

Chaînes traduisibles dans les assistants numériques

Les chaînes traduisibles figurent aux deux endroits suivants :

  • Dans la page Compétences (Icône Skills (Compétences)) de l'assistant numérique.

    Vous y trouverez les chaînes principalement utilisées pour les cartes d'aide affichées lorsqu'un utilisateur demande de l'aide dans l'assistant numérique et que ce dernier l'accueille.

    Pour chaque compétence, vous pouvez traduire
    • Les champs One-sentence Description (Description en une phrase), Description, et Invocation (Appel).
    • Les exemples d'énoncés.
  • Dans la page Settings (Paramètres) (icône des paramètres), onglet Configurations, section Conversation Parameters (Paramètres de conversation). À partir de la version 21.04 de la plate-forme, des entrées d'ensemble de ressources sont automatiquement créées pour ces paramètres.

Créer et modifier des clés d'ensemble de ressources

Les clés d'ensemble de ressources sont utilisées pour identifier le texte de sortie qui doit être traduit et fournir des valeurs dans une ou plusieurs langues. Pour les assistants numériques qui utilisent la version 21.04 ou ultérieure de la plate-forme, les clés sont générées automatiquement pour les paramètres de configuration de l'assistant numérique. Pour les autres chaînes (et pour les paramètres de configuration des assistants numériques qui utilisent les versions 21.02 ou antérieures de la plate-forme), vous devez créer manuellement des clés.

Pour créer et alimenter un ensemble de ressources pour un assistant numérique :
  1. Dans la barre de navigation de gauche de l'assistant numérique, cliquez sur Icône Ensemble de ressources..

  2. Cliquez sur Add Bundle (Ajouter un ensemble).

  3. Dans le champ Key (Clé), entrez une valeur à utiliser pour identifier le champ ou la propriété auquel elle correspond.

    Si la clé est destinée au premier exemple d'énoncé pour une compétence de commande de pizza, indiquez une valeur semblable à PizzaSkillExampleUtterance1.

  4. Entrez le texte dans la langue que vous voulez utiliser par défaut pour l'assistant numérique. (La langue par défaut n'est pas nécessairement l'anglais. Il s'agit de la langue utilisée pour les messages de sortie s'il n'existe aucune traduction dans la langue détectée.)

    Pour les propriétés propres aux compétences (Invocation (Appel) et Example Utterances (Exemples d'énoncés)), vous pouvez utiliser les valeurs héritées de ces compétences.

    Pour les paramètres de conversation d'assistant numérique (comme Acknowledgement Response (Réponse d'accusé de réception)), vous pouvez simplement utiliser les valeurs par défaut pour ces propriétés si la langue par défaut de votre assistant numérique est l'anglais.

    Note

    Pour les propriétés utilisant des variables de système comme paramètres pour accéder au nom d'une intention ou d'une compétence par exemple, utilisez des codes de substitution ({0}, {1}, etc.) pour les paramètres. Ensuite, dans la référence de la propriété à la clé d'ensemble, les variables de système données peuvent être spécifiées.
  5. Au besoin, remplissez le champ Annotation pour aider les autres développeurs à comprendre à quoi sert la chaîne et où elle est utilisée.
  6. Cliquez sur Create Entry (Créer une entrée).

  7. Pour ajouter une version de la chaîne dans une langue supplémentaire, cliquez sur Add Language (Ajouter une langue).

  8. Dans la boîte de dialogue Create Entry (Créer une entrée), remplissez les champs suivants et cliquez sur Create (Créer).
    • Language (Langue)—Ajoutez une balise de langue IETF BCP 47, telle que fr pour le français ou de pour l'allemand.

    • Text (Texte)—Chaîne de sortie pour cette langue.

    • Annotation —(Facultatif). Informations destinées à aider les autres développeurs à comprendre à quoi sert la chaîne et où elle est utilisée.

  9. Pour chaque chaîne supplémentaire que vous devez traduire, créez une autre entrée en cliquant sur Add Key (Ajouter une clé) et en répétant les étapes 3 à 8.

Clés d'ensemble de ressources de référence pour les cartes d'aide dans un assistant numérique

Lorsqu'un assistant numérique accueille l'utilisateur ou présente des informations d'aide pour les compétences qu'il contient, il utilise les valeurs de la page Compétences de l'assistant numérique pour alimenter les cartes d'accueil et d'aide. Vous pouvez traduire les informations qui apparaissent sur ces cartes d'aide en modifiant certains champs de la page Compétences.

  1. Dans la barre de navigation gauche de l'assistant numérique, cliquez sur Icône Skills (Compétences)
  2. Sélectionnez une compétence.
  3. Mettez à jour les champs One-sentence Description (Description en une phrase), Description, et Invocation (Appel) en indiquant des références aux ensembles de ressources sous la forme suivante :
    ${rb.BundleKeyName}

    Par exemple, vous pouvez utiliser ce qui suit pour référencer une clé pour la description en une ligne d'une compétence de commande de pizza.

    ${rb.PizzaSkillShortDescription}
  4. Dans la section Examples (Exemples) de la page, positionnez le curseur sur un exemple, cliquez sur l'icône Edit (Modifier) correspondante et remplacez le texte par une référence à une clé d'ensemble de ressources comme ci-dessus.
  5. Répétez l'étape précédente pour les autres exemples d'énoncés de la compétence.
  6. Répétez les quatre étapes précédentes pour chaque compétence.
Note

Lorsque vous mettez à jour la version d'une compétence dans l'assistant numérique, le commutateur Overwrite Interaction Model (Remplacer le modèle d'interaction) vous est présenté. Si vous le laissez en position ON, les valeurs de l'appel et les exemples d'énoncés seront mises à jour avec celles définies dans l'onglet Digital Assistant (Assistant numérique) de la page Settings (Paramètres) de la compétence modifiée. Vous devrez peut-être traduire à nouveau l'appel et les exemples d'énoncés.

Clés d'ensemble de ressources de référence pour invites et messages

Les assistants numériques disposent d'un certain nombre de propriétés de configuration permettant d'afficher divers messages et invites.

Pour définir la sortie d'une propriété de configuration, vous référencez la clé de variable et de message d'ensemble de ressources. Par exemple : ${rb('WhatType')}. Vous pouvez également utiliser la notation par points, par exemple : ${rb.WhatType}

  1. Dans la barre de navigation gauche de l'assistant numérique, cliquez sur l'icône Settings (Paramètres) (icône des paramètres) et sélectionnez l'onglet Configurations.

  2. Pour les propriétés de la section Conversation Parameters (Paramètres de conversation) de la page, entrez les références aux clés d'ensembles de ressources que vous avez définies pour chacune d'elles.

    Par exemple, si vous avez une clé dans votre ensemble de ressources appelée daAcknowledgementResponse pour la propriété Acknowledgement Response (Réponse d'accusé de réception), vous entrez ce qui suit dans le champ Acknowledgement Response :

    ${rb('daAcknowledgementResponse')}
Note

À partir de la version 21.04, ces clés d'ensemble de ressources sont générées automatiquement et les paramètres de conversation sont définis pour référencer ces clés d'ensemble.

Variables de système dans les ensembles de ressources

Vous pouvez également utiliser des paramètres dans les valeurs pour des clés d'ensemble, ce qui vous permet d'utiliser des variables de système dans la sortie. Par exemple, la valeur par défaut de la propriété Exit Flow Confirmation (Confirmation de sortie du flux) est :

Exited ${system.routingFromIntent} in ${system.routingFromSkill}.

Vous pouvez conserver les références aux variables de système (dans ce cas, system.routingFromIntent et system.routingFromSkill) dans vos réponses traduites en procédant comme suit :

  1. Dans la valeur de la clé d'ensemble de ressources correspondante, insérez {0}, {1}, etc. comme codes de substitution pour chaque variable de système. Par exemple, dans l'entrée en anglais (ou par défaut) que vous créez pour la propriété Exit Flow Confirmation (Confirmation de sortie du flux), vous pouvez utiliser le texte suivant :
    Exited {0} in {1}.
  2. Puis, dans la valeur de la propriété, entrez la référence à la clé d'ensemble dans le format suivant :
    ${rb('bundleKey', '${systemVariableForParam0}', '${systemVariableForParam1}')}

    Par exemple, elle aurait l'aspect suivant pour la propriété Exit Flow Confirmation (où daExitFlowConfirmation indique la clé d'ensemble correspondante) :

    ${rb('daExitFlowConfirmation', '${system.routingFromIntent}', '${system.routingFromSkill}')}

Exporter et importer des ensembles de ressources

Vous pouvez exporter et importer des ensembles de ressources dans un fichier CSV, ce qui vous permet de travailler sur les ensembles hors ligne.

Le fichier CSV doit comporter les colonnes suivantes :

  • languageTag
  • key
  • message
  • annotation

Pour exporter un fichier CSV avec l'ensemble de ressources existant :

  • Dans la page Ensemble de ressources pour votre compétence ou assistant numérique, cliquez sur Icône d'exportation d'ensemble de ressources pour exporter un fichier CSV avec le groupe de ressources existant.

    Même si vous n'avez pas encore ajouté de clé à l'ensemble de ressources, un fichier dans le format CSV requis sera exporté.

Pour importer un fichier d'ensemble de ressources :

  • Dans la page Ensemble de ressources pour votre compétence ou assistant numérique, cliquez sur Icône d'importation d'ensemble de ressources.

Entrées d'ensemble de ressources pour les paramètres de configuration de Digital Assistant

À partir de la version 21.04 de la plate-forme, des entrées d'ensemble de ressources sont créées automatiquement pour les paramètres de configuration de l'assistant numérique. Si votre assistant numérique est basé sur la version de plate-forme 21.02 ou antérieure, vous pouvez effectuer une mise à niveau vers la version 21.04 ou supérieure pour que ces entrées soient générées pour vous.

Voici la liste de toutes les entrées d'ensemble de ressources système pour les assistants numériques ainsi que leurs valeurs par défaut.

Entrée d'ensemble de ressources Texte anglais par défaut Description de l'entrée
systemConfiguration_autoNumberPrefixes 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20 Préfixes utilisés pour les étiquettes d'action de republication avec numérotation automatique.
systemConfiguration_autoNumberPrefixSeparator . Séparateur utilisé entre le préfixe numérique et l'étiquette d'action de republication.
systemConfiguration_conversationAnswerContinue No, continue based on my previous response Étiquette de la réponse 'continuer'.
systemConfiguration_conversationAnswerNo No Étiquette de la réponse "non".
systemConfiguration_conversationAnswerTryAgain No, try again Étiquette de la réponse 'Réessayer'.
systemConfiguration_conversationAnswerYes Yes Étiquette de la réponse "oui".
systemConfiguration_conversationEventInterruptPrompt You have just received a notification from {0}. Would you like to switch to it? Invite à afficher lorsqu'une notification interrompt un flux.
systemConfiguration_conversationExitFlowConfirmation Exited {0} in {1}. Message de confirmation à afficher lors de la sortie d'un flux dans une compétence.
systemConfiguration_conversationExitHiddenFlowConfirmation Exited. Message de confirmation à afficher lors de la sortie d'un flux dans une compétence qui n'est pas exposée.
systemConfiguration_conversationExitPrompt Do you want to exit {0} in {1} now? Invite à afficher avant de quitter un flux.
systemConfiguration_conversationExitSkillConfirmation Exited {0}. Message de confirmation à afficher lors de la sortie d'une compétence.
systemConfiguration_conversationExplicitSkillPrompt This will exit current conversation. Do you want to go to {0} now? Invite à afficher lors de la sortie de la conversation courante pour aller à une nouvelle compétence en raison d'un appel explicite.
systemConfiguration_conversationFlowSelectionPrompt Do you want to go to: Invite d'affichage d'une liste de flux à sélectionner.
systemConfiguration_conversationFlowSelectionValue {0} in {1} Nom du flux à afficher en tant que sélection.
systemConfiguration_conversationHelpNoSkillPrompt You don't have any skills registered yet. Register one or more skills so that you can see the digital assistant in action. Invite à afficher lorsqu'aucun robot de compétence n'est enregistré.
systemConfiguration_conversationHistoryActionDisabledPrompt Sorry, this choice is no longer available. Message à afficher lorsqu'un utilisateur clique sur un choix dans l'historique de conversation lorsque le paramètre Activer les actions d'historique de clic n'est pas activé.
systemConfiguration_conversationHistoryActionInvalidPrompt Sorry, this choice is no longer available. Message à afficher lorsqu'un utilisateur clique sur un choix dans l'historique de conversation qui ne peut plus être traité.
systemConfiguration_conversationInterruptMessage Switching to {0} in {1} now. Message à afficher lorsqu'un flux est interrompu pour démarrer un nouveau flux lorsque l'utilisateur n'est pas invité à le faire.
systemConfiguration_conversationInterruptPrompt Do you want to switch to {0} in {1} now? Invite à afficher lors de l'interruption d'un flux pour en démarrer un nouveau.
systemConfiguration_conversationInterruptToUnMatchedFlowPrompt No match found in {0}. Do you still want to switch to it? Invite à afficher lors de l'interruption d'un flux pour accéder à une compétence différente, mais cette compétence n'a pas de flux correspondant. Cela peut se produire lorsqu'un utilisateur interrompt un flux avec une entrée qui contient un appel explicite, mais avec une expression qui ne correspond pas à une intention dans la compétence appelée.
systemConfiguration_conversationNoMatchPrompt No matches were found. Here are some things you can do: Invite à afficher (avant la carte d'aide) lorsqu'aucune correspondance n'a été trouvée.
systemConfiguration_conversationNothingToExitPrompt There's nothing to exit. You don't have any requests in progress. Invite à afficher lorsqu'elle n'est pas dans un contexte de compétence et que l'intention de sortie intégrée est appelée.
systemConfiguration_conversationOdaAck Okay Message du robot d'accusé de réception simple.
systemConfiguration_conversationOdaExitFlowSelection Exit conversation Étiquette de l'option de sortie du flux.
systemConfiguration_conversationOdaExitSkillSelection Exit {0} Étiquette de l'option permettant de quitter la compétence.
systemConfiguration_conversationOdaHelpCardDetailFooter Enter the number prefix to execute the action of your choice, or enter '0' to go back to the skill list. Pied de page des détails de la carte de la compétence lorsque l'optimisation du rendu de la carte d'aide pour les canaux textuels est activée.
systemConfiguration_conversationOdaHelpCardDetailHeader Here are some sample actions : En-tête des détails de la carte de la compétence lorsque l'optimisation du rendu de la carte d'aide pour les canaux textuels est activée.
systemConfiguration_conversationOdaHelpCardListFooter Enter skill number to see sample actions supported by the skill. Pied de page de la liste des cartes de la compétence lorsque l'optimisation du rendu des cartes d'aide pour les canaux textuels est activée.
systemConfiguration_conversationOdaHelpNextPrompt Show more Invite d'aide pour afficher plus de compétences.
systemConfiguration_conversationOdaHelpPrompt Welcome! Here are some things you can do: Message d'aide à afficher au-dessus de la carte d'aide.
systemConfiguration_conversationOdaNoneOption None of the above (Aucune de ces réponses) Étiquette de l'option Aucun de l'option ci-dessus en cas de correspondances de flux multiples.
systemConfiguration_conversationQnaLabel Ask Question Étiquette de l'action Q & A.
systemConfiguration_conversationResumeMessage Resuming {0} in {1} now. Message à afficher lorsqu'un flux interrompu est repris.
systemConfiguration_conversationResumePrompt Do you want to resume {0} in {1} now? Invite à afficher lors de la reprise d'un flux interrompu.
systemConfiguration_conversationSkillExitOnHelp Exit conversation and view assistant help Étiquette de l'option permettant de quitter une compétence et d'afficher la carte d'aide de l'assistant numérique.
systemConfiguration_conversationSkillHelpPrompt You are at {0}. Here are some things you can do: Message d'aide à afficher pour un robot de compétence au-dessus de la carte d'aide.
systemConfiguration_conversationSkillViewHelpAgain View current skill help again Étiquette de l'option permettant d'afficher à nouveau la carte d'aide d'une compétence.
systemConfiguration_conversationSkillWelcomeFlowSelection Welcome Étiquette de l'option pour passer à l'état de bienvenue.
systemConfiguration_conversationSkillWelcomePrompt Welcome to {0}. Message de bienvenue à afficher pour un robot de compétence.
systemConfiguration_conversationStartMessage Starting {0} in {1} now. Message à afficher avant le début d'un flux.
systemConfiguration_conversationStartPrompt Do you want to start with {0} in {1} now? Invite à afficher avant le début d'un flux.
systemConfiguration_errorExpiredSessionPrompt Your session has expired. Please start again. Message lorsque la session a expiré.
systemConfiguration_errorMaxStatesExceededPrompt Your session appears to be in an infinite loop. Message lorsque le robot apparaît dans une boucle infinie.
systemConfiguration_errorUnexpectedErrorPrompt Oops I'm encountering a spot of trouble. Please try again later... Message en cas d'erreur inattendue.
systemConfiguration_internalWelcomeMessage help Message interne envoyé à l'assistant numérique lorsqu'un canal traite l'événement auquel un nouvel utilisateur a accès. La réponse au message interne est envoyée en tant que message de bienvenue au nouvel utilisateur.
systemConfiguration_oauthCancelPrompt Authentication canceled. Message lorsque l'autorisation OAuth est annulée.
systemConfiguration_oauthSuccessPrompt Authentication successful! You can return to the conversation. Message lorsque l'autorisation OAuth réussit.

Exemples d'entrées d'ensemble de ressources

Si vous souhaitez utiliser des entrées d'ensemble de ressources pour vos paramètres de configuration sans mettre à niveau la version de plate-forme de l'assistant numérique vers la version 21.04 ou supérieure, voici une liste des propriétés de personnalisation que vous pouvez traduire, ainsi que les noms suggérés pour les clés d'ensemble et les expressions à utiliser pour référencer ces clés à partir des champs pour les propriétés.

Propriété à traduire Nom suggéré pour la clé d'ensemble Texte anglais par défaut Expression de référence de clé d'ensemble
Acknowledgement Response (Réponse d'accusé de réception) systemConfiguration_conversationAcknowledgementResponse Okay ${rb.daAcknowledgementResponse}
Answer No (Réponse Non) systemConfiguration_conversationAnswerNo No ${rb.daAnswerNo}
Answer Yes (Réponse Oui) systemConfiguration_conversationAnswerYes Yes ${rb.daAnswerYes}
Digital Assistant Exit Flow in Selection (Sortie du flux de l'assistant numérique dans la sélection) systemConfiguration_conversationExitFlowInSelection Exit conversation ${rb.daExitFlowInSelection}
Digital Assistant Exit Skill in Selection (Sortie de la compétence de l'assistant numérique dans la sélection) systemConfiguration_conversationExitSkillInSelection Exit {0} ${rb('daExitSkillInSelection', '${system.routingFromSkill}')}
Exit Current To Go to New Skill Prompt (Invite de sortie de la compétence courante pour aller à la nouvelle) systemConfiguration_conversationExitCurrentToGoToNewSkillPrompt This will exit current conversation. Do you want to go to {0} now? ${rb('daExitCurrentToGoToNewSkillPrompt', '${system.routingToSkill}')}
Exit Flow Confirmation (Confirmation de sortie du flux) systemConfiguration_conversationExitFlowConfirmation Exited {0} in {1}. ${rb('daExitFlowConfirmation', '${system.routingFromIntent}', '${system.routingFromSkill}')}
Exit Prompt (Invite de sortie) systemConfiguration_conversationExitPrompt Do you want to exit {0} in {1} now? ${rb('daExitPrompt', '${system.routingFromIntent}', '${system.routingFromSkill}')}
Exit Skill Confirmation (Confirmation de sortie de la compétence) systemConfiguration_conversationExitSkillConfirmation Exited {0}. ${rb('daExitSkillConfirmation', '${system.routingFromSkill}')}
Flow Information in Selection (Informations du flux dans la sélection) systemConfiguration_conversationFlowInformationInSelection {0} in {1} ${rb('daFlowInformationInSelection', '${system.routingToIntent}', '${system.routingToSkill}')}
Flow Selection Prompt (Invite de sélection de flux) systemConfiguration_conversationFlowSelectionPrompt Do you want to go to: ${rb.daFlowSelectionPrompt}
Help Cards - Skill Detail Footer (Cartes d'aide - Pied de page des détails de la compétence) systemConfiguration_conversationHelpCardsSkillDetailFooter Enter the number prefix to execute the action of your choice, or enter '0' to go back to the skill list. ${rb.daHelpCardsSkillDetailFooter}
Help Cards - Skill Detail Header (Cartes d'aide - En-tête des détails de la compétence) systemConfiguration_conversationHelpCardsSkillDetailHeader Here are some sample actions ${rb.daHelpCardsSkillDetailHeader}
Help Cards - Skill List Footer (Cartes d'aide - Pied de page de la liste de la compétence) systemConfiguration_conversationHelpCardsSkillListFooter Enter skill number to see sample actions supported by the skill. ${rb.daHelpCardsSkillListFooter}
Help Show more prompt (Aide - Invite Afficher plus) systemConfiguration_conversationHelpShowMorePrompt Show more ${rb.daHelpShowMorePrompt}
History action disabled prompt (Invite Action d'historique désactivée) systemConfiguration_conversationHistoryActionDisabledPrompt Sorry, this choice is no longer available. ${rb.daHistoryActionDisabledPrompt}
Interrupt Message (Message d'interruption) systemConfiguration_conversationInterruptMessage Switching to {0} in {1} now. ${rb('daInterruptMessage', '${system.routingToIntent}', '${system.routingToSkill}')}
Interrupt Prompt (Invite d'interruption) systemConfiguration_conversationInterruptPrompt Do you want to switch to {0} in {1} now? ${rb('daInterruptPrompt', '${system.routingToIntent}', '${system.routingToSkill}')}
Interrupt To Unmatch Flow Prompt (Invite d'interruption pour passer au flux sans correspondance) systemConfiguration_conversationInterruptToUnmatchFlowPrompt No match found in {0}. Do you still want to switch to it? ${rb('daInterruptToUnmatchFlowPrompt', '${system.routingToSkill}')}
Invalid History Action Message (Message d'action d'historique non valide) systemConfiguration_conversationInvalidHistoryActionMessage Sorry, this choice is no longer available. ${rb.daInvalidHistoryActionMessage}
Label for Q & A (Étiquette pour FAQ) systemConfiguration_conversationLabelForQnA Ask Question ${rb.daLabelForQnA}
No Matches Were Found Prompt (Invite Aucune correspondance trouvée) systemConfiguration_conversationNoMatchesWereFoundPrompt No matches were found. Here are some things you can do: ${rb.daNoMatchesWereFoundPrompt}
No Skill Bot Prompt (Invite Pas de robot de compétence) systemConfiguration_conversationNoSkillBotPrompt You don't have any skills registered yet. Register one or more skills so that you can see the digital assistant in action. ${rb.daNoSkillBotPrompt}
None of the above (Aucune de ces réponses) systemConfiguration_conversationNoneOfTheAbove None of the above (Aucune de ces réponses) ${rb.daNoneOfTheAbove}
Nothing to Exit Prompt (Invite Rien à quitter) systemConfiguration_conversationNothingToExitPrompt There's nothing to exit. You don't have any requests in progress. ${rb.daNothingToExitPrompt}
Notification Interrupt Prompt (Invite d'interruption - Avis) systemConfiguration_conversationNotificationInterruptPrompt You have just received a notification from {0}. Would you like to switch to it? ${rb('daNotificationInterruptPrompt', '${system.routingToSkill}')}
Resume Message (Message de reprise) systemConfiguration_conversationResumeMessage Resuming {0} in {1} now. ${rb('daResumeMessage', '${system.routingFromIntent}', '${system.routingFromSkill}')}
Resume Prompt (Invite de reprise) systemConfiguration_conversationResumePrompt Do you want to resume {0} in {1} now? ${rb('daResumePrompt', '${system.routingFromIntent}', '${system.routingFromSkill}')}
Skill Bot Exit-On-Help Label (Étiquette Sortie du robot de compétence pour consulter l'aide) systemConfiguration_conversationSkillBotExitOnHelpLabel Exit conversation and view assistant help ${rb.daSkillBotExitOnHelpLabel}
Skill Bot Help Prompt (Invite d'aide du robot de compétence) systemConfiguration_conversationSkillBotHelpPrompt You are at {0}. Here are some things you can do: ${rb('daSkillBotHelpPrompt', '${system.routingFromSkill}')}
Skill Bot View Help Again Label (Étiquette Consulter à nouveau l'aide du robot de compétence) systemConfiguration_conversationSkillBotViewHelpAgainLabel View current skill help again ${rb.daSkillBotViewHelpAgainLabel}
Skill Welcome Flow in Selection (Flux d'accueil à la compétence dans la sélection) systemConfiguration_conversationSkillWelcomeFlowInSelection Welcome ${rb.daSkillWelcomeFlowInSelection}
Start Message (Message de démarrage) systemConfiguration_conversationStartMessage Starting {0} in {1} now. ${rb('daStartMessage', '${system.routingFromIntent}', '${system.routingFromSkill}')}
Start Prompt (Invite de démarrage) systemConfiguration_conversationStartPrompt Do you want to start with {0} in {1} now? ${rb('daStartPrompt', '${system.routingFromIntent}', '${system.routingFromSkill}')}
Skill Bot Welcome Prompt (Invite d'accueil du robot de compétence) systemConfiguration_conversationSkillBotWelcomePrompt Welcome to {0}. ${rb('daSkillBotWelcomePrompt', '${system.routingFromSkill}')}
Expired Session Error Prompt (Invite d'erreur - Expiration de la session) systemConfiguration_conversationExpiredSessionErrorPrompt Your session has expired. Please start again. ${rb.daExpiredSessionErrorPrompt}
Max States Exceeded Error Prompt (Invite d'erreur - Nombre maximum d'états dépassé) systemConfiguration_conversationMaxStatesExceededErrorPrompt Your session appears to be in an infinite loop. ${rb.daMaxStatesExceededErrorPrompt}
OAuth Cancel Prompt (Invite d'annulation OAuth) systemConfiguration_conversationOAuthCancelPrompt Authentication canceled. ${rb.daOAuthCancelPrompt}
OAuth Success Prompt (Invite de réussite OAuth) systemConfiguration_conversationOAuthSuccessPrompt Authentication successful! You can return to the conversation. ${rb.daOAuthSuccessPrompt}
Unexpected Error Prompt (Invite Erreur inattendue) systemConfiguration_conversationUnexpectedErrorPrompt Oops I'm encountering a spot of trouble. Please try again later... ${rb.daUnexpectedErrorPrompt}