Migration de projets Dialogflow vers Actions Builder

En tant que développeur Dialogflow, vous pouvez migrer vos actions existantes vers Actions Builder. La nouvelle méthode accessible depuis la console pour développer des actions présente de nombreux avantages. De plus, la migration de votre projet Dialogflow existant est simple. Cette page explique comment utiliser l'outil de migration Dialogflow/Actions Builder.

Avant de suivre ce guide, vous devez consulter la présentation de la migration de Dialogflow vers Actions Builder, qui aborde les concepts importants et les différences entre Dialogflow et Actions Builder.

Fonction de l'outil de migration

L'outil de migration de Dialogflow vers Actions Builder convertit des éléments Dialogflow spécifiques, tels que des intents et des entités, pour qu'ils fonctionnent avec Action Builder.

L'outil de migration migre automatiquement les éléments Dialogflow suivants vers Actions Builder:

  • Intent d'accueil par défaut de Dialogflow, migré en tant qu'appel principal.
  • Toutes les expressions et entités d'entraînement pour chaque langue prise en charge par votre action.
  • Intents sans contexte d'entrée, qui sont migrés en tant qu'intents globaux
  • Intents avec un contexte d'entrée, qui sont migrés sous forme de scènes et d'intents
  • Les intents avec un contexte d'entrée et un remplissage d'emplacements génèrent deux scènes et un intent pour gérer la transition vers la scène avec le remplissage d'emplacements.
  • Les intents qui utilisent les événements de remplacement, de média et d'accueil Dialogflow génèrent le gestionnaire Actions Builder associé et un intent avec des phrases d'entraînement.
  • Les intents qui utilisent les entités système de date et de numéro Dialogflow génèrent les types de système Actions Builder associés.

L'outil de migration ne gère pas les éléments Dialogflow suivants:

  • Intents avec plusieurs contextes d'entrée Les scènes doivent être créées manuellement.
  • Intents qui utilisent des événements personnalisés dans Dialogflow
  • Entités système Dialogflow qui ne sont pas une date ni un nombre. Ces entités sont créées en tant que nouveaux types, mais vous devez ajouter des synonymes manuellement.
  • Code source du traitement Dialogflow Ce code n'est pas migré vers Builder en raison de différences de version de l'API.

Accéder à l'outil de migration

Pour accéder à l'outil de migration, ouvrez un projet Dialogflow dans la console Actions, puis sélectionnez Develop > Actions (Développer > Actions).

Si vous ne savez pas quel projet est utilisé dans la console Actions, accédez à la console Dialogflow et procédez comme suit:

  1. Ouvrez le projet que vous souhaitez migrer et cliquez sur l'icône Settings (Paramètres).
  2. Sous Général > ID du projet, cliquez sur le lien Action sur Google. Cette étape vous redirige vers la console Actions pour le projet concerné.
  3. Accédez à Develop > Actions (Développer > Actions), puis cliquez sur Preview migration (Prévisualiser la migration).

Parcourez les diapositives d'information, puis cliquez sur Démarrer la migration pour afficher le tableau de bord de migration.

Tableau de bord de la migration

Le tableau de bord de migration affiche les options de migration, ainsi que des informations sur les éléments qui seront migrés.

Options de migration

L'outil de migration propose deux options pour migrer votre projet Dialogflow vers Actions Builder:

  • Migrer en tant que nouveau projet (recommandé)
    • Ce paramètre conserve votre projet Dialogflow existant et en migre une copie vers un nouveau.
    • Le nom à afficher et les informations de l'annuaire restent associés au projet de production existant. Consultez le processus recommandé pour savoir comment remplacer votre projet actif par le projet migré.
  • Migrer ce projet
    • Remplace le projet Dialogflow existant et conserve le nom à afficher existant et les informations du répertoire de l'Assistant que vous avez définies pour votre projet.

Rapport de migration

Vous pouvez développer chaque section du rapport sur la migration pour afficher les détails spécifiques au projet, à savoir:

  • Éléments qui seront entièrement migrés
  • Éléments qui seront migrés, mais qui nécessiteront une configuration supplémentaire après la migration
  • Éléments qui ne seront pas migrés et qui devront être ajoutés manuellement (si nécessaire)
  • Quelles sont les fonctionnalités utilisées par votre projet Dialogflow qui ne sont pas disponibles dans Actions Builder ?

