La traduzione batch consente di tradurre grandi quantità di testo (con un limite di 100 file per batch) e fino a 10 lingue di destinazione diverse in un il comando offline. Le dimensioni totali dei contenuti devono essere <= 100 milioni di punti di codice Unicode e devono utilizzare la codifica UTF-8 codifica.
Prima di iniziare
Per poter iniziare a utilizzare l'API Cloud Translation, devi avere un progetto con l'API Cloud Translation sia abilitata e devi disporre delle credenziali appropriate. Puoi anche installare librerie client per linguaggi di programmazione comuni per aiutarti a effettuare chiamate all'API. Per ulteriori informazioni, consulta la pagina Configurazione.
Autorizzazioni
Per le traduzioni batch, devi avere accesso ai bucket Cloud Storage in
oltre alle autorizzazioni di Cloud Translation.
I file di input della traduzione batch vengono letti da un bucket Cloud Storage e i file di output vengono scritti in un bucket Cloud Storage. Ad esempio, per leggere i file di input
da un bucket, devi disporre almeno delle autorizzazioni di lettura degli oggetti (fornite dal
ruolo roles/storage.objectViewer
) sul bucket. Per ulteriori informazioni
per i ruoli di Cloud Storage, consulta
documentazione.
File di input
Sono supportati solo due tipi MIME: text/html (HTML) e text/plain (.tsv e .txt).
Utilizzare un file TSV
Se un'estensione del file è TSV, può contenere una o due colonne. La prima colonna (facoltativa) è l'ID della richiesta di testo. Se la prima colonna non è presente, Google utilizza il numero di riga (a partire da 0) del file di input come ID nel file di output. La seconda colonna è il testo effettivo da tradurre. Per risultati ottimali, ogni riga deve essere inferiore o uguale a 10.000 punti di codice Unicode, altrimenti potrebbe essere restituito un errore.
Utilizzare testo o HTML
Le altre estensioni di file supportate sono file di testo (.txt) o HTML, che viene considerato come un singolo blocco di grandi dimensioni di testo.
Richiesta batch
Con una richiesta di traduzione batch, fornisci il percorso di una configurazione di input (InputConfig) contenente i contenuti che vuoi tradurre e fornire un percorso a un output posizione (OutputConfig) per la traduzione finale. Sono necessari almeno due bucket Cloud Storage diversi. Il bucket di origine include i contenuti da tradurre e il bucket di destinazione conterrà i file tradotti risultanti. La la cartella di destinazione deve essere vuota prima dell'inizio del processo di traduzione.
Durante l'elaborazione della richiesta, scriviamo i risultati nella posizione di output in tempo reale. Anche se annulli la richiesta a metà tempo, inserisci il file a livello di file di input. gli output parziali vengono ancora generati nella località Cloud Storage di output. Pertanto, il numero di caratteri tradotti viene comunque addebitato.
REST
Questo esempio mostra due file di input inviati per la traduzione.Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:batchTranslateText
Corpo JSON della richiesta:
{ "sourceLanguageCode": "en", "targetLanguageCodes": ["es", "fr"], "inputConfigs": [ { "gcsSource": { "inputUri": "gs://bucket-name-source/input-file-name1" } }, { "gcsSource": { "inputUri": "gs://bucket-name-source/input-file-name2" } } ], "outputConfig": { "gcsDestination": { "outputUriPrefix": "gs://bucket-name-destination/" } } }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-number/locations/us-central1/operations/20191107-08251564068323-5d3895ce-0000-2067-864c-001a1136fb06", "metadata": { "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateMetadata", "state": "RUNNING" } }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per ulteriori informazioni, consulta API Cloud Translation Go documentazione di riferimento.
Per autenticarti su Cloud Translation, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Translation Java.
Per autenticarti a Cloud Translation, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni per la configurazione di Node.js nel Guida rapida di Cloud Translation con librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Translation Node.js.
Per autenticarti su Cloud Translation, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Translation Python.
Per autenticarti su Cloud Translation, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di Cloud Translation per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento di Cloud Translation per PHP.
Ruby: Segui le Istruzioni per la configurazione di Ruby Nella pagina delle librerie client e poi visita Documentazione di riferimento di Cloud Translation per Ruby.
Invio di una richiesta batch utilizzando un modello AutoML
Puoi utilizzare un modello personalizzato per le richieste batch. Esistono vari scenari in cui utilizzate più lingue di destinazione.
Specificare un modello AutoML per la lingua di destinazione
REST
Questo esempio mostra come specificare un modello personalizzato per la lingua di destinazione.Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:batchTranslateText
Corpo JSON della richiesta:
{ "models":{"es":"projects/PROJECT_NUMBER_OR_ID/locations/us-central1/models/model-id"}, "sourceLanguageCode": "en", "targetLanguageCodes": ["es"], "inputConfigs": [ { "gcsSource": { "inputUri": "gs://bucket-name-source/input-file-name1" } }, { "gcsSource": { "inputUri": "gs://bucket-name-source/input-file-name2" } } ], "outputConfig": { "gcsDestination": { "outputUriPrefix": "gs://bucket-name-destination/" } } }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-number/locations/us-central1/operations/20190725-08251564068323-5d3895ce-0000-2067-864c-001a1136fb06", "metadata": { "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateMetadata", "state": "RUNNING" } }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Translation Go.
Per autenticarti su Cloud Translation, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per ulteriori informazioni, consulta API Cloud Translation Java documentazione di riferimento.
Per autenticarti su Cloud Translation, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni per la configurazione di Node.js nel Guida rapida di Cloud Translation con librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Translation Node.js.
Per autenticarti a Cloud Translation, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni per la configurazione di Python nel Guida rapida di Cloud Translation con librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Translation Python.
Per autenticarti a Cloud Translation, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di Cloud Translation per .NET.
PHP: segui le istruzioni di configurazione di PHP nella pagina delle librerie client e poi consulta la documentazione di riferimento di Cloud Translation per PHP.
Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e poi consulta la documentazione di riferimento di Cloud Translation per Ruby.
Specificare i modelli AutoML per più lingue di destinazione
REST
Se hai più lingue di destinazione, puoi specificare un modello personalizzato per ciascuna lingua di destinazione.Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:batchTranslateText
Corpo JSON della richiesta:
{ "models":{ "es":"projects/PROJECT_NUMBER_OR_ID/locations/us-central1/models/model-id1", "fr":"projects/PROJECT_NUMBER_OR_ID/locations/us-central1/models/model-id2"}, "sourceLanguageCode": "en", "targetLanguageCodes": ["es", "fr"], "inputConfigs": [ { "gcsSource": { "inputUri": "gs://bucket-name-source/input-file-name1" } }, { "gcsSource": { "inputUri": "gs://bucket-name-source/input-file-name2" } } ], "outputConfig": { "gcsDestination": { "outputUriPrefix": "gs://bucket-name-destination/" } } }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-number/locations/us-central1/operations/20191105-08251564068323-5d3895ce-0000-2067-864c-001a1136fb06", "metadata": { "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateMetadata", "state": "RUNNING" } }
Specificare un modello AutoML per una lingua di destinazione e non per altre
Puoi specificare un modello personalizzato per una determinata lingua di destinazione senza specificare un modello per le altre lingue di destinazione. Utilizzando il codice per la
specifica di modelli personalizzati per più lingue di destinazione, è sufficiente modificare il
campo models
per specificare la lingua di destinazione per il modello, es
in
questo esempio, e lasciare fr
non specificato:
"models": {'es':'projects/PROJECT_NUMBER_OR_ID/locations/us-central1/models/model-id'},
dove PROJECT_NUMBER_OR_ID
è il numero o l'ID del progetto Google Cloud e model-id
è il nome che hai assegnato al modello AutoML.
Traduzione di testo utilizzando un glossario
REST
Questo esempio mostra come specificare un glossario per la lingua di destinazione.Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud
- glossary-id: l'ID del glossario, ad esempio "my-en-to-es-glossary"
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:batchTranslateText
Corpo JSON della richiesta:
{ "sourceLanguageCode": "en", "targetLanguageCodes": ["es"], "glossaries": { "es": { "glossary": "projects/PROJECT_NUMBER_OR_ID/locations/us-central1/glossaries/glossary-id" } }, "inputConfigs": [{ "gcsSource": { "inputUri": "gs://bucket-name-source/input-file-name1" } }, { "gcsSource": { "inputUri": "gs://bucket-name-source/input-file-name2" } } ], "outputConfig": { "gcsDestination": { "outputUriPrefix": "gs://bucket-name-destination/" } } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_NUMBER_OR_ID" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:batchTranslateText"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_NUMBER_OR_ID" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:batchTranslateText" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-number/locations/us-central1/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateMetadata", "state": "RUNNING" } }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per ulteriori informazioni, consulta API Cloud Translation Go documentazione di riferimento.
Per autenticarti su Cloud Translation, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni per la configurazione di Java nel Guida rapida di Cloud Translation con librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Translation Java.
Per autenticarti su Cloud Translation, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per ulteriori informazioni, consulta API Cloud Translation Node.js documentazione di riferimento.
Per autenticarti a Cloud Translation, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Translation Python.
Per autenticarti su Cloud Translation, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di Cloud Translation per .NET.
PHP: segui le istruzioni di configurazione di PHP nella pagina delle librerie client e poi consulta la documentazione di riferimento di Cloud Translation per PHP.
Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e poi consulta la documentazione di riferimento di Cloud Translation per Ruby.
Traduzione di testo utilizzando un glossario e un modello personalizzato di AutoML Translation
REST
Questo esempio mostra come specificare un modello e un glossario personalizzati per la lingua di destinazione.Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:batchTranslateText
Corpo JSON della richiesta:
{ "models": { "es": "projects/project_number_or_id/locations/us-central1/models/model-id" }, "sourceLanguageCode": "en", "targetLanguageCodes": ["es"], "glossaries": { "es": { "glossary": "projects/project_number_or_id/locations/us-central1/glossaries/glossary-id" } }, "inputConfigs": [{ "gcsSource": { "inputUri": "gs://bucket-name-source/input-file-name" } }, { "gcsSource": { "inputUri": "gs://bucket-name-source/input-file-name2" } } ], "outputConfig": { "gcsDestination": { "outputUriPrefix": "gs://bucket-name-destination/" } } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_NUMBER_OR_ID" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:batchTranslateText"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_NUMBER_OR_ID" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:batchTranslateText" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-number/locations/us-central1/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateMetadata", "state": "RUNNING" } }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Translation Go.
Per autenticarti a Cloud Translation, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per ulteriori informazioni, consulta API Cloud Translation Java documentazione di riferimento.
Per autenticarti a Cloud Translation, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js riportate nella guida rapida di Cloud Translation che utilizza le librerie client. Per ulteriori informazioni, consulta API Cloud Translation Node.js documentazione di riferimento.
Per autenticarti su Cloud Translation, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni per la configurazione di Python nel Guida rapida di Cloud Translation con librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Translation Python.
Per autenticarti a Cloud Translation, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di Cloud Translation per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento di Cloud Translation per PHP.
Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e poi consulta la documentazione di riferimento di Cloud Translation per Ruby.
Stato operazione
Una richiesta batch è un'operazione a lunga esecuzione, pertanto il completamento potrebbe richiedere molto tempo. Puoi eseguire il polling dello stato di questa operazione per verificare se completata, oppure annulla l'operazione.
Per ulteriori informazioni, vedi Operazioni a lunga esecuzione.
Risorse aggiuntive
- Per assistenza sulla risoluzione di problemi o errori comuni, consulta la pagina Risoluzione dei problemi.