Activités

Les intents représentent une tâche que l'Assistant doit effectuer pour effectuer une action, comme une entrée utilisateur qui doit être traitée ou un événement système que vous devez gérer. Vous utiliserez des intents pour créer vos modèles d'appel et de conversation. Lorsque ces événements se produisent, l'environnement d'exécution de l'Assistant le fait correspondre à l'intent correspondant et envoie l'intent à votre action pour traitement. Il existe deux principaux types d'intents, décrits dans la liste suivante:

  • Les intents utilisateur vous permettent d'étendre la capacité de l'Assistant à comprendre les requêtes utilisateur spécifiques à votre marque et vos services. Vous définissez des expressions d'entraînement personnalisées dans un intent, ce qui génère le modèle de langage d'un intent. Ce modèle de langage améliore le NLU de l'Assistant et améliore sa capacité à comprendre davantage de choses.

  • Les intents système comportent des données d'entraînement ou d'autres signaux d'entrée non conversationnels définis par l'Assistant. Cela signifie que vous n'avez pas besoin de définir des phrases d'entraînement pour ces intents. L'Assistant associe ces intents de manière standard, lors d'événements système connus tels que les appels principaux ou lorsque les utilisateurs ne fournissent aucune entrée.

Figure 1. Scénario de correspondance d'intent commun Un utilisateur dit quelque chose qui correspond à un intent global. La scène correspondante s'active et finit par consommer plus d'entrées utilisateur. Un autre intent est mis en correspondance, qui passe à une autre scène et l'active.

Intention des utilisateurs

Lorsque vous créez des actions, vous créez des intents utilisateur contenant des expressions d'entraînement, ce qui étend la capacité de l'Assistant à en comprendre davantage. L'Assistant utilise vos expressions d'entraînement pour augmenter la NLU lorsqu'il délègue les requêtes des utilisateurs à vos actions.

Dans ce cas, l'Assistant répartit la communication entre l'utilisateur et vos actions, en mappant les entrées utilisateur avec un intent dont le modèle de langue correspond. L'Assistant informe ensuite vos actions de l'intent correspondant afin que vous puissiez le traiter dans une scène.

Lorsque vous créez des intents utilisateur, vous spécifiez les éléments suivants:

  • Une désignation d'intent global définit si l'environnement d'exécution de l'Assistant peut correspondre à l'intent utilisateur spécifié au moment de l'appel et lors d'une conversation. Par défaut, l'Assistant ne peut faire correspondre les intents utilisateur que lors d'une conversation. Seuls les intents que vous marquez comme globaux sont éligibles pour les appels de liens profonds.

  • Les expressions d'entraînement sont des exemples de ce qu'un utilisateur pourrait dire pour correspondre à l'intent. Le moteur de compréhension du langage naturel (NLU, Natural Language Understanding) de l'Assistant développe naturellement ces expressions d'entraînement afin d'inclure d'autres expressions similaires. Fournir un grand ensemble d'exemples de haute qualité améliore la qualité de l'intent et la précision de la mise en correspondance.

  • Les paramètres sont des données typées que vous souhaitez extraire de l'entrée utilisateur. Pour créer un paramètre, vous annotez les phrases d'entraînement avec des types afin d'informer le moteur NLU que vous souhaitez extraire des entrées utilisateur. Vous pouvez utiliser des types de systèmes ou créer vos propres types personnalisés pour les paramètres.

Lorsque le moteur NLU détecte une correspondance de paramètre dans une entrée utilisateur, il extrait la valeur en tant que paramètre saisi, de sorte que vous pouvez exécuter la logique dans une scène. Si un paramètre d'intent porte le même nom qu'un emplacement de scène, l'environnement d'exécution de l'Assistant remplit automatiquement l'emplacement de scène avec la valeur du paramètre d'intent. Pour en savoir plus, consultez la documentation sur le mappage de la valeur d'emplacement.

Les paramètres d'intent sont également compatibles avec les correspondances "partielles". Par exemple, si vous spécifiez un type DateTime et que l'utilisateur ne fournit qu'une date, la NLU extrait toujours la valeur partielle en tant que paramètre.

Vous pouvez utiliser votre propre NLU pour gérer toutes les entrées utilisateur pour une action. Par exemple, vous souhaitez peut-être que votre action réponde à tous les scénarios de non-correspondance lors d'une conversation. Pour vous assurer de capturer toutes les entrées utilisateur, créez un intent avec le type de texte de forme libre. Toutefois, vous devez éviter d'utiliser des intents personnalisés pour remplacer le comportement sans correspondance par défaut de l'Assistant, car cela pourrait avoir un impact négatif sur la capacité des utilisateurs à passer d'une action à l'autre.

Lorsque vous créez un intent personnalisé dans la console Actions, Actions Builder suggère des intents système qui peuvent avoir le même rôle que votre intent utilisateur. Pour en savoir plus sur les intents système, reportez-vous à la section suivante.

Intents système

L'Assistant associe les intents système en fonction des événements système standards. Ces événements peuvent avoir un modèle de langage défini par le système, comme les utilisateurs qui disent "pause"pour suspendre le lecteur multimédia, ou n'avoir aucun modèle linguistique, comme les utilisateurs qui ne fournissent aucune entrée. Étant donné que ces intents sont fournis par l'Assistant, vous n'avez pas à vous soucier de la mise en correspondance, mais uniquement de la manière de gérer les intents.

Les intents système remplacent également la nécessité de créer des intents utilisateur pour les actions souvent requises, telles que YES et NO. Les intents système sont entraînés pour tous les paramètres régionaux, ce qui vous permet de mettre en œuvre plus facilement une expérience cohérente pour vos utilisateurs dans plusieurs langues. Les intents système peuvent également être définis en tant qu'intents globaux.

Les intents système sont associés à une version. Vous pouvez utiliser une version spécifique d'un intent système tant qu'elle est compatible avec l'Assistant. Si une action utilise une version non compatible d'un intent système, cet intent est automatiquement mis à jour vers une version compatible.

Liste des intents

Intention Description
actions.intent.MAIN Chaque projet Actions doit contenir cet appel principal par défaut, qui est lié à votre nom à afficher. Les utilisateurs disent des expressions comme Ok Google, parle à <nom à afficher> pour appeler l'action.

actions.intent.NO_MATCH_1

actions.intent.NO_MATCH_2

actions.intent.NO_MATCH_FINAL

Ces intents sont mis en correspondance lorsque l'utilisateur dit quelque chose qui ne peut pas être mis en correspondance avec un intent dans votre action. Vous pouvez définir des invitations individuelles et un message de sortie dans l'intent final.

actions.intent.NO_INPUT_1

actions.intent.NO_INPUT_2

actions.intent.NO_INPUT_FINAL

Ces intents sont mis en correspondance en l'absence d'entrée de l'utilisateur au bout de huit secondes. Vous pouvez définir des invitations individuelles pour chaque intent et un message de sortie dans l'intent final.

actions.intent.CANCEL Cet intent est mis en correspondance lorsque l'utilisateur souhaite quitter vos actions pendant une conversation, par exemple lorsqu'il dit Je souhaite quitter.
actions.intent.MEDIA_STATUS_FINISHED Cet intent est mis en correspondance et envoyé à votre action lorsqu'un utilisateur lit un contenu multimédia ou passe à l'élément suivant.
actions.intent.MEDIA_STATUS_PAUSED Cet intent est mis en correspondance et envoyé à votre action lorsqu'un utilisateur met la lecture multimédia en pause dans une réponse multimédia.
actions.intent.MEDIA_STATUS_STOPPED Cet intent est mis en correspondance et envoyé à votre action lorsqu'un utilisateur arrête ou quitte la lecture de contenus multimédias à partir d'une réponse multimédia.
actions.intent.MEDIA_STATUS_FAILED Cet intent est mis en correspondance et envoyé à votre action lorsque la lecture du lecteur d'une réponse multimédia échoue.
actions.intent.YES

Cet intent est mis en correspondance lorsqu'un utilisateur fournit une réponse positive à votre action.

actions.intent.NO

Cet intent est mis en correspondance lorsqu'un utilisateur fournit une réponse négative à votre action.

actions.intent.REPEAT

Cet intent est mis en correspondance lorsqu'un utilisateur demande à l'action de répéter la dernière réponse. Les requêtes de répétition sont automatiquement gérées par l'Assistant si l'intent système n'est pas activé dans l'agent. L'activation de cet intent système vous permet de modifier la manière dont les requêtes répétées sont traitées, ainsi que les réponses.

actions.intent.PLAY_GAME Cet intent est mis en correspondance lorsqu'un utilisateur demande à jouer à un jeu. Cet intent vous permet d'activer un appel implicite (sans appel de votre nom à afficher) fourni par Actions on Google.

Ajouter la prise en charge d'autres langues

Certains intents système, tels que YES, NO et NO_MATCH, ne sont disponibles qu'en anglais.Pour permettre la prise en charge d'autres langues, vous devez créer des intents utilisateur correspondant à ces intents système. Vos nouveaux intents doivent être gérés dans votre code de la même manière que les intents système que vous avez implémentés.

Par exemple, supposons que vous développiez une nouvelle action et que vous ayez implémenté l'intent système YES. L'intent système YES n'est disponible qu'en anglais, mais vous souhaitez également que votre application prenne en charge les interactions en allemand et en japonais. Pour accepter les langues supplémentaires, vous devez créer un intent qui inclut des expressions d'entraînement pour l'allemand et le japonais, puis implémenter le traitement que vous avez utilisé pour l'intent système YES.

Découvrez comment créer des intents utilisateur.

Découvrez comment localiser vos intents utilisateur.

Rendement en cas de non-correspondance

Lorsque la réponse d'un utilisateur ne correspond pas à l'un de vos intents, l'Assistant tente de gérer l'entrée. Ce comportement aide les utilisateurs à modifier les actions au cours d'une conversation. Par exemple, un utilisateur demande "Quels sont les films à l'affiche cette semaine ?", puis change le contexte en cours de conversation: "Quel temps fera-t-il demain ?". Dans cet exemple, étant donné que "Quel temps fait-il demain ?" n'est pas une réponse valide à la conversation déclenchée par l'invite initiale, l'Assistant tente automatiquement de gérer la correspondance et de déplacer l'utilisateur dans une conversation appropriée.

Si l'Assistant ne trouve aucune action appropriée correspondant à l'entrée utilisateur, il continue dans le contexte de votre action.

Étant donné que l'Assistant peut interrompre votre action pour répondre à un scénario de non-correspondance valide, n'utilisez pas l'intent système NO_MATCH pour répondre aux requêtes des utilisateurs. Vous ne devez utiliser que l'intent NO_MATCH pour renvoyer l'utilisateur.