Un modèle de conversation définit ce que les utilisateurs peuvent dire à vos actions et comment vos Les actions répondent aux utilisateurs. Principaux éléments de base de votre modèle de conversation sont les intents, les types, les scènes et invites. Lorsque l'une de vos actions est appelée, l'Assistant Google remet l'utilisateur à l'action, et celle-ci entame une conversation avec en fonction de votre modèle de conversation, qui comprend les éléments suivants:
Requêtes d'utilisateurs valides : pour définir ce que les utilisateurs peuvent dire à vos actions, vous créer une collection d'intents qui améliorent le NLU de l'Assistant, comprendre les requêtes spécifiques à vos actions. Chaque intent définit des phrases d'entraînement qui décrivent ce que les utilisateurs peuvent dire pour correspondre à cet intent. La Le NLU de l'Assistant étend ces expressions d'entraînement pour inclure des expressions similaires. l'agrégation de ces phrases produit le modèle de langage de l'intent.
Logique d'action et réponses : les scènes traitent les intents, exécutent la logique requise et génèrent des invites à renvoyer à l'utilisateur.
Définir des requêtes utilisateur valides
Pour définir ce que les utilisateurs peuvent dire à vos actions, vous utilisez une combinaison d'intents et types. Les intents et les types utilisateur vous permettent d'améliorer le NLU de l'Assistant avec votre vos propres modèles de langage. Les intents et les types système vous permettent de profiter les modèles de langage et la détection d'événements (par exemple, si des utilisateurs souhaitent quitter une action ou L'Assistant ne détecte aucune action.
Créer des intents utilisateur
Les intents utilisateur vous permettent de définir vos propres phrases d'entraînement qui définissent ce que les utilisateurs pourrait dire à vos Actions. Le NLU de l'Assistant utilise ces expressions pour s'entraîner pour comprendre ce que disent vos utilisateurs. Lorsque les utilisateurs disent quelque chose qui correspond à le modèle de langage de l'intent de l'utilisateur, l'Assistant le met en correspondance votre action, ce qui vous permet d'appliquer la logique et de répondre aux utilisateurs.
<ph type="x-smartling-placeholder">![](https://developers.google.cn/static/assistant/console/images/builder/new-intent.png?authuser=3&hl=fr)
Pour créer un intent utilisateur:
- Dans l'onglet Développer, cliquez sur Intents utilisateur > &CirclePlus; (Nouvel intent), spécifiez un nom, puis appuyez sur Entrée pour créer l'intent.
- Cliquez sur l'intent que vous venez de créer dans le menu de gauche. L'éditeur d'intent s'affiche.
- Ajoutez des phrases d'entraînement à l'intent. Ajoutez autant de phrases d'entraînement pour entraîner le NLU de l'Assistant.
- Facultatif: Annotez les phrases d'entraînement pour indiquer au NLU de l'Assistant d'analyser
Extraire les paramètres typés d'une entrée utilisateur correspondant à un type spécifié:
<ph type="x-smartling-placeholder">
- </ph>
- Saisissez un nom pour le paramètre dans le champ Ajouter un paramètre.
- Sélectionnez un type de système dans le menu déroulant ou créez un type personnalisé.
- Indiquez si le paramètre est une liste. Cela permet au paramètre de collecter plusieurs valeurs du même type.
- Dans la section Add training phrases (Ajouter des phrases d'entraînement), sélectionnez le texte que vous souhaitez auquel appliquer le type. Cela indique à l'Assistant NLU de traiter les éléments mis en surbrillance comme paramètre. Si les utilisateurs disent quelque chose qui correspond au type, la NLU extrait cette valeur en tant que paramètre.
Créer des intents système
Les intents système vous permettent d'exploiter des intents avec un langage prédéfini des modèles pour des événements courants, comme le fait que les utilisateurs souhaitent quitter une action ou l'entrée expire. Pour créer des intents système:
- Dans l'onglet Develop (Développer), cliquez sur System intents (Intents système). Un ensemble d'intents système disponibles, comme NO_MATCH, NO_INPUT et CANCEL.
- Chaque intent système contient ses propres gestionnaires, que vous pouvez personnaliser pour chaque type d'intent système. Par exemple, les intents système vous permettent de déclencher les événements de webhook et d'envoyer des invites statiques lorsque l'événement se produit.
Créer des types personnalisés
Les types personnalisés vous permettent de créer votre propre spécification de type pour entraîner la NLU à comprendre un ensemble de valeurs qui doivent correspondre à une seule clé.
<ph type="x-smartling-placeholder">![](https://developers.google.cn/static/assistant/console/images/builder/type-options.png?authuser=3&hl=fr)
Pour créer un type personnalisé:
- Dans l'onglet Develop (Développer), cliquez sur Types > &CirclePlus; (nouveau type).
Sélectionnez le mode de spécification des valeurs de type dans le champ Quel type de valeurs avec cette Type support?:
- Les mots et synonymes vous permettent de mapper plusieurs valeurs à une clé unique.
qui s'appellent des entrées. Le type peut contenir une ou plusieurs entrées. Si vous
sélectionnez cette option, vous pouvez également activer les paramètres NLU suivants:
- Activer la correspondance partielle : les entrées contenant plusieurs mots sont autorisées. de correspondance, même lorsque les mots sont prononcés dans un ordre différent.
- Accepter les valeurs inconnues : lorsque vous ne pouvez pas spécifier toutes les valeurs possibles, il accepte des mots ou expressions inconnus basés sur l'entrée environnante et des données d'entraînement sur l'intent, comme les articles pouvant être ajoutés à une épicerie liste.
- Les expressions régulières permettent de mettre le type en correspondance avec les modèles d'expressions régulières. selon la norme RE2 de Google.
- Texte libre, qui permet de faire correspondre le type de texte à tout ce que dit l'utilisateur.
- Les mots et synonymes vous permettent de mapper plusieurs valeurs à une clé unique.
qui s'appellent des entrées. Le type peut contenir une ou plusieurs entrées. Si vous
sélectionnez cette option, vous pouvez également activer les paramètres NLU suivants:
Spécifiez les valeurs de type dans la section Add entries (Ajouter des entrées). Si vous avez choisi Format libre text, votre type correspond à n'importe quel texte. Vous n'avez donc pas à fournir d'entrée.
Créer une logique d'action et des réponses
Le NLU de l'Assistant met en correspondance les requêtes utilisateur avec les intents, afin que votre action puisse et les traiter sous forme de scènes. Les scènes sont de puissants exécuteurs de logique qui vous permettent traiter les événements au cours d’une conversation.
![](https://developers.google.cn/static/assistant/conversational/images/scene.png?authuser=3&hl=fr)
Créer une scène
Les sections suivantes décrivent comment créer des scènes et définir des fonctionnalités pour l'étape du cycle de vie de chaque scène.
Pour créer une scène:
- Dans l'onglet Develop (Développer), cliquez sur Scenes > &CirclePlus; (Nouvelle scène), spécifiez un nom, puis appuyez sur Entrée pour créer une scène.
- Cliquez sur la scène que vous venez de créer dans le menu de gauche. L'éditeur de scène s'affiche.
Définir une configuration unique
Lorsqu'une scène est activée pour la première fois, vous pouvez effectuer des tâches ponctuelles dans la À l'étape. L'étape À l'entrée ne s'exécute qu'une seule fois et est la seule qui ne s'exécute pas dans la boucle d'exécution d'une scène.
Dans une scène, cliquez sur l'étape À l'entrée pour spécifier ses fonctionnalités. À ce stade, vous pouvez spécifier les fonctionnalités suivantes:
- Call your webhook (Appeler votre webhook) : déclenche un webhook. Voir les webhooks pour en savoir plus sur les webhooks.
- Envoyer des invites : spécifiez des invites statiques pour l'utilisateur afin qu'il sache comment effectuer les actions suivantes : poursuivre la conversation. Consultez la documentation sur les invites. pour en savoir plus sur la spécification des requêtes.
Figure 4. Exemple d'une scène d'entrée sur scène
Vérifier les conditions
Les conditions vous permettent de vérifier le remplissage de cases, le stockage de session, le stockage utilisateur et Paramètres de stockage Home pour contrôler le flux d'exécution de la scène.
Dans une scène, cliquez sur l'icône + de l'étape Condition. La L'éditeur de conditions s'affiche à droite. Vous pouvez spécifier les éléments suivants : fonctionnalités à ce stade:
- Condition : spécifie l'instruction conditionnelle réelle sur laquelle baser la logique. de. Consultez la documentation sur les conditions pour connaître la syntaxe. des informations.
- Call your webhook (Appeler votre webhook) : déclenche un webhook. Voir les webhooks pour en savoir plus sur les webhooks.
- Envoyer des invites : spécifie les invites statiques à envoyer à l'utilisateur afin qu'il savoir comment poursuivre la conversation. Voir les invites pour en savoir plus sur la spécification des requêtes.
- Transition : spécifie la scène vers laquelle effectuer la transition lorsque la condition est vraie.
![](https://developers.google.cn/static/assistant/conversational/images/scene-condition.png?authuser=3&hl=fr)
Définir le remplissage de cases
Les emplacements vous permettent d'extraire des paramètres saisis de l'entrée utilisateur.
Dans l'éditeur de scène, cliquez sur l'icône + de l'étape Remplissage de cases. La pour l'espace publicitaire apparaît sur la droite. Vous pouvez spécifier les éléments suivants : d'un emplacement:
- Nom de l'emplacement:indique le nom de l'emplacement. Si vous souhaitez profiter du mappage des valeurs d'emplacements, utilisez le même nom que le le paramètre d'intent correspondant.
- Slot type (Type d'emplacement) : spécifie le type de l'emplacement ou un type personnalisé.
- This location is required (Cet emplacement est obligatoire) : marque cet emplacement comme obligatoire. Si cette option est activée, l'emplacement le remplissage ne se terminera pas tant que cet emplacement n’aura pas été rempli.
- Attribuer une valeur par défaut à cet emplacement:spécifie une valeur par défaut pour l'emplacement. lue à partir du paramètre de session spécifié.
- Personnaliser l'écriture de la valeur d'emplacement:spécifie un paramètre de session à conserver. la valeur de l'emplacement une fois le remplissage d'emplacements terminé.
- Validation des emplacements:déclenchez un webhook lorsqu'un emplacement est rempli. Ce paramètre s'applique à tous les emplacements.
- Call your webhook (Appel de votre webhook) (activé lorsque l'emplacement est requis): déclenche un webhook. Consultez la documentation sur les webhooks pour en savoir plus sur et des webhooks.
- Send invites (Envoyer des invites) (activé lorsque l'emplacement est requis): spécifie des invites statiques. envoyer à l’utilisateur, afin qu’il sache comment poursuivre la conversation. Voir la documentation sur les requêtes pour en savoir plus sur la spécification requêtes.
Pour certains types d'emplacements (comme ceux liés aux transactions ou à l'engagement utilisateur), une section supplémentaire s'affiche pour vous permettre de configurer l'emplacement. Encoche peuvent modifier l'expérience de conversation des utilisateurs en fonction les propriétés que vous fournissez.
Pour configurer un emplacement, indiquez les propriétés dans un objet JSON, soit dans votre
fulfillment (référencé en tant que paramètre de session) ou dans l'éditeur JSON intégré.
Vous trouverez les propriétés disponibles pour chaque type d'emplacement dans la
Documentation de référence JSON sur Actions Builder Par exemple, actions.type.DeliveryAddressValue
le type d'emplacement correspond au contenu de référence de
DeliveryAddressValue
emplacement.
![](https://developers.google.cn/static/assistant/conversational/images/scene-slot.png?authuser=3&hl=fr)
Mappage des valeurs d'emplacements
Dans de nombreux cas, une correspondance d'intent précédente peut inclure des paramètres qui partiellement ou remplir entièrement les valeurs d'emplacement d'une scène correspondante. Dans ces cas, tous les emplacements Les valeurs remplies par les paramètres d'intent sont mappées au remplissage d'emplacements de la scène si le nom de l'emplacement correspond au nom du paramètre d'intent.
Par exemple, si un utilisateur correspond à l'intention de commander une boisson en disant : "Je veux pour commander un grand café à la vanille", des emplacements existants pour la taille, la saveur et la boisson sont considérés comme remplis dans la scène correspondante si cette scène définit emplacements.
Traiter la saisie
Au cours de cette étape, vous pouvez demander au NLU de l'Assistant de faire correspondre l'entrée utilisateur à des intents. Vous pouvez limiter la correspondance d'intent à une scène spécifique en ajoutant les intents souhaités sur la scène. Cela vous permet de contrôler le flux de conversation en indiquant à l'Assistant pour faire correspondre des intents spécifiques lorsque des scènes spécifiques sont actives.
Dans une scène, cliquez sur l'icône + de l'onglet User intent management (Gestion des intents utilisateur) ou Étape de gestion des intents système. L'éditeur du gestionnaire d'intents s'affiche sur la droite. Vous pouvez spécifier les fonctionnalités suivantes de l'intent gestionnaire:
- Intent : spécifie l'intent que vous souhaitez faire correspondre dans cette scène.
- Call your webhook (Appeler votre webhook) : déclenche un webhook. Voir les webhooks pour savoir comment gérer une requête webhook.
- Envoyer des invites : spécifiez des invites statiques pour l'utilisateur afin qu'il sache comment répondre. Consultez la documentation relative aux invites pour en savoir plus sur en spécifiant des requêtes.
- Transition (le cas échéant) : spécifie la scène vers laquelle effectuer la transition (le cas échéant). l'intent spécifié correspond.
![](https://developers.google.cn/static/assistant/conversational/images/scene-customintent.png?authuser=3&hl=fr)
![](https://developers.google.cn/static/assistant/conversational/images/scene-systemintent.png?authuser=3&hl=fr)