Questo tutorial mostra come creare un flusso di lavoro che utilizza il connettore dell'API Cloud Translation per tradurre i file in altre lingue in modalità batch asincrona. In questo modo viene fornito un output in tempo reale durante l'elaborazione degli input.
Obiettivi
In questo tutorial, imparerai a:
- Crea un bucket Cloud Storage di input.
- Crea due file in inglese e caricali nel bucket di input.
- Crea un flusso di lavoro che utilizzi il connettore dell'API Cloud Translation per tradurre il due file in francese e spagnolo e salva i risultati in un bucket di output.
- Esegui il deployment e il flusso di lavoro per orchestrare l’intero processo.
Costi
In questo documento utilizzi i seguenti componenti fatturabili di Google Cloud:
Per generare una stima dei costi basata sull'utilizzo previsto,
utilizza il Calcolatore prezzi.
Prima di iniziare
I vincoli di sicurezza definiti dalla tua organizzazione potrebbero impedirti di completare i passaggi seguenti. Per informazioni sulla risoluzione dei problemi, vedi Sviluppare applicazioni in un ambiente Google Cloud vincolato.
- 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 - Aggiorna i componenti gcloud:
gcloud components update
- Accedi utilizzando il tuo account:
gcloud auth login
- Imposta la località predefinita utilizzata in questo tutorial:
gcloud config set workflows/location us-central1
Poiché questo tutorial utilizza il modello AutoML Translation predefinito, si trova in
us-central1
, devi impostare la località suus-central1
.Se utilizzi un modello AutoML Translation o un glossario diverso dal per impostazione predefinita, assicurati che risieda nello stesso location come chiamata al connettore; altrimenti viene restituito un errore
INVALID_ARGUMENT (400)
. Per maggiori dettagli, consulta il metodo batchTranslateText.
Crea un bucket Cloud Storage e i file di input
Puoi utilizzare Cloud Storage per archiviare oggetti. Gli oggetti sono immutabili dati costituiti da un file di qualsiasi formato e archiviati in container chiamati bucket.
Crea un bucket Cloud Storage in cui inserire i file da tradurre:
BUCKET_INPUT=${GOOGLE_CLOUD_PROJECT}-input-files gcloud storage buckets create gs://${BUCKET_INPUT}
Crea due file in inglese e caricali nel bucket di input:
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}
Esegui il deployment e il flusso di lavoro
Un flusso di lavoro è costituito da una serie di passaggi descritti utilizzando Sintassi di Workflows, che può essere scritta in formato YAML o JSON formato. Questa è la definizione del flusso di lavoro. Dopo aver creato un flusso di lavoro, e renderlo disponibile per l'esecuzione.
Crea un file di testo con il nome file
workflow.yaml
e con quanto segue contenuti:Il flusso di lavoro assegna le variabili, crea un bucket di output e avvia la traduzione dei file, salvando i risultati nel bucket di output.
Dopo aver creato il flusso di lavoro, esegui il deployment:
gcloud workflows deploy batch-translation --source=workflow.yaml
Esegui il flusso di lavoro:
gcloud workflows execute batch-translation
Per visualizzare lo stato del flusso di lavoro, puoi eseguire il comando restituito. Ad esempio:
gcloud workflows executions describe eb4a6239-cffa-4672-81d8-d4caef7d8424 / --workflow batch-translation / --location us-central1
Il flusso di lavoro deve essere
ACTIVE
. Dopo alcuni minuti, i file tradotti (in francese e spagnolo) vengono caricati nel bucket di output.
Elenca gli oggetti nel bucket di output
Puoi confermare che il flusso di lavoro ha funzionato come previsto elencando gli oggetti in del bucket di output.
Recupera il nome del bucket di output:
gcloud storage ls
L'output è simile al seguente:
gs://PROJECT_ID-input-files/ gs://PROJECT_ID-output-files-TIMESTAMP/
Elenca gli oggetti nel bucket di output:
gcloud storage ls gs://PROJECT_ID-output-files-TIMESTAMP/** --recursive
Dopo alcuni minuti, vengono elencati i file tradotti, due ciascuno in francese e spagnolo.
Esegui la pulizia
Se hai creato un nuovo progetto per questo tutorial, elimina il progetto. Se hai utilizzato un progetto esistente e vuoi mantenerlo senza l'aggiunta delle modifiche In questo tutorial, elimina le risorse create per il tutorial.
Elimina il progetto
Il modo più semplice per eliminare la fatturazione creato per il tutorial.
Per eliminare il progetto:
- 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.
Eliminare le risorse dei tutorial
Rimuovi la configurazione predefinita di gcloud aggiunta durante la configurazione del tutorial:
gcloud config unset workflows/location
Elimina il flusso di lavoro creato in questo tutorial:
gcloud workflows delete WORKFLOW_NAME
Elimina i bucket creati in questo tutorial:
gcloud storage rm gs://BUCKET_NAME --recursive
dove
BUCKET_NAME
è il nome del bucket da eliminare. Ad esempio,my-bucket
.La risposta è simile alla seguente:
Removing gs://my-bucket/...
Passaggi successivi
- Per ulteriori informazioni su Workflows, vedi Comprensione di Workflows.
- Per ulteriori informazioni sulla sintassi di Workflows, consulta il riferimento sulla sintassi di Workflows.
- Per scoprire di più sui connettori di Workflows, consulta Informazioni sui connettori.