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.
Figure 1. Un modèle de conversation est constitué d'intents, de types,
des scènes et des invites qui définissent votre expérience utilisateur. Les intents qui sont
pouvant être appelées sont également valables pour la mise en correspondance dans vos conversations.
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"></ph>
Figure 1 : Exemple d'intention de l'utilisateur
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.
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"></ph>
Figure 2 : Exemple de type personnalisé
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:
<ph type="x-smartling-placeholder">
</ph>
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.
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.
<ph type="x-smartling-placeholder"></ph>
Figure 3. Exemple de scène personnalisée
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.
<ph type="x-smartling-placeholder"></ph>
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.
<ph type="x-smartling-placeholder"></ph>
<ph type="x-smartling-placeholder"></ph>
Figure 5. Exemple d'étape des conditions d'une scène
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.
<ph type="x-smartling-placeholder"></ph>
Figure 6. Exemple de paramètres de remplissage d'emplacements d'une scène
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.
<ph type="x-smartling-placeholder"></ph>
Figure 7. Exemple de gestionnaire d'intent utilisateur d'une scène
<ph type="x-smartling-placeholder"></ph>
Figure 8 : Exemple de gestionnaire d'intent système d'une scène
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2024/08/21 (UTC).
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Il n'y a pas l'information dont j'ai besoin"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Trop compliqué/Trop d'étapes"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Obsolète"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Problème de traduction"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Mauvais exemple/Erreur de code"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Autre"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Facile à comprendre"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"J'ai pu résoudre mon problème"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Autre"
}]
{
"lastModified": "Dernière mise à jour le 2024/08/21 (UTC).",
"confidential": False
}