Vous pouvez créer plusieurs versions des flux, des playbooks et des outils de votre agent, et les déployer dans des environnements de diffusion distincts.
Lorsque vous modifiez un flux, un playbook ou un outil, vous modifiez le brouillon. Vous pouvez à tout moment enregistrer le brouillon en tant que version. Une version est un instantané immuable des données de votre flux, playbook ou outil, ainsi que des données d'agent associées. Pour les flux, cela inclut les intents, les entités, les webhooks, les pages et les groupes de routes. Pour les playbooks, cela n'inclut que les exemples.
Lorsque vous enregistrez un brouillon, il est déployé dans l'environnement par défaut. Lorsque vous créez des versions spécifiques, vous pouvez les déployer dans des environnements personnalisés. Vous pouvez créer différents environnements personnalisés, par exemple :
- test
- développement
- production
Vous pouvez également créer des webhooks spécifiques à l'environnement afin d'isoler votre environnement de production des environnements de développement et de test.
Bonnes pratiques concernant le trafic de production
Utilisez toujours des versions pour le trafic de production
Un brouillon est mis à jour chaque fois qu'un développeur de votre équipe apporte une modification. Il est possible de casser un brouillon involontairement, en particulier si plusieurs personnes disposent d'un accès en écriture à l'agent. De plus, un brouillon récemment modifié peut ne pas être cohérent avec le modèle entraîné, car l'entraînement peut être retardé ou nécessiter une exécution manuelle.
Vous devez toujours utiliser des versions pour votre trafic de production. Les ressources brouillons doivent être testées avant d'être promues en versions en production. Vous pouvez effectuer un rollback vers une version précédente si des problèmes sont détectés.
Toujours utiliser des webhooks spécifiques à l'environnement
Lorsque vous mettez à jour votre agent, vous devez souvent effectuer des mises à jour interdépendantes de votre code de webhook. Lors du développement et du test de ces modifications, vous souhaitez :
- Pour tester les mises à jour de l'agent par rapport aux mises à jour du code du webhook.
- Pour éviter de déployer votre code de webhook en production avant d'avoir terminé les tests.
L'utilisation de webhooks spécifiques à l'environnement permet d'atteindre ces deux objectifs.
Prendre en compte les erreurs d'agent possibles lors du changement de version
Si vous modifiez une version dans votre environnement de production alors que des sessions sont actives, cela peut entraîner des erreurs d'agent pour certaines sessions actives. Ces erreurs peuvent se produire si les versions précédente et nouvelle sont incohérentes entre elles d'une manière qui perturbe l'état de la session. Par conséquent, vous devez prévoir de changer de version pendant les temps d'arrêt ou les heures creuses.
Charger une version en tant que brouillon
Vous pouvez à tout moment charger une version en tant que brouillon afin qu'elle soit modifiable et utilisée par l'environnement par défaut.
Le chargement d'une version de flux dans un brouillon peut mettre à jour plusieurs ressources dans un agent, y compris les ressources au niveau de l'agent, telles que les intents et les entités. Lorsque vous chargez une version dans un brouillon avec la console ou l'API, vous pouvez choisir d'écraser ou non les ressources au niveau de l'agent.
De même, la restauration d'une version de playbook en tant que brouillon écrasera le playbook existant en tant que brouillon et ses exemples. La restauration d'un outil écrasera l'outil existant dans le brouillon.
Gérer les versions
Pour gérer vos versions :
Console
Pour répertorier les versions actuelles d'un flux, procédez comme suit :
- Ouvrez la console Dialogflow CX.
- Sélectionnez votre projet Google Cloud .
- Sélectionnez votre agent.
- Cliquez sur l'onglet Ressources partagées.
- Cliquez sur Versions.
- Les flux d'agent sont répertoriés. Sélectionnez-en un.
- Les versions sont répertoriées pour le flux sélectionné.
Pour lister les versions actuelles d'un playbook :
- Ouvrez la console Dialogflow CX.
- Sélectionnez votre projet Google Cloud .
- Sélectionnez votre agent.
- Sélectionnez le playbook.
- Cliquez sur Historique des versions.
- Cliquez sur Afficher l'historique des versions.
- Les versions sont listées pour le playbook sélectionné.
Pour lister les versions actuelles d'un outil :
- Ouvrez la console Dialogflow CX.
- Sélectionnez votre projet Google Cloud .
- Sélectionnez votre agent.
- Sélectionnez l'outil
- Cliquez sur Historique des versions.
- Cliquez sur Afficher l'historique des versions.
- Les versions sont listées pour l'outil sélectionné.
Les informations suivantes s'affichent pour chaque ressource :
- Nom à afficher : nom à afficher pour la version.
- ID de version : ID de la version.
- Type NLU : type NLU pour la version de flux.
- Horodatage de création : date et heure de création de la version.
- État : état de l'entraînement. Une version de flux n'est pas prête à être utilisée tant que l'état n'est pas marqué comme Prêt.
Pour créer une version, cliquez sur le bouton Créer, puis indiquez le nom à afficher et la description de la version.
Pour charger une version de flux spécifique en tant que brouillon de flux, procédez comme suit :
- Maintenez le pointeur sur une ligne de version.
- Cliquez sur le bouton d'option more_vert.
- Cliquez sur l'option Charger dans le brouillon.
- Une option permet d'écraser les données au niveau de l'agent lors du chargement.
Pour supprimer une version de flux spécifique, procédez comme suit :
- Maintenez le pointeur sur une ligne de version.
- Cliquez sur le bouton d'option more_vert.
- Cliquez sur l'option Supprimer la version.
API
Consultez les méthodes pour le type Version.
Sélectionnez un protocole et une version pour la référence de version :
| Protocole | V3 | V3beta1 |
|---|---|---|
| REST | Ressource de version | Ressource de version |
| RPC | Interface de version | Interface de version |
| C++ | VersionsClient | Non disponible |
| C# | VersionsClient | Non disponible |
| Go | VersionsClient | Non disponible |
| Java | VersionsClient | VersionsClient |
| Node.js | VersionsClient | VersionsClient |
| PHP | Non disponible | Non disponible |
| Python | VersionsClient | VersionsClient |
| Ruby | Non disponible | Non disponible |
Comparer les versions de flux
Une fois que vous avez créé des versions de flux, vous pouvez utiliser l'outil de comparaison des versions pour comparer les versions de flux ou la version de brouillon. Cette fonctionnalité n'est pas disponible pour les playbooks. Pour comparer les versions, procédez comme suit :
Console
- Maintenez le pointeur sur une ligne de version.
- Cliquez sur le bouton d'option more_vert.
- Cliquez sur l'option Comparer les versions.
- Sélectionnez une autre version de flux ou un autre flux à utiliser pour la comparaison.
- Un comparatif est affiché.
API
Consultez la méthode compareVersions pour le type Version.
Sélectionnez un protocole et une version pour la référence de version :
| Protocole | V3 | V3beta1 |
|---|---|---|
| REST | Ressource de version | Ressource de version |
| RPC | Interface de version | Interface de version |
| C++ | VersionsClient | Non disponible |
| C# | VersionsClient | Non disponible |
| Go | VersionsClient | Non disponible |
| Java | VersionsClient | VersionsClient |
| Node.js | VersionsClient | VersionsClient |
| PHP | Non disponible | Non disponible |
| Python | VersionsClient | VersionsClient |
| Ruby | Non disponible | Non disponible |
Gérer les environnements
Pour gérer vos environnements d'agent, procédez comme suit :
Console
Pour répertorier les environnements actuels pour un agent, procédez comme suit :
- Ouvrez la console Dialogflow CX.
- Sélectionnez votre projet Google Cloud .
- Sélectionnez votre agent.
- Cliquez sur l'onglet Ressources partagées.
- Cliquez sur Environnements.
- Les environnements d'agent sont répertoriés.
Pour créer un nouvel environnement, cliquez sur le bouton Créer et fournissez les informations.
Pour sélectionner des versions de flux, de playbook et d'outil, et configurer un environnement, cliquez sur un environnement et fournissez des informations.
Pour afficher l'historique des modifications d'un environnement, cliquez sur le bouton d'historique history situé à droite d'un environnement dans la liste.
Pour copier un nom de ressource d'environnement incluant l'ID d'environnement, cliquez sur le bouton de copie content_copy situé à droite d'un environnement dans la liste.
Pour supprimer un environnement, cliquez sur le bouton de suppression delete situé à droite d'un environnement dans la liste.
API
Consultez les méthodes pour le type Environment.
Sélectionnez un protocole et une version pour la référence de l'environnement :
| Protocole | V3 | V3beta1 |
|---|---|---|
| REST | Ressource d'environnement | Ressource d'environnement |
| RPC | Interface de l'environnement | Interface de l'environnement |
| C++ | EnvironmentsClient | Non disponible |
| C# | EnvironmentsClient | Non disponible |
| Go | EnvironmentsClient | Non disponible |
| Java | EnvironmentsClient | EnvironmentsClient |
| Node.js | EnvironmentsClient | EnvironmentsClient |
| PHP | Non disponible | Non disponible |
| Python | EnvironmentsClient | EnvironmentsClient |
| Ruby | Non disponible | Non disponible |
Spécifier l'environnement pour les appels de session
À l'aide du simulateur de la console ou de l'API, vous pouvez spécifier un environnement lorsque vous effectuez des appels de session d'exécution. Si aucun environnement n'est spécifié, l'environnement par défaut est utilisé.
Console
Lorsque vous utilisez le simulateur de la console, sélectionnez l'option Tester l'agent dans l'environnement, puis sélectionnez un environnement.
API
Pour spécifier un environnement pour les appels REST detectIntent, streamingDetectIntent, matchIntent et d'entité de session, modifiez l'URL en insérant environments/environment-id entre les paramètres de chemin d'accès agent et sessions.
Par exemple, l'URL suivante utilise l'ID d'environnement 6db409d7-57ac-41d7-83bd-89b8768e2745 :
https://dialogflow.googleapis.com/v3/projects/my-project-id/locations/us/agents/my-agent-id/environments/6db409d7-57ac-41d7-83bd-89b8768e2745/sessions/my-session-id:detectIntent
Spécifier les versions de flux pour les appels de session
À l'aide du simulateur de la console ou de l'API, vous pouvez spécifier un ensemble de versions de flux lorsque vous effectuez des appels de session d'exécution. Les versions de flux sélectionnées ne doivent pas nécessairement être référencées dans un environnement.
Console
Lorsque vous utilisez le simulateur de la console, sélectionnez l'option Tester l'agent avec des versions de flux spécifiques, puis sélectionnez les versions de flux.
API
Pour spécifier des versions de flux pour les appels REST detectIntent, streamingDetectIntent, matchIntent et d'entité de session, indiquez les versions de flux choisies dans le champ query_parameters.flow_versions de la requête.