Vous pouvez également télécharger le rapport sur la migration, auquel vous pourrez vous référer lorsque vous apporterez des modifications post-migration à votre projet.

Configuration de la migration des posts

Bien que l'outil de migration facilite le transfert d'éléments importants de votre projet Dialogflow vers Actions Builder, des opérations de développement supplémentaires sont nécessaires pour configurer les transitions, les invites et les webhooks qui n'ont pas été migrés.

Mettre à jour votre flux de conversation pour utiliser des scènes

Bien que l'outil de migration génère des scènes basées sur des intents Dialogflow ayant un contexte d'entrée, il ne s'agit pas d'une relation de type un à un. Certaines scènes migrées ne seront peut-être pas adaptées dans Actions Builder avec le nouveau modèle de conversation.

Vous devrez peut-être repenser le flux de conversation en évaluant les scènes nécessaires. Selon la complexité de votre action, il peut être plus facile de supprimer certaines scènes générées si elles ne correspondent plus à votre flux de conversation.

Examiner et mettre à jour les intents globaux

Les intents Dialogflow sans contexte d'entrée sont migrés vers Actions Builder en tant qu'intents globaux. Les intents globaux sont actifs tout au long d'une conversation, ce qui signifie qu'ils peuvent être mis en correspondance à tout moment.

Les intents globaux peuvent également être utilisés pour rediriger les utilisateurs vers des flux spécifiques lorsqu'ils appellent votre action. Il est important de vérifier si les intents globaux générés doivent être actifs et accessibles aux utilisateurs dans le champ d'application global. Pour remplacer les intents globaux par des intents normaux, cliquez sur l'intent et définissez l'option de gestion globale des intents sur NO.

Regrouper les intents avec des phrases d'entraînement similaires

Si certains de vos intents partagent des phrases d'entraînement très similaires, vous devez les regrouper dans un seul intent générique. Cela permet d'améliorer la précision de la mise en correspondance des intents.

Par exemple, l'intent A comporte les phrases d'entraînement suivantes:

  • "OK, je veux m'assurer qu'il est prêt"
  • "Très bien, tout est prêt"
  • "C'est parti"

L'intent B comporte les phrases d'entraînement suivantes:

  • "OK, je veux m'assurer qu'il est prêt"
  • "D'accord, je pense que je suis prêt."

Étant donné que les phrases d'entraînement entre les deux intents sont similaires, consolidez l'Intent A et l'Intent B dans un intent plus générique (Intent C), puis supprimez les originaux. Utilisez l'intent C dans les scènes faisant référence à l'intent A ou à l'intent B.

L'intent C comporte les phrases d'entraînement suivantes:

  • "OK, je veux m'assurer qu'il est prêt"
  • "Très bien, tout est prêt"
  • "C'est parti"
  • "D'accord, je pense que je suis prêt."

Mettre à jour la gestion des événements

Pour les intents qui utilisent certains événements (fallback, media et welcome) dans Dialogflow, l'outil de migration crée un intent système associé pour cet événement. Si le même intent Dialogflow comporte des phrases d'entraînement, un intent supplémentaire est créé avec ces mêmes phrases.

Pour terminer la configuration des événements dans Actions Builder, vous devez ajouter des gestionnaires de webhooks ainsi que des transitions, si nécessaire.

Ajouter des intents système pour gérer les intents de remplacement

Dans Dialogflow, les intents de remplacement gèrent les cas où un intent ne reconnaît pas l'entrée utilisateur. Actions Builder utilise les intents système NO_MATCH et NO_INPOUT pour prendre en compte ces cas de figure.

Les intents système NO_MATCH et NO_INPUT peuvent être ajoutés à une scène jusqu'à trois fois. Par exemple, ajouter trois intents NO_MATCH à une scène vous permet de répondre progressivement avec plus de détails sur ce que votre action recherche dans la réponse de l'utilisateur.

Il est important d'ajouter des intents système lorsque votre projet Dialogflow a utilisé des intents de remplacement. NO_MATCH et NO_INPUT sont des exemples d'intents système Actions Builder couramment utilisés. Pour en savoir plus sur ces intents système, consultez la section Intents système.

Mettre à jour votre stratégie de traitement des commandes

Le transfert de votre code de traitement Dialogflow vers Actions Builder est l'une des étapes les plus importantes du processus de migration. Bien que les concepts des appels de webhook et du traitement général restent les mêmes, Actions Builder propose des options permettant de réutiliser des fonctions et ajoute des opportunités de déclenchement de webhook.

Dans cette optique, vous pouvez envisager de revoir le traitement de votre projet pour profiter des fonctionnalités d'Actions Builder:

  • Les noms de gestionnaires de webhooks personnalisés signifient que vous pouvez appeler la même fonction de webhook à partir de plusieurs parties de différentes scènes.
  • Les appels de webhook peuvent être effectués en fonction de l'entrée d'une scène, d'une validation conditionnelle, du remplissage d'emplacements et d'une correspondance d'intent. Un contrôle plus précis du moment et du lieu des appels webhook, ce qui permet de mettre en place des solutions de traitement plus créatives.

Lorsque vous mettez à jour votre code de fulfillment, déterminez quand et où vous devez déclencher des appels de webhook. Vous pouvez activer les webhooks dans plusieurs parties d'une scène à l'aide de l'option Appeler votre webhook. Pour en savoir plus sur l'activation des webhooks, consultez la section sur les webhooks du guide de migration du Fulfillment.

Exemples de migration

Les projets migrés de Dialogflow vers Actions Builder présentent des structures très différentes en raison des différences au niveau du modèle conversationnel utilisé par chaque outil. L'utilisation de scènes, d'invites et de transitions dans Actions Builder, ainsi que de fonctionnalités telles que les gestionnaires de webhooks réutilisables, différencie considérablement le code d'un projet migré de celui d'origine.

La comparaison des projets migrés peut vous aider à comprendre le type et le champ d'application des modifications requises lors de la migration de Dialogflow vers Actions Builder. Vous pouvez consulter les exemples de projets migrés suivants pour comparer les implémentations:

Exemple de projet Code Dialogflow Code Actions Builder
Faits concernant Google Code du projet Code du projet
Transactions Code du projet Code du projet
Associer des comptes Code du projet Code du projet

Cette section décrit le processus de migration recommandé et vous permet de conserver votre nom à afficher (appel), vos informations d'annuaire et votre historique d'analyse.

Ce processus implique de travailler avec deux projets Actions Builder différents, qui sont tous deux migrés à partir du même projet Dialogflow. Par souci de clarté, ces projets sont désignés comme suit:

  • expérimental: ce projet permet de configurer et de tester votre migration.
  • original: ce projet est actuellement en ligne et dessert les utilisateurs.

Pour migrer votre projet, procédez comme suit:

  1. Créez une sauvegarde de votre projet Dialogflow à l'aide de la fonctionnalité d'exportation de Dialogflow.
  2. Accédez à la console Actions, puis ouvrez le projet que vous souhaitez migrer.
  3. Accédez à Develop > Actions (Développer > Actions), puis cliquez sur Preview migration (Prévisualiser la migration).
  4. Cliquez sur les diapositives d'information, puis sur Démarrer la migration.
  5. Sélectionnez Migrer en tant que nouveau projet.
  6. Consultez le rapport sur la migration et téléchargez-le pour le consulter ultérieurement.
  7. Cliquez sur Transférer.
  8. Attribuez un nom à votre projet "expérimental", puis cliquez sur Créer un projet. Notez l'ID de projet.
  9. Effectuez toutes les configurations nécessaires après la migration et vérifiez que votre action fonctionne comme prévu.
  10. Utilisez la CLI gactions pour extraire le brouillon de votre projet "expérimental".

    gactions pull --project-id experimental-project-id

  11. Rouvrez votre projet Dialogflow "d'origine" dans la console Actions.

  12. Accédez à Develop > Actions (Développer > Actions), puis cliquez sur Preview migration (Prévisualiser la migration).

  13. Sélectionnez Migrer ce projet.

  14. Cliquez sur Transférer.

  15. Cliquez sur l'icône Plus > Paramètres du projet et notez l'ID du projet.

  16. Sur votre système local, ouvrez le fichier settings.yaml du projet "expérimental" que vous avez récupéré et remplacez projectId par l'ID du projet "d'origine".

  17. Utilisez la CLI gactions pour transférer le brouillon de votre projet enregistré localement.

    gactions push

  18. Suivez la procédure de publication via les versions alpha ou bêta, ou publiez votre action en production.