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é.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
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.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Storage, Translation, and Workflows APIs:
gcloud services enable storage.googleapis.com
translate.googleapis.com workflows.googleapis.com - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
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.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Storage, Translation, and Workflows APIs:
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
Étant donné que 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 de traduction AutoML autre que celui par défaut, assurez-vous qu'il se trouve au même emplacement que l'appel du 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 gcloud storage buckets create gs://${BUCKET_INPUT}
Créez deux fichiers en anglais et importez-les dans le bucket d'entrée :
echo "Hello World!" > file1.txt gcloud storage cp file1.txt gs://${BUCKET_INPUT} echo "Workflows connectors simplify calling services." > file2.txt gcloud storage 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 :
gcloud storage 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 :
gcloud storage ls gs://PROJECT_ID-output-files-TIMESTAMP/** --recursive
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 :
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
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 :
gcloud storage rm gs://BUCKET_NAME --recursive
où
BUCKET_NAME
correspond au nom du bucket à supprimer. Exemple :my-bucket
La réponse est semblable à ce qui suit :
Removing gs://my-bucket/...
Étape suivante
- 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.