Traduci documenti
Cloud Translation - Advanced fornisce un'API Document Translation per la traduzione diretta di documenti formattati, come PDF e DOCX. Rispetto alle traduzioni in testo normale, la traduzione di documenti conserva la formattazione e il layout originali dei documenti tradotti, aiutandoti a mantenere gran parte del contesto originale come le interruzioni di paragrafo.
Le seguenti sezioni descrivono come tradurre documenti e utilizzare la traduzione di documenti con altre funzionalità di Cloud Translation - Advanced come i glossari e i modelli di AutoML Translation. La traduzione di documenti supporta le richieste di traduzione online e batch.
Per le traduzioni in testo normale e HTML, consulta la sezione Traduzione di testo.
Formati di file supportati
La traduzione di documenti supporta i seguenti tipi di file di input e i relativi tipi di file di output associati.
Input | Tipo MIME documento | Output |
---|---|---|
DOCUMENTO* | applicazione/msword | DOC, DOCX |
DOCX* | application/vnd.openxmlformats-officedocument.wordprocessingml.document | DOCX |
PDF† | applicazione/pdf | PDF, DOCX |
PPT | Application/vnd.ms-PowerPoint | PPT, PPTX |
PPTX | application/vnd.openxmlformats-officedocument.presentationml.presentation | PPTX |
XLS | application/vnd.ms-excel | XLS, XLSX |
XLSX | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | XLSX |
* I contenuti all'interno delle caselle di testo non vengono tradotti e rimangono nella lingua di origine.
†La funzionalità Traduzione documenti supporta sia i documenti PDF nativi sia quelli scansionati, ma con alcune differenze. Per una gestione ottimale dei formati, utilizza file PDF nativi, se possibile. La traduzione di file PDF scansionati comporta una perdita di formattazione. I complessi layout di PDF possono comportare anche una perdita di formattazione, che può includere tabelle di dati, layout a più colonne e grafici con etichette o legende.
Se disponi di contenuti PDF in formato DOCX o PPTX, ti consigliamo di tradurre i contenuti utilizzando questi formati prima di convertirli in PDF. In generale, la traduzione di documenti conserva il layout e lo stile di un documento dei file DOCX e PPTX meglio dei file PDF. Dopo la traduzione di un documento, puoi convertire i risultati in file PDF.
Traduzioni di documenti PDF scansionati e nativi
Traduzione di documenti supporta file PDF nativi e scansionati, comprese le traduzioni da o verso le lingue con scrittura da destra a sinistra. Il supporto per le conversioni da PDF a DOCX è disponibile per le traduzioni batch di documenti solo su file PDF nativi. Inoltre, la funzionalità Traduzione documenti conserva i link ipertestuali, le dimensioni, il colore e lo stile del carattere solo per i file PDF nativi (sia per le traduzioni sincrone che per quelle batch).
Prima di iniziare
Prima di poter iniziare a utilizzare l'API Cloud Translation, devi disporre di un progetto in cui l'API Cloud Translation sia abilitata e delle credenziali appropriate. Puoi anche installare librerie client per i linguaggi di programmazione più comuni per effettuare chiamate all'API. Per ulteriori informazioni, consulta la pagina Configurazione.
Autorizzazioni obbligatorie
Per le richieste che richiedono l'accesso a Cloud Storage, come la traduzione batch di documenti, potresti richiedere autorizzazioni Cloud Storage per leggere i file di input o inviare i file di output a un bucket. 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
) nel bucket. Per ulteriori informazioni sui ruoli di Cloud Storage, consulta la documentazione di Cloud Storage.
Traduzione di documenti (online)
La traduzione online fornisce l'elaborazione in tempo reale (elaborazione sincrona) di un singolo file.
Per i PDF, le dimensioni dei file possono essere fino a 20 MB e fino a 300 pagine per i PDF nativi (il campo isTranslateNativePdfOnly
deve essere true
). Se attivi il campo enableShadowRemovalNativePdf
, il limite è di 20 pagine. Per i PDF scansionati, il limite è di 20 pagine.
Per gli altri tipi di documenti, le dimensioni dei file possono arrivare fino a 20 MB senza limiti di pagina.
Traduci un documento da Cloud Storage
L'esempio seguente converte un file da un bucket Cloud Storage e restituisce il risultato in un bucket Cloud Storage. La risposta restituisce anche un flusso di byte. Puoi specificare il tipo MIME; in caso contrario, Document Translation lo determina utilizzando l'estensione del file di input.
Se non specifichi un codice della lingua di origine, Document Translation rileva automaticamente la lingua. La lingua rilevata è inclusa nell'output nel campo detectedLanguageCode
.
REST
Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud.
- LOCATION: regione in cui vuoi eseguire questa operazione. Ad
esempio,
us-central1
. - SOURCE_LANGUAGE: (facoltativo) il codice lingua del documento di input. Se la conosci, imposta uno dei codici lingua elencati nella sezione Supporto lingue.
- TARGET_LANGUAGE: la lingua di destinazione in cui tradurre il documento di input. Imposta uno dei codici lingua elencati nella pagina Supporto delle lingue.
- INPUT_FILE_PATH: la posizione e il nome del file di Cloud Storage del documento di input.
- OUTPUT_FILE_PREFIX: la località di Cloud Storage in cui verrà archiviato il documento di output.
- IS_NATIVE: (facoltativo) per i documenti PDF nativi, un valore booleano che indica se la richiesta utilizza il limite di pagine PDF native o scansionate. Se il valore è true, il limite di pagine viene aumentato a 300 pagine solo per i documenti PDF nativi. Se il valore è falso o non specificato, viene utilizzato il limite di pagine PDF scansionate (20 pagine).
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateDocument
Corpo JSON della richiesta:
{ "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "document_input_config": { "gcsSource": { "inputUri": "gs://INPUT_FILE_PATH" } }, "document_output_config": { "gcsDestination": { "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX" } }, "isTranslateNativePdfOnly": IS_NATIVE }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "documentTranslation": { "byteStreamOutputs": ["BYTE_STREAM"], "mimeType": "MIME_TYPE" }, "model": "projects/PROJECT_NUMBER/locations/LOCATION/models/general/nmt" }
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida di Cloud Translation utilizzando le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Translation Node.js.
Per autenticarti su Cloud Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Tradurre un documento in linea
L'esempio seguente invia un documento incorporato come parte della richiesta. Devi includere il tipo MIME per le traduzioni incorporate dei documenti.
Se non specifichi un codice della lingua di origine, Document Translation rileva automaticamente la lingua. La lingua rilevata è inclusa nell'output nel campo detectedLanguageCode
.
REST
Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud.
- LOCATION: regione in cui vuoi eseguire questa operazione. Ad
esempio,
us-central1
. - SOURCE_LANGUAGE: (facoltativo) il codice lingua del documento di input. Se la conosci, imposta uno dei codici lingua elencati nella sezione Supporto lingue.
- TARGET_LANGUAGE: la lingua di destinazione in cui tradurre il documento di input. Imposta uno dei codici lingua elencati nella pagina Supporto delle lingue.
- MIME_TYPE: il formato del documento di origine, ad esempio
application/pdf
. - INPUT_BYTE_STREAM: i contenuti del documento di input rappresentati come un flusso di byte.
- OUTPUT_FILE_PREFIX: la località di Cloud Storage in cui verrà archiviato il documento di output.
- IS_NATIVE: (facoltativo) per i documenti PDF nativi, un valore booleano che indica se la richiesta utilizza il limite di pagine PDF native o scansionate. Se il valore è true, il limite di pagine viene aumentato a 300 pagine solo per i documenti PDF nativi. Se il valore è falso o non specificato, viene utilizzato il limite di pagine PDF scansionate (20 pagine).
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateDocument
Corpo JSON della richiesta:
{ "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "document_input_config": { "mimeType": "MIME_TYPE", "content": "INPUT_BYTE_STREAM" }, "document_output_config": { "gcsDestination": { "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX" } }, "isTranslateNativePdfOnly": IS_NATIVE }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "documentTranslation": { "byteStreamOutputs": ["BYTE_STREAM"], "mimeType": "MIME_TYPE" }, "model": "projects/PROJECT_NUMBER/locations/LOCATION/models/general/nmt" }
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida di Cloud Translation utilizzando le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Translation Python.
Per autenticarti su Cloud Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Usa un modello AutoML o un glossario
Invece del modello gestito da Google, puoi utilizzare i tuoi modelli AutoML Translation per tradurre documenti. Oltre a specificare un modello, puoi anche includere un glossario per gestire la terminologia specifica del dominio. Se specifichi un modello o un glossario, devi specificare la lingua di origine. L'esempio seguente utilizza un modello AutoML e un glossario. Se il modello o il glossario si trova in un altro progetto, devi disporre dell'autorizzazione IAM corrispondente per accedere a queste risorse.
REST
Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud.
- LOCATION: regione in cui vuoi eseguire questa operazione, ad esempio
us-central1
. La località deve corrispondere alla regione in cui si trova il modello, il glossario o entrambi. - SOURCE_LANGUAGE: il codice lingua del documento di input. Imposta uno dei codici lingua elencati nella pagina Supporto delle lingue.
- TARGET_LANGUAGE: la lingua di destinazione in cui tradurre il documento di input. Imposta uno dei codici lingua elencati nella pagina Supporto delle lingue.
- INPUT_FILE_PATH: la posizione e il nome del file di Cloud Storage del documento di input.
- OUTPUT_FILE_PREFIX: la località di Cloud Storage in cui verrà archiviato il documento di output.
- MODEL_PROJECT_ID: l'ID progetto in cui si trova il modello.
- MODEL_LOCATION: la regione in cui si trova il modello.
- MODEL_ID: l'ID del modello da utilizzare.
- GLOSSARY_PROJECT_ID: l'ID progetto in cui si trova il glossario.
- GLOSSARY_LOCATION: la regione in cui si trova il glossario.
- GLOSSARY_ID: l'ID del glossario da utilizzare.
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateDocument
Corpo JSON della richiesta:
{ "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "document_input_config": { "gcsSource": { "inputUri": "gs://INPUT_FILE_PATH" } }, "document_output_config": { "gcsDestination": { "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX" } }, "model": "projects/MODEL_PROJECT_ID/locations/MODEL_LOCATION/models/MODEL_ID", "glossary_config": { "glossary": "projects/GLOSSARY_PROJECT_ID/locations/MODEL_LOCATION/glossaries/GLOSSARY_ID" } }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "documentTranslation": { "byteStreamOutputs": ["BYTE_STREAM"], "mimeType": "MIME_TYPE" }, "glossary_document_translation": { "byteStreamOutputs": ["BYTE_STREAM_USING_GLOSSARY"], "mimeType": "MIME_TYPE" }, "model": "projects/MODEL_PROJECT_ID/locations/MODEL_LOCATION/models/MODEL_ID", "glossaryConfig": { "glossary": "projects/GLOSSARY_PROJECT_ID/locations/MODEL_LOCATION/glossaries/GLOSSARY_ID" } }
Traduzione di documenti (batch)
La traduzione batch ti consente di tradurre più file in più lingue con un'unica richiesta. Per ogni richiesta, puoi inviare fino a 100 file con una dimensione totale dei contenuti fino a 1 GB o 100 milioni di punti di codice Unicode, a seconda del limite raggiunto per primo. Puoi specificare un particolare modello di traduzione per ogni lingua.
Tradurre più documenti
L'esempio seguente include più configurazioni di input. Ogni configurazione di input è un puntatore a un file in un bucket Cloud Storage.
REST
Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud
- LOCATION: regione in cui vuoi eseguire questa operazione. Ad
esempio,
us-central1
. - SOURCE_LANGUAGE: il codice lingua dei documenti di input. Imposta uno dei codici lingua elencati nella pagina Supporto delle lingue.
- TARGET_LANGUAGE: la lingua o le lingue di destinazione in cui tradurre i documenti di input. Utilizza i codici lingua elencati nella sezione Lingue supportate.
- INPUT_FILE_PATH: la località e il nome file di Cloud Storage di uno o più documenti di input.
- OUTPUT_FILE_PREFIX: la località di Cloud Storage in cui sono archiviati tutti i documenti di output.
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:batchTranslateDocument
Corpo JSON della richiesta:
{ "source_language_code": "SOURCE_LANGUAGE", "target_language_codes": ["TARGET_LANGUAGE", ...], "input_configs": [ { "gcsSource": { "inputUri": "gs://INPUT_FILE_PATH_1" } }, { "gcsSource": { "inputUri": "gs://INPUT_FILE_PATH_2" } }, ... ], "output_config": { "gcsDestination": { "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX" } } }
Per inviare la richiesta, espandi una di queste opzioni:
La risposta contiene l'ID di un'operazione a lunga esecuzione.{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateDocumentMetadata", "state": "RUNNING" } }
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida di Cloud Translation utilizzando le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Translation Node.js.
Per autenticarti su Cloud Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida di Cloud Translation utilizzando le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Translation Python.
Per autenticarti su Cloud Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.
Tradurre e convertire un file PDF nativo
L'esempio seguente traduce e converte un file PDF nativo in un file DOCX. Puoi specificare più input di vari tipi di file; non è necessario che tutti siano file PDF nativi. Tuttavia, i file PDF scansionati non possono essere inclusi quando includi una conversione; la richiesta viene rifiutata e non viene eseguita alcuna traduzione. Solo i file PDF nativi vengono tradotti e convertiti in file DOCX. Ad esempio, se includi file PPTX, questi vengono tradotti e restituiti come file PPTX.
Se traduci regolarmente una combinazione di file PDF scansionati e nativi, ti consigliamo di organizzarli in bucket Cloud Storage separati. In questo modo, quando richiedi traduzione e conversione in batch, puoi escludere facilmente il bucket che contiene i file PDF scansionati anziché dover escludere i singoli file.
REST
Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud
- LOCATION: regione in cui vuoi eseguire questa operazione. Ad
esempio,
us-central1
. - SOURCE_LANGUAGE: il codice lingua dei documenti di input. Imposta uno dei codici lingua elencati nella pagina Supporto delle lingue.
- TARGET_LANGUAGE: la lingua o le lingue di destinazione in cui tradurre i documenti di input. Utilizza i codici lingua elencati nella sezione Lingue supportate.
- INPUT_FILE_PATH: la posizione e il nome file di Cloud Storage di uno o più file PDF nativi.
- OUTPUT_FILE_PREFIX: la località di Cloud Storage in cui sono archiviati tutti i documenti di output.
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:batchTranslateDocument
Corpo JSON della richiesta:
{ "source_language_code": "SOURCE_LANGUAGE", "target_language_codes": ["TARGET_LANGUAGE", ...], "input_configs": [ { "gcsSource": { "inputUri": "gs://INPUT_FILE_PATH_1" } }, { "gcsSource": { "inputUri": "gs://INPUT_FILE_PATH_2" } }, ... ], "output_config": { "gcsDestination": { "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX" } }, "format_conversions": { "application/pdf": "application/vnd.openxmlformats-officedocument.wordprocessingml.document" } }
Per inviare la richiesta, espandi una di queste opzioni:
La risposta contiene l'ID di un'operazione a lunga esecuzione.{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateDocumentMetadata", "state": "RUNNING" } }
Usa un modello AutoML o un glossario
Invece del modello gestito da Google, puoi utilizzare i tuoi modelli AutoML Translation per tradurre documenti. Oltre a specificare un modello, puoi anche includere un glossario per gestire la terminologia specifica del dominio. Se specifichi un modello o un glossario, devi specificare la lingua di origine. L'esempio seguente utilizza un modello AutoML e un glossario. Puoi specificare fino a 10 lingue di destinazione con il proprio modello e il proprio glossario.
Se specifichi un modello per alcune lingue di destinazione e non per altre, Document Translation utilizza il modello gestito da Google per le lingue non specificate. Allo stesso modo, se specifichi un glossario per alcune lingue di destinazione, Document Translation non utilizza alcun glossario per le lingue non specificate.
REST
Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:
- PROJECT_NUMBER_OR_ID: l'ID numerico o alfanumerico del tuo progetto Google Cloud
- LOCATION: regione in cui vuoi eseguire questa operazione, ad esempio
us-central1
. La località deve corrispondere alla regione in cui si trova il modello, il glossario o entrambi. - SOURCE_LANGUAGE: il codice lingua dei documenti di input. Imposta uno dei codici lingua elencati nella pagina Supporto delle lingue.
- TARGET_LANGUAGE: la lingua o le lingue di destinazione in cui tradurre i documenti di input. Utilizza i codici lingua elencati nella sezione Lingue supportate.
- INPUT_FILE_PATH: la località e il nome file di Cloud Storage di uno o più documenti di input.
- OUTPUT_FILE_PREFIX: la località di Cloud Storage in cui sono archiviati tutti i documenti di output.
- MODEL_PROJECT_ID: l'ID progetto in cui si trova il modello.
- MODEL_LOCATION: la regione in cui si trova il modello.
- MODEL_ID: l'ID del modello da utilizzare.
- GLOSSARY_PROJECT_ID: l'ID progetto in cui si trova il glossario.
- GLOSSARY_LOCATION: la regione in cui si trova il glossario.
- GLOSSARY_ID: l'ID del glossario da utilizzare.
Metodo HTTP e URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateDocument
Corpo JSON della richiesta:
{ "source_language_code": "SOURCE_LANGUAGE", "target_language_codes": "[TARGET_LANGUAGE, ...]", "input_configs": [ { "gcsSource": { "inputUri": "gs://INPUT_FILE_PATH" } } ], "output_config": { "gcsDestination": { "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX" } }, "models": { "TARGET_LANGUAGE": "projects/MODEL_PROJECT_ID/locations/MODEL_LOCATION/models/MODEL_ID", ... }, "glossaries": { "TARGET_LANGUAGE": { "glossary": "projects/GLOSSARY_PROJECT_ID/locations/MODEL_LOCATION/glossaries/GLOSSARY_ID" }, ... } }
Per inviare la richiesta, espandi una di queste opzioni:
La risposta contiene l'ID di un'operazione a lunga esecuzione.{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateDocumentMetadata", "state": "RUNNING" } }
Testo sovrapposto
In alcuni casi, le traduzioni native di PDF potrebbero includere testo tradotto sovrapposto al testo di origine. Questo problema è definito testo shadow.
Puoi rimuovere il testo shadow attivando l'opzione enableShadowRemovalNativePdf
. Se abiliti questa opzione, la latenza di risposta aumenta e, per le traduzioni di documenti online, il limite di pagine viene ridotto a 20. Puoi sapere solo se il documento richiede la rimozione del testo shadow solo dopo essere stato tradotto.
Orientamento del testo
Per le traduzioni di PDF digitalizzate, il testo di origine deve essere orientato orizzontalmente. Se, ad esempio, un documento scansionato include testo inclinato verso l'alto o verso il basso, Cloud Translation potrebbe non analizzare correttamente tutto il testo, causando traduzioni errate o incomplete.
Se i tuoi documenti non sono orientati in modo coerente, puoi chiedere a Cloud Translation di orientarli per te. Nella richiesta di traduzione, attiva l'opzione enableRotationCorrection
in modo che il testo venga orientato correttamente prima della traduzione.
Passaggi successivi
- Il prezzo della traduzione di documenti è calcolato per pagina. Per ulteriori informazioni, consulta la sezione Prezzi.