Ce tutoriel explique comment créer un workflow qui utilise le connecteur d'API Cloud Translation pour traduire des fichiers dans d'autres langues en mode de traitement par lot asynchrone. Cette méthode fournit une sortie en temps réel, au fur et à mesure du traitement des entrées.
Objectifs
Au cours de ce tutoriel, vous allez :
- Créez un bucket Cloud Storage d'entrée.
- Créez deux fichiers en anglais et importez-les dans le bucket d'entrée.
- Créez un workflow qui utilise le connecteur de l'API Cloud Translation pour traduire les deux fichiers en français et en espagnol, puis enregistre les résultats dans un bucket de sortie.
- Déployez et exécutez le workflow pour orchestrer l'ensemble du processus.
Coûts
Dans ce document, vous utilisez les composants facturables suivants de Google Cloud :
Obtenez une estimation des coûts en fonction de votre utilisation prévue à l'aide du simulateur de coût.
Avant de commencer
Les contraintes de sécurité définies par votre organisation peuvent vous empêcher d'effectuer les étapes suivantes. Pour obtenir des informations de dépannage, consultez la page Développer des applications dans un environnement Google Cloud limité.
- Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
- Installez Google Cloud CLI.
-
Pour initialiser gcloudCLI, exécutez la commande suivante :
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Vérifiez que la facturation est activée pour votre projet Google Cloud.
-
Activer les API Cloud Storage, Translation, and Workflows :
gcloud services enable storage.googleapis.com
translate.googleapis.com workflows.googleapis.com - Installez Google Cloud CLI.
-
Pour initialiser gcloudCLI, exécutez la commande suivante :
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Vérifiez que la facturation est activée pour votre projet Google Cloud.
-
Activer les API Cloud Storage, Translation, and Workflows :
gcloud services enable storage.googleapis.com
translate.googleapis.com workflows.googleapis.com - Mettez à jour les composants gcloud:
gcloud components update
- Connectez-vous à votre compte :
gcloud auth login
- Définissez l'emplacement par défaut utilisé dans ce tutoriel :
gcloud config set workflows/location us-central1
Comme ce tutoriel utilise le modèle AutoML Translation par défaut qui se trouve dans
us-central1
, vous devez définir l'emplacement surus-central1
.Si vous utilisez un modèle ou un glossaire AutoML Translation autre que celui par défaut, assurez-vous qu'ils se trouvent au même emplacement que l'appel au connecteur. Sinon, une erreur
INVALID_ARGUMENT (400)
est renvoyée. Pour en savoir plus, consultez la méthode batchTranslateText.
Créer un bucket et des fichiers Cloud Storage d'entrée
Vous pouvez utiliser Cloud Storage pour stocker des objets. Les objets sont des données immuables. Ils sont constitués d'un fichier dans n'importe quel format et stockés dans des conteneurs appelés "buckets".
Créez un bucket Cloud Storage pour stocker les fichiers à traduire :
BUCKET_INPUT=${GOOGLE_CLOUD_PROJECT}-input-files gsutil mb gs://${BUCKET_INPUT}
Créez deux fichiers en anglais et importez-les dans le bucket d'entrée :
echo "Hello World!" > file1.txt gsutil cp file1.txt gs://${BUCKET_INPUT} echo "Workflows connectors simplify calling services." > file2.txt gsutil cp file2.txt gs://${BUCKET_INPUT}
Déployer et exécuter le workflow
Un workflow est constitué d'une série d'étapes décrites à l'aide de la syntaxe Workflows, qui peut être écrite au format YAML ou JSON. Il s'agit de la définition du workflow. Après avoir créé un workflow, vous pouvez le déployer pour le rendre disponible en exécution.
Créez un fichier texte avec le nom de fichier
workflow.yaml
et le contenu suivant :Le workflow attribue des variables, crée un bucket de sortie et lance la traduction des fichiers, en enregistrant les résultats dans le bucket de sortie.
Une fois le workflow créé, déployez-le :
gcloud workflows deploy batch-translation --source=workflow.yaml
Exécutez le workflow :
gcloud workflows execute batch-translation
Pour afficher l'état du workflow, vous pouvez exécuter la commande renvoyée. Exemple :
gcloud workflows executions describe eb4a6239-cffa-4672-81d8-d4caef7d8424 / --workflow batch-translation / --location us-central1
Le workflow doit être
ACTIVE
. Après quelques minutes, les fichiers traduits (en français et en espagnol) sont importés dans le bucket de sortie.
Lister les objets du bucket de sortie
Vous pouvez vérifier que le workflow a fonctionné comme prévu en listant les objets dans votre bucket de sortie.
Récupérez le nom de votre bucket de sortie :
gsutil ls
Le résultat ressemble à ce qui suit :
gs://PROJECT_ID-input-files/ gs://PROJECT_ID-output-files-TIMESTAMP/
Listez les objets d'un bucket :
gsutil ls -r gs://PROJECT_ID-output-files-TIMESTAMP/**
Après quelques minutes, les fichiers traduits, deux de chaque en français et en espagnol, sont listés.
Effectuer un nettoyage
Si vous avez créé un projet pour ce tutoriel, supprimez-le. Si vous avez utilisé un projet existant et que vous souhaitez le conserver sans les modifications du présent tutoriel, supprimez les ressources créées pour ce tutoriel.
Supprimer le projet
Le moyen le plus simple d'empêcher la facturation est de supprimer le projet que vous avez créé pour ce tutoriel.
Pour supprimer le projet :
- Dans la console Google Cloud, accédez à la page Gérer les ressources.
- Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.
- Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.
Supprimer les ressources du tutoriel
Supprimez les configurations gcloud par défaut que vous avez ajoutées lors de la configuration du tutoriel :
gcloud config unset workflows/location
Supprimez le workflow créé dans ce tutoriel :
gcloud workflows delete WORKFLOW_NAME
Supprimez le workflow créé dans ce tutoriel :
gsutil rm -r gs://BUCKET_NAME
où
BUCKET_NAME
correspond au nom du bucket à supprimer. Exemple :my-bucket
La réponse est semblable à ce qui suit :
Removing gs://my-bucket/...
Étapes suivantes
- Pour en savoir plus sur Workflows, consultez la page Comprendre Workflows.
- Pour en savoir plus sur la syntaxe Workflows, consultez la documentation de référence sur la syntaxe Workflows.
- Pour en savoir plus sur les connecteurs Workflows, consultez l'article Comprendre les connecteurs.