Amazon Translate Guida per gli sviluppatori - Amazon.com
←
→
Trascrizione del contenuto della pagina
Se il tuo browser non visualizza correttamente la pagina, ti preghiamo di leggere il contenuto della pagina quaggiù
Amazon Translate Guida per gli sviluppatori Amazon Translate: Guida per gli sviluppatori Copyright © 2019 Amazon Web Services, Inc. and/or its affiliates. All rights reserved. Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's, in any manner that is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to, or sponsored by Amazon.
Amazon Translate Guida per gli sviluppatori Table of Contents Che cos'è Amazon Translate? .............................................................................................................. 1 È la prima volta che utilizzi Amazon Translate? ............................................................................... 2 Coppie di lingue supportate .......................................................................................................... 2 Come funziona ................................................................................................................................... 4 Rilevamento automatico della lingua .............................................................................................. 5 Gestione delle eccezioni .............................................................................................................. 5 Fasi successive .......................................................................................................................... 5 Nozioni di base .................................................................................................................................. 6 Fase 1: impostazione di un account .............................................................................................. 6 Registrarsi ad AWS ............................................................................................................ 6 Creazione di un utente IAM ................................................................................................. 7 Fase successiva ................................................................................................................. 7 Fase 2: configurazione diAWS CLI ................................................................................................ 7 Fase successiva ................................................................................................................. 8 Fase 3: nozioni di base (console) ................................................................................................. 8 Fase successiva ................................................................................................................. 9 Fase 4. Nozioni di base (AWS CLI) ............................................................................................... 9 Traduzione del testo utilizzando la riga di comando ................................................................ 10 Traduzione del testo utilizzando un file JSON ........................................................................ 10 Fase successiva ............................................................................................................... 11 Fase 5. Nozioni di base (SDK) ................................................................................................... 11 Utilizzo di SDK per Java .................................................................................................... 11 Utilizzo del kit SDK AWS per Python ................................................................................... 12 Utilizzo di Mobile SDK per Android ...................................................................................... 14 Utilizzo di Mobile SDK for iOS ............................................................................................ 15 Terminologia personalizzata ............................................................................................................... 18 Come funziona? ....................................................................................................................... 18 Creazione di una terminologia personalizzata ................................................................................ 18 Lingue compatibili ............................................................................................................. 19 Uso di terminologie personalizzate .............................................................................................. 20 Crittografia della terminologia ...................................................................................................... 21 Buone prassi ............................................................................................................................ 21 Esempi ............................................................................................................................................ 22 Utilizzo di Amazon Polly con Amazon Translate ............................................................................ 22 Code ............................................................................................................................... 22 Utilizzo di Amazon Translate per tradurre un canale di chat ............................................................. 26 Utilizzo di Amazon Translate con DynamoDB ................................................................................ 34 Codice di esempio ............................................................................................................ 35 Utilizzo di Amazon Translate per tradurre una pagina Web .............................................................. 37 Utilizzo di Amazon Translate per tradurre documenti di grandi dimensioni .......................................... 40 Utilizzo di Signature Version 4 con Amazon Translate .................................................................... 42 Configurazione ................................................................................................................. 42 Code ............................................................................................................................... 43 Autenticazione e controllo degli accessi ............................................................................................... 46 Autenticazione .......................................................................................................................... 46 Controllo degli accessi ............................................................................................................... 47 Panoramica della gestione degli accessi ....................................................................................... 47 Gestione degli accessi alle operazioni .................................................................................. 47 Definizione degli elementi delle policy: risorse, operazioni, effetti ed entità principali ..................... 48 Specifica delle condizioni in una policy ................................................................................. 49 Utilizzo di policy basate sulle identità (policy IAM) per Amazon Translate ........................................... 49 Policy KMS necessarie quando si utilizza KMS CMKS con terminologie personalizzate Amazon Translate. ........................................................................................................................ 50 Riferimento per le autorizzazioni API Amazon Translate .................................................................. 51 iii
Amazon Translate Guida per gli sviluppatori Monitoraggio .................................................................................................................................... 53 Monitoraggio con CloudWatch .................................................................................................... 55 Informazioni sui parametri CloudWatch per Amazon Translate ................................................. 55 Visualizzazione dei parametri Amazon Translate .................................................................... 55 Parametri e dimensioni CloudWatch per Amazon Translate ............................................................. 56 CloudWatch Metrics for Amazon Translate ............................................................................ 56 CloudWatch Dimensions for Amazon Translate ..................................................................... 57 Linee guida e limiti ............................................................................................................................ 58 Regioni supportate .................................................................................................................... 58 Throttling ................................................................................................................................. 58 Linee guida .............................................................................................................................. 58 Restrizioni dei servizi ................................................................................................................. 58 Cronologia dei documenti ................................................................................................................... 60 Documentazione di riferimento all'API .................................................................................................. 62 Intestazioni HTTP ..................................................................................................................... 62 Actions .................................................................................................................................... 62 DeleteTerminology ............................................................................................................ 64 GetTerminology ................................................................................................................ 66 ImportTerminology ............................................................................................................. 69 ListTerminologies .............................................................................................................. 72 TranslateText ................................................................................................................... 75 Data Types .............................................................................................................................. 78 AppliedTerminology ........................................................................................................... 80 EncryptionKey .................................................................................................................. 81 Term ............................................................................................................................... 82 TerminologyData ............................................................................................................... 83 TerminologyDataLocation ................................................................................................... 84 TerminologyProperties ....................................................................................................... 85 Common Errors ........................................................................................................................ 86 Common Parameters ................................................................................................................. 88 AWS Glossary .................................................................................................................................. 91 iv
Amazon Translate Guida per gli sviluppatori Che cos'è Amazon Translate? Amazon Translate utilizza tecnologie di machine learning avanzate per fornire traduzioni di alta qualità su richiesta. Utilizzalo per tradurre documenti di testo non strutturati o per creare applicazioni che funzionano in più lingue. Amazon Translate traduce documenti tra le seguenti lingue: Arabo Cinese Cinese Ceco Danese (semplificato) (tradizionale) Olandese English Finlandese Francese Tedesco Ebraico Indonesiano Italiano Giapponese Coreano Polacco Portoghese Russo Spagnolo Svedese Turco Note Non tutte le traduzioni tra le combinazioni linguistiche (note come coppie di lingue) sono attualmente supportate da Amazon Translate. Per ulteriori informazioni, consulta Coppie di lingue supportate (p. 2). Ad esempio, è possibile: • Integrare Amazon Translate nelle applicazioni per abilitare esperienze utente multilingua. • Tradurre contenuti creati dall'azienda, ad esempio verbali di riunioni, rapporti tecnici, articoli della knowledge-base, post e molto altro. • Tradurre comunicazioni interpersonali, ad esempio e-mail, chat nel gioco, chat del servizio clienti e molto altro, consentendo ai clienti e ai dipendenti di connettersi nella lingua preferita. • Utilizzare Amazon Translate come parte del flusso di lavoro dell'azienda per i dati in entrata. • Analizzare testo, ad esempio social media e neswfeed, in molte lingue. • Cercare informazioni, ad esempio per casi eDiscovery, in molte lingue. • Integrare Amazon Translate con altri servizi AWS per abilitare elaborazione multilingue. • Utilizzarlo con Amazon Comprehend per estrarre entità denominate, sentiment e frasi chiave da testo non strutturato, ad esempio flussi di social media. • Utilizzarlo con Amazon Transcribe per creare sottotitoli e didascalie live disponibili in molte lingue. • Utilizzarlo con Amazon Polly per pronunciare i contenuti tradotti. • Utilizzarlo con Amazon S3 per tradurre archivi di documenti. • Utilizzarlo con Amazon DynamoDB, Amazon Aurora e Amazon Redshift per tradurre testo archiviato in database. • Utilizzarlo con AWS Lambda o AWS Glue per l'integrazione flusso di lavoro omogenea. Questo è un servizio idoneo ai fini HIPAA. Per ulteriori informazioni su AWS, sull'Health Insurance Portability and Accountability Act statunitense del 1996 (HIPAA) e sull'utilizzo dei servizi AWS per elaborare, archiviare e trasmettere informazioni sanitarie protette (Protected Health Information, PHI), consulta Panoramica di HIPAA. 1
Amazon Translate Guida per gli sviluppatori È la prima volta che utilizzi Amazon Translate? È la prima volta che utilizzi Amazon Translate? Se lo usi per la prima volta, ti consigliamo di leggere le seguenti sezioni in ordine: 1. Funzionamento di Amazon Translate (p. 4)—Presenta Amazon Translate. 2. Nozioni di base su Amazon Translate (p. 6) – Spiega come impostare l'account AWS e testare Amazon Translate. 3. Esempi (p. 22) – Fornisce esempi di codice in Java e Python. Utilizzali per scoprire come funziona Amazon Translate. 4. Documentazione di riferimento all'API (p. 62) – Contiene documentazione di riferimento per le operazioni Amazon Translate. Coppie di lingue supportate Amazon Translate utilizza tecnologie di machine learning avanzate per fornire la traduzione dalla lingua di origine (la lingua di input) alla lingua di destinazione (la lingua di output). La combinazione lingua di origine- lingua di destinazione è nota come coppia di lingue. Amazon Translate traduce documenti tra le seguenti lingue: Arabo Cinese Cinese Ceco Danese (semplificato) (tradizionale) Olandese English Finlandese Francese Tedesco Ebraico Indonesiano Italiano Giapponese Coreano Polacco Portoghese Russo Spagnolo Svedese Turco Non tutte le coppie di lingue possibili dell'elenco precedente sono attualmente supportate per la traduzione da Amazon Translate. La seguente tabella mostra quali lingue sono supportate. Coppie di lingue supportate Note Le righe indicano la lingua di origine e le colonne indicano la lingua di destinazione. Arabo Cinese Cinese CecoDanese Olandese English Finlandese Francese Tedesco Ebraico Indonesiano Italiano Giapponese Coreano Polacco Portoghese Russo Spagnolo Svedese Turco (sempl.) (trad.) Arabo -- sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì Cinese sì -- no sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì (sempl.) Cinese sì no -- sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì (trad.) Cecosì sì sì -- sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì Danese sì sì sì sì -- sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì 2
Amazon Translate Guida per gli sviluppatori Coppie di lingue supportate Arabo Cinese Cinese CecoDanese Olandese English Finlandese Francese Tedesco Ebraico Indonesiano Italiano Giapponese Coreano Polacco Portoghese Russo Spagnolo Svedese Turco (sempl.) (trad.) Olandese sì sì sì sì sì -- sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì Inglese sì sì sì sì sì sì -- sì sì sì sì sì sì sì sì sì sì sì sì sì sì Finlandese sì sì sì sì sì sì sì -- sì sì sì sì sì sì sì sì sì sì sì sì sì Francese sì sì sì sì sì sì sì sì -- sì sì sì sì sì sì sì sì sì sì sì sì Tedesco sì sì sì sì sì sì sì sì sì -- sì sì sì sì sì sì sì sì sì sì sì Ebraico sì sì sì sì sì sì sì sì sì sì -- sì sì sì sì sì sì sì sì sì sì Indonesiano sì sì sì sì sì sì sì sì sì sì sì -- sì sì sì sì sì sì sì sì sì Italiano sì sì sì sì sì sì sì sì sì sì sì sì -- sì sì sì sì sì sì sì sì Giapponese sì sì sì sì sì sì sì sì sì sì sì sì sì -- sì sì sì sì sì sì sì Coreano sì sì sì sì sì sì sì sì sì sì no sì sì sì -- sì sì sì sì sì sì Polacco sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì -- sì sì sì sì sì Portoghese sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì -- sì sì sì sì Russo sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì -- sì sì sì Spagnolo sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì -- sì sì Svedese sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì -- sì Turcosì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì sì -- 3
Amazon Translate Guida per gli sviluppatori Funzionamento di Amazon Translate Il servizio Amazon Translate servizio si basa su reti neurali addestrate per la traduzione. Questo consente di eseguire la traduzione tra una lingua di origine (la lingua originale del testo che viene tradotto) e una lingua di destinazione (la lingua in cui il testo viene tradotto). Non è necessario utilizzare l'inglese come lingua di origine o di destinazione, ma non tutte le combinazioni linguistiche sono supportate da Amazon Translate. Per ulteriori informazioni, consulta Coppie di lingue supportate (p. 2). Quando utilizzi Amazon Translate, occorre fornire testo di origine per ottenere testo di output: • Testo di origine – Testo da tradurre. Il formato del testo di origine deve essere UTF-8. • Testo di output – Il testo che è stato tradotto da Amazon Translate nella lingua di destinazione. Anche il formato del testo di output è UTF-8. A seconda delle lingua di origine e di destinazione, il testo di output potrebbe contenere più caratteri del testo di input. Il modello di traduzione dispone di due componenti: encoder e decoder. L'encoder legge la frase di origine una parola alla volta e costruisce una rappresentazione semantica che ne cattura il significato. Il decoder utilizza la rappresentazione semantica per generare una traduzione una parola alla volta nel linguaggio di destinazione. Amazon Translate utilizza meccanismi di attenzione per comprendere il contesto. Questo permette di decidere quale parola nel testo di origine è più rilevante per la generazione della successiva parola di destinazione. I meccanismi di attenzione consentono al decoder di concentrarsi sulle parti più pertinenti di una frase di origine. In questo modo il decoder traduce correttamente parole o frasi ambigue. La parola di destinazione generata dal modello diventa l'input del decoder. La rete continua a generare parole finché non raggiunge la fine della frase. Per tradurre il testo, chiamare il metodo TranslateText (p. 75) e fornire il testo di origine e la lingua di destinazione, utilizzando il codice lingua elencato nella tabella sottostante. Linguaggio Code Arabo ar Cinese (semplificato) zh Cinese (tradizionale) zh-TW Ceco cs Danese da Olandese nl Inglese en Finlandese fi Francese fr Tedesco de Ebraico he 4
Amazon Translate Guida per gli sviluppatori Rilevamento automatico della lingua Linguaggio Code Indonesiano id Italiano it Giapponese ja Coreano ko Polacco pl Portoghese pt Russo ru Spagnolo es Svedese sv Turco tr Rilevamento automatico della lingua Amazon Translate è in grado di rilevare automaticamente la lingua utilizzata nel testo di origine. Per utilizzare il rilevamento automatico della lingua, specifica auto come lingua di origine. Amazon Translate chiama Amazon Comprehend per conto dell'utente per determinare la lingua utilizzata nel testo di origine. Scegliendo il rilevamento automatico della lingua, accetti i termini dell'accordo per Amazon Comprehend. Per informazioni sui prezzi per Amazon Comprehend, consulta Prezzi di Amazon Comprehend. Gestione delle eccezioni Se specifichi una lingua di origine o di destinazione che non è supportata, Amazon Translate restituisce le seguenti eccezioni: • UnsupportedLanguagePairException – Amazon Translate supporta la traduzione tra le lingue supportate. Questa eccezione viene restituita se la traduzione tra la coppia di lingue non è supportata. Per ulteriori informazioni, consulta Coppie di lingue supportate (p. 2) • DetectedLanguageLowConfidenceException – Se utilizzi il rilevamento automatico della lingua e Amazon Translate non è certo di aver rilevato la lingua di origine corretta, restituisce questa eccezione. Se un basso livello di affidabilità è accettabile, puoi utilizzare la lingua di origine restituita nell'eccezione. Fasi successive Ora che hai ottenuto informazioni su Amazon Translate puoi esplorare le seguenti sezioni per informazioni sulla creazione di una soluzione. • Nozioni di base su Amazon Translate (p. 6) • Esempi (p. 22) 5
Amazon Translate Guida per gli sviluppatori Fase 1: impostazione di un account Nozioni di base su Amazon Translate Per iniziare a utilizzare Amazon Translate, imposta un account AWS e crea un utente AWS Identity and Access Management (IAM). Per utilizzare AWS Command Line Interface (AWS CLI), scaricalo e configuralo. Argomenti • Fase 1: impostazione di un account AWS e creazione di un utente Amministratore (p. 6) • Fase 2: configurazione di AWS Command Line Interface (AWS CLI) (p. 7) • Fase 3: nozioni di base (console) (p. 8) • Fase 4. Nozioni di base (AWS CLI) (p. 9) • Fase 5. Nozioni di base (SDK) (p. 11) Fase 1: impostazione di un account AWS e creazione di un utente Amministratore Prima di usare Amazon Translate per la prima volta, è necessario completare le seguenti operazioni: 1. Registrarsi ad AWS (p. 6) 2. Creazione di un utente IAM (p. 7) Registrarsi ad AWS Quando ti registri ad Amazon Web Services (AWS), l'account AWS viene automaticamente registrato per tutti i servizi AWS, incluso Amazon Translate. Ti vengono addebitati solo i servizi che utilizzi. Con Amazon Translate, paghi solo le risorse che utilizzi. Se sei un nuovo cliente AWS, puoi iniziare a utilizzare Amazon Translate gratuitamente. Per ulteriori informazioni, consulta Piano di utilizzo gratuito AWS. Se disponi già di un account AWS, passa alla sezione successiva. Per creare un account AWS 1. Aprire la pagina https://aws.amazon.com/, quindi scegliere Create an AWS Account (Crea un account AWS). Note Se ci si è già iscritti alla Console di gestione AWS tramite credenziali Utente root dell'account AWS, scegliere Sign in to a different account (Accedi a un account diverso). Se ci si è già iscritti alla console tramite credenziali IAM, scegliere Sign-in using root account credentials (Accedi con le credenziali dell'account root). Selezionare quindi Create a new AWS account (Crea un nuovo account AWS). 2. Seguire le istruzioni online. Come parte della procedura di registrazione si riceverà una telefonata, durante la quale si dovrà inserire un codice di verifica usando la tastiera del telefono. 6
Amazon Translate Guida per gli sviluppatori Creazione di un utente IAM Registra l'ID del tuo account AWS perché ne avrai bisogno per eseguire l'operazione successiva. Creazione di un utente IAM I servizi AWS, come Amazon Translate, richiedono credenziali di accesso. In questo modo il servizio può stabilire se disponi delle autorizzazioni per accedere alle risorse del servizio stesso. Ti consigliamo di accedere ad AWS utilizzando AWS Identity and Access Management (IAM), anziché le credenziali dell'account AWS. Per utilizzare IAM e accedere ad AWS, crea un utente IAM, aggiungilo a un gruppo IAM con autorizzazioni amministrative, quindi concedi le autorizzazioni amministrative all'utente IAM. È quindi possibile accedere ad AWS utilizzando un URL speciale e le credenziali IAM dell'utente. Gli esercizi in questa guida presuppongono l'uso di un utente IAM con privilegi di amministratore denominato adminuser. Per creare utente amministratore • Nell'account AWS, creare un utente amministratore denominato adminuser. Per istruzioni, consulta l'articolo relativo alla creazione del primo utente e del primo gruppo di amministratori IAM nella Guida per l'utente di IAM. Per ulteriori informazioni su IAM, consulta: • AWS Identity and Access Management (IAM) • Nozioni di base • Guida per l'utente di IAM Fase successiva Fase 2: configurazione di AWS Command Line Interface (AWS CLI) (p. 7) Fase 2: configurazione di AWS Command Line Interface (AWS CLI) Utilizza AWS CLI per eseguire chiamate interattive ad Amazon Translate. Per configurare AWS CLI 1. Scarica e configura AWS CLI. Per istruzioni, consulta i seguenti argomenti nella Guida per l'utente di AWS Command Line Interface: • Come configurare l'AWS Command Line Interface • Configurazione di AWS Command Line Interface 2. Nel file AWS CLI config, aggiungere un profilo denominato per l'utente amministratore: [profile adminuser] aws_access_key_id = adminuser access key ID aws_secret_access_key = adminuser secret access key region = aws-region Utilizzerai questo profilo quando esegui i comandi AWS CLI. Per ulteriori informazioni, consulta l'articolo relativo ai profili denominati nella Guida per l'utente di AWS Command Line Interface. Per 7
Amazon Translate Guida per gli sviluppatori Fase successiva un elenco delle regioni AWS, consulta Regioni ed endpoint nella Riferimenti generali di Amazon Web Services. 3. Verificare la configurazione digitando il seguente comando help al prompt dei comandi: aws translate help Viene visualizzata una breve descrizione di Amazon Translate e un elenco dei comandi disponibili. Fase successiva Fase 3: nozioni di base (console) (p. 8) Fase 3: nozioni di base (console) Il metodo più semplice per iniziare a utilizzare Amazon Translate è tramite la console. Utilizzando la console puoi tradurre un massimo di 5.000 caratteri. Se non hai esaminato le nozioni e la terminologia in Funzionamento di Amazon Translate (p. 4), ti consigliamo di farlo prima di continuare. Per iniziare a tradurre testo, passa a Console di gestione AWS e apri la console Amazon Translate. Se è la prima volta che utilizzi Amazon Translate, scegli Try Amazon Translate (Prova Amazon Translate). In Translate text (Traduci testo), scegli le lingue di origine e di destinazione. Immetti il testo da tradurre nella casella di testo a sinistra. Il testo tradotto viene visualizzato nella casella di testo a destra. 8
Amazon Translate Guida per gli sviluppatori Fase successiva Nel sezione JSON samples (Esempi JSON) viene visualizzato l'input e l'output JSON per l'operazione TranslateText (p. 75). Fase successiva Fase 4. Nozioni di base (AWS CLI) (p. 9) Fase 4. Nozioni di base (AWS CLI) Negli esercizi seguenti, utilizza l'interfaccia a riga di comando di AWS (AWS CLI) per tradurre il testo. Per completare questi esercizi, occorre familiarità con l'uso della CLI e un editor di testo. Per ulteriori informazioni, consulta Fase 2: configurazione di AWS Command Line Interface (AWS CLI) (p. 7). Sono disponibili due modi per utilizzare la CLI per tradurre il testo con Amazon Translate. Per testi brevi, puoi fornire il testo da tradurre come un parametro del comando translate-text. Per testi più lunghi, puoi fornire la lingua di origine, la lingua di destinazione e il testo in un file JSON. Per usare Amazon Translate dalla riga di comando, occorre conoscere l'endpoint e la regione per il servizio. Per un elenco delle regioni e degli endpoint disponibili, consulta Linee guida e limiti (p. 58). 9
Amazon Translate Guida per gli sviluppatori Traduzione del testo utilizzando la riga di comando Traduzione del testo utilizzando la riga di comando L'esempio seguente mostra come usare l'operazione translate-text dalla riga di comando per tradurre il testo. L'esempio è formattato per Unix, Linux e macOS. Per Windows, sostituisci il carattere di continuazione UNIX barra rovesciata (\) al termine di ogni riga con un accento circonflesso (^). Nella riga di comando, digitare quanto segue. aws translate translate-text \ --region region \ --source-language-code "en" \ --target-language-code "es" \ --text "hello, world " La risposta è il JSON seguente. { "TargetLanguageCode": "es", "Text": "Hola, mundo", "SourceLanguageCode": "en" } Traduzione del testo utilizzando un file JSON Questo esempio mostra come utilizzare l'operazione translate-text per tradurre un blocco di testo più lungo da un file JSON. Puoi specificare la lingua di origine e di destinazione nella riga di comando, ma in questo esempio, è necessario specificarli nel file JSON. Note Il file JSON è formattato per la leggibilità. Riformatta il campo "Text" per rimuovere le interruzioni di riga. L'esempio è formattato per Unix, Linux e macOS. Per Windows, sostituisci il carattere di continuazione UNIX barra rovesciata (\) al termine di ogni riga con un accento circonflesso (^). Per tradurre il testo utilizzando un file JSON 1. Copiare il testo seguente in un file JSON denominato translate.json: { "Text": "Amazon Translate translates documents between languages in real time. It uses advanced machine learning technologies to provide high-quality real-time translation. Use it to translate documents or to build applications that work in multiple languages.", "SourceLanguageCode": "en", "TargetLanguageCode": "fr" } 2. In AWS CLI, eseguire il comando seguente: aws translate translate-text \ --region region \ --cli-input-json file://translate.json > translated.json Il comando genera un file JSON contenente il testo JSON seguente: { 10
Amazon Translate Guida per gli sviluppatori Fase successiva "TargetLanguageCode": "fr", "Text": "Amazon Translate traduit les documents entre les langue en temps réel. Il utilise des technologies avancées d'apprentissage de la machine pour fournir une traduction en temps réel de haute qualité. Utilisez-le pour traduire des documents ou pour créer des applications qui fonctionnent en plusieurs langues.", "SourceLanguageCode": "en" } Fase successiva Per visualizzare altri metodi di utilizzo di Amazon Translate, consulta Esempi (p. 22). Fase 5. Nozioni di base (SDK) I seguenti esempi illustrano come utilizzare l'operazione Amazon Translate TranslateText (p. 75) mediante Java e Python. Utilizzarli per ottenere informazioni sull'operazione TranslateText e come elementi di base per le proprie applicazioni. Per eseguire gli esempi Java, occorre installare AWS SDK for Java. Per istruzioni sull'installazione di SDK per Java, consulta la sezione relativa alla configurazione di SDK AWS per Java. Argomenti • Traduzione di testo mediante AWS SDK for Java (p. 11) • Traduzione di testo mediante AWS SDK for Python (Boto) (p. 12) • Traduzione di testo mediante AWS Mobile SDK per Android (p. 14) • Traduzione di testo mediante AWS Mobile SDK for iOS (p. 15) Traduzione di testo mediante AWS SDK for Java L'esempio seguente dimostra l'utilizzo dell'operazione TranslateText (p. 75) in Java. Per eseguire questo esempio, è necessario AWS SDK for Java. Per istruzioni sull'installazione di SDK per Java, consulta la sezione relativa alla configurazione di SDK AWS per Java. import com.amazonaws.auth.AWSStaticCredentialsProvider; import com.amazonaws.auth.BasicAWSCredentials; import com.amazonaws.client.builder.AwsClientBuilder; import com.amazonaws.services.translate.AmazonTranslate; import com.amazonaws.services.translate.AmazonTranslateClient; import com.amazonaws.services.translate.model.TranslateTextRequest; import com.amazonaws.services.translate.model.TranslateTextResult; public class App { private static final String REGION = "region"; public static void main( String[] args ) { // Create credentials using a provider chain. For more information, see // https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html AWSCredentialsProvider awsCreds = DefaultAWSCredentialsProviderChain.getInstance(); AmazonTranslate translate = AmazonTranslateClient.builder() .withCredentials(new AWSStaticCredentialsProvider(awsCreds)) 11
Amazon Translate Guida per gli sviluppatori Utilizzo del kit SDK AWS per Python .withRegion(REGION) .build(); TranslateTextRequest request = new TranslateTextRequest() .withText("Hello, world") .withSourceLanguageCode("en") .withTargetLanguageCode("es"); TranslateTextResult result = translate.translateText(request); System.out.println(result.getTranslatedText()); } } Puoi cambiare le lingue di origine e di destinazione purché la coppia di lingue selezionata sia supportata da Amazon Translate nella combinazione corretta. Per ulteriori informazioni, consulta Coppie di lingue supportate (p. 2) Traduzione di testo mediante AWS SDK for Python (Boto) L'esempio seguente dimostra l'utilizzo dell'operazione TranslateText (p. 75) in Python. Per eseguirla, è necessario innanzitutto installare Amazon Translate tramite AWS CLI. Per istruzioni, consulta the section called “Fase 2: configurazione diAWS CLI” (p. 7). import boto3 translate = boto3.client(service_name='translate', region_name='region', use_ssl=True) result = translate.translate_text(Text="Hello, World", SourceLanguageCode="en", TargetLanguageCode="de") print('TranslatedText: ' + result.get('TranslatedText')) print('SourceLanguageCode: ' + result.get('SourceLanguageCode')) print('TargetLanguageCode: ' + result.get('TargetLanguageCode')) Puoi cambiare le lingue di origine e di destinazione purché la coppia di lingue selezionata sia supportata da Amazon Translate nella combinazione corretta. Per ulteriori informazioni, consulta Coppie di lingue supportate (p. 2) Terminologia personalizzata Un altro esempio che dimostra l'uso di operazioni Terminologia personalizzata in Python: #!/usr/bin/env python # -*- coding: utf-8 -*- import boto3 translate = boto3.client(service_name='translate') # The terminology file 'my-first-terminology.csv' has the following contents: ''' en,fr Amazon Family,Amazon Famille ''' # Read the terminology from a local file with open('/tmp/my-first-terminology.csv', 'rb') as f: data = f.read() file_data = bytearray(data) 12
Amazon Translate Guida per gli sviluppatori Utilizzo del kit SDK AWS per Python print("Importing the terminology into Amazon Translate...") response = translate.import_terminology(Name='my-first-terminology', MergeStrategy='OVERWRITE', TerminologyData={"File": file_data, "Format": 'CSV'}) print("Terminology imported: "), print(response.get('TerminologyProperties')) print("\n") print("Getting the imported terminology...") response = translate.get_terminology(Name='my-first-terminology', TerminologyDataFormat='CSV') print("Received terminology: "), print(response.get('TerminologyProperties')) print("The terminology data file can be downloaded here: " + response.get('TerminologyDataLocation').get('Location')) print("\n") print("Listing the first 10 terminologies for the account...") response = translate.list_terminologies(MaxResults=10) print("Received terminologies: "), print(response.get('TerminologyPropertiesList')) print("\n") print("Translating 'Amazon Family' from English to French with no terminology...") response = translate.translate_text(Text="Amazon Family", SourceLanguageCode="en", TargetLanguageCode="fr") print("Translated text: " + response.get('TranslatedText')) print("\n") print("Translating 'Amazon Family' from English to French with the 'my-first- terminology' terminology...") response = translate.translate_text(Text="Amazon Family", TerminologyNames=["my-first- terminology"], SourceLanguageCode="en", TargetLanguageCode="fr") print("Translated text: " + response.get('TranslatedText')) print("\n") # The terminology file 'my-updated-terminology.csv' has the following contents: ''' en,fr Amazon Family,Amazon Famille Prime Video, Prime Video ''' # Read the terminology from a local file with open('/tmp/my-updated-terminology.csv', 'rb') as f: data = f.read() file_data = bytearray(data) print("Updating the imported terminology in Amazon Translate...") response = translate.import_terminology(Name='my-first-terminology', MergeStrategy='OVERWRITE', TerminologyData={"File": file_data, "Format": 'CSV'}) print("Terminology updated: "), print(response.get('TerminologyProperties')) print("\n") print("Translating 'Prime Video' from English to French with no terminology...") response = translate.translate_text(Text="Prime Video", SourceLanguageCode="en", TargetLanguageCode="fr") print("Translated text: " + response.get('TranslatedText')) print("\n") print("Translating 'Prime Video' from English to French with the 'my-first-terminology' terminology...") response = translate.translate_text(Text="Prime Video", TerminologyNames=["my-first- terminology"], SourceLanguageCode="en", TargetLanguageCode="fr") 13
Amazon Translate Guida per gli sviluppatori Utilizzo di Mobile SDK per Android print("Translated text: " + response.get('TranslatedText')) print("\n") print("Cleaning up by deleting 'my-first-terminology'...") translate.delete_terminology(Name="my-first-terminology") print("Terminology deleted.") Traduzione di testo mediante AWS Mobile SDK per Android Puoi utilizzare Amazon Translate in un'applicazione Android per tradurre testo. Per configurare l'esempio 1. Impostare l'AWS Mobile SDK per Android. Per istruzioni, consulta la documentazione Android: Opzioni di configurazione per il kit SDK nella Guida per gli sviluppatori di AWS Mobile 2. Creare un utente IAM con le autorizzazioni minime richieste per eseguire questo esempio. Per informazioni sulla creazione di un utente IAM, consulta Creare un utente IAM nell'account AWS nella Guida per l'utente di AWS Identity and Access Management. Per le policy delle autorizzazioni richieste, consulta Utilizzo di policy basate sulle identità (policy IAM) per Amazon Translate (p. 49). Dopo aver creato l'utente, scaricare le credenziali o registrare la chiave di accesso e la chiave di accesso segreta. 3. Creare un nuovo progetto con Android Studio. 4. Aggiungere quanto segue alla sezione delle dipendenze del file build.gradle. dependencies { implementation 'com.amazonaws:aws-android-sdk-translate:2.6.20' } 5. Aggiungere le seguenti autorizzazioni al file AndroidManifest.xml. 6. Copiare il codice sorgente nel progetto 7. Modificare la chiave di accesso e la chiave di accesso segreta nelle chiavi che sono state registrate nella fase uno. Code Usa il codice seguente per creare l'esempio. package com.amazonaws.amazontranslatetester; import android.app.Activity; import android.util.Log; import com.amazonaws.auth.AWSCredentials; import com.amazonaws.handlers.AsyncHandler; import com.amazonaws.services.translate.AmazonTranslateAsyncClient; import com.amazonaws.services.translate.model.TranslateTextRequest; import com.amazonaws.services.translate.model.TranslateTextResult; public class MainActivity extends Activity { 14
Amazon Translate Guida per gli sviluppatori Utilizzo di Mobile SDK for iOS private static final String LOG_TAG = MainActivity.class.getSimpleName(); @Override protected void onCreate(Bundle savedInstanceState) { AWSCredentials awsCredentials = new AWSCredentials() { @Override public String getAWSAccessKeyId() { return "access key"; } @Override public String getAWSSecretKey() { return "secret key"; } }; AmazonTranslateAsyncClient translateAsyncClient = new AmazonTranslateAsyncClient(awsCredentials); TranslateTextRequest translateTextRequest = new TranslateTextRequest() .withText("Hello, world") .withSourceLanguageCode("en") .withTargetLanguageCode("es"); translateAsyncClient.translateTextAsync(translateTextRequest, new AsyncHandler() { @Override public void onError(Exception e) { Log.e(LOG_TAG, "Error occurred in translating the text: " + e.getLocalizedMessage()); } @Override public void onSuccess(TranslateTextRequest request, TranslateTextResult translateTextResult) { Log.d(LOG_TAG, "Original Text: " + request.getText()); Log.d(LOG_TAG, "Translated Text: " + translateTextResult.getTranslatedText()); } }); } } Traduzione di testo mediante AWS Mobile SDK for iOS Puoi utilizzare Amazon Translate in un'applicazione iOS per tradurre testo. Per configurare l'esempio 1. Creare un utente IAM con le autorizzazioni minime richieste per eseguire questo esempio. Per informazioni sulla creazione di un utente IAM, consulta Creare un utente IAM nell'account AWS nella Guida per l'utente di AWS Identity and Access Management. Per le policy delle autorizzazioni richieste, consulta Utilizzo di policy basate sulle identità (policy IAM) per Amazon Translate (p. 49). Dopo aver creato l'utente, scaricare le credenziali o registrare la chiave di accesso e la chiave di accesso segreta. 2. Installare Xcode 8.0 o versione successiva. È possibile scaricare la versione più recente di Xcode dal sito Web di Apple, https://developer.apple.com/xcode/. 3. Installare CocoaPods. In una finestra del terminale, eseguire il comando riportato qui sotto: sudo gem install cocoapods 15
Amazon Translate Guida per gli sviluppatori Utilizzo di Mobile SDK for iOS 4. Creare un progetto utilizzando Xcode. Quindi, in una finestra del terminale, accedere alla directory contenente il file .xcodeproj del progetto ed eseguire il seguente comando: pod init 5. Aggiungere i componenti Mobile SDK for iOS principali per il file pod: platform :ios, '9.0' target :'app name' do use_frameworks! pod 'AWSTranslate', '~> 2.6.19' # other pods end 6. Installare le dipendenze eseguendo il comando seguente in una finestra del terminale: pod install --repo-update 7. L'esecuzione di pod install crea un nuovo file dell'area di lavoro. Chiudere il progetto Xcode e quindi aprirlo utilizzando il file ./nome_progetto.xcworkspace. Da questo momento, utilizzare solo questo file per aprire il progetto Xcode Ricostruire l'app dopo averla aperta per risolvere le API dalle nuove librerie chiamate nel codice. 8. Aggiungere al controller vista l'istruzione d'importazione seguente: import AWSTranslate 9. Copiare il codice seguente nel progetto XCode. Aggiornare la chiave di accesso e la chiave segreta ai valori che sono stati registrati nella fase 1. Code Usa il codice seguente per creare l'esempio. var credentialsProvider = AWSStaticCredentialsProvider(accessKey: "access key", secretKey: "secret key") var configuration = AWSServiceConfiguration(region: AWSRegionUSEast1, credentialsProvider: credentialsProvider) AWSServiceManager.default().defaultServiceConfiguration = configuration let translateClient = AWSTranslate.default() let translateRequest = AWSTranslateTranslateTextRequest() translateRequest?.sourceLanguageCode = "en" translateRequest?.targetLanguageCode = "es" translateRequest?.text = "Hello World" let callback: (AWSTranslateTranslateTextResponse?, Error?) -> Void = { (response, error) in guard let response = response else { print("Got error \(error)") return } 16
Amazon Translate Guida per gli sviluppatori Utilizzo di Mobile SDK for iOS if let translatedText = response.translatedText { print(translatedText) } } translateClient.translateText(translateRequest!, completionHandler: callback) 17
Amazon Translate Guida per gli sviluppatori Come funziona? Terminologia personalizzata L'uso di una terminologia personalizzata con le richieste di traduzione serve ad assicurare che i nomi dei marchi, i nomi di caratteri, i nomi di modello e altri contenuti univoci vengano tradotti esattamente come desiderato, a prescindere dal contesto e dalla decisione dell'algoritmo Amazon Translate. Impostare un file di terminologia e collegarlo all'account Amazon Translate è un'operazione semplice. Durante la traduzione del testo, scegli semplicemente di usare anche la terminologia personalizzata. Gli eventuali esempi della parola di origine vengono tradotti nel modo desiderato. Ad esempio, considera quanto segue: Amazon Family è una raccolta di vantaggi che offre ai membri Amazon Prime offerte esclusive, ad esempio fino a 20% di sconto su sottoscrizioni a pannolini, cibo per neonati e molto altro. In Francia, è chiamato Amazon Famille. Se traduci Amazon Family in francese utilizzando Amazon Translate senza alcun contesto aggiuntivo, il risultato è Famille Amazon. Anche se si tratta di una traduzione accurata, non è ciò che serve al team Amazon in Francia. Tuttavia, se aggiungi del contesto, come in: "Hai mai acquistato con Amazon Family?", Amazon Translate stabilisce che il nome del programma non deve essere tradotto e il risultato è "Avez-vous déjà fait des achats avec Amazon Family?". Questa è una buona traduzione, ma non ancora ciò che si aspetta il team Amazon. Le terminologie personalizzate possono risolvere problemi di questo tipo. Aggiungendo alla terminologia personalizzata una voce che mostra che il termine Amazon Family deve essere tradotto come Amazon Famille, il team è ora certo che la traduzione sarà sempre la stessa, a prescindere dal contesto. Amazon Family è ora tradotto come Amazon Famille e "Have you ever shopped with Amazon Family?" è ora tradotto come "Avez-vous déjà fait des achats avec Amazon Famille?" Argomenti • Come funziona? (p. 18) • Creazione di una terminologia personalizzata (p. 18) • Uso di terminologie personalizzate (p. 20) • Crittografia della terminologia (p. 21) • Buone prassi (p. 21) Come funziona? In linea generale, quando arriva una richiesta di traduzione, Amazon Translate legge la frase di origine, crea una rappresentazione semantica del contenuto (in altre parole, lo comprende) e genera una traduzione nella lingua di destinazione. Quando un terminologia personalizzata viene utilizzata come parte della richiesta di traduzione, il motore esegue la scansione del file di terminologia prima di restituire il risultato finale. Quando il motore identifica una corrispondenza esatta tra una voce terminologica e una stringa nel testo di origine, individua la stringa appropriata nella traduzione proposta e la sostituisce con la voce terminologica. Nell'esempio Amazon Family, genera innanzitutto la traduzione "Avez-vous déjà fait des achats avec Amazon Family?" ma si interrompe e sostituisce Amazon Family con Amazon Famille prima di fornire la risposta. Creazione di una terminologia personalizzata Per il file di terminologia puoi utilizzare un file CSV o un file TMX con il testo di origine e il termine di destinazione (tradotto). Per ogni termine viene utilizzato un singolo testo di origine, ma possono esserci più termini di destinazione, uno per ogni lingua, purché sia possibile utilizzare la lingua di destinazione e di origine. 18
Amazon Translate Guida per gli sviluppatori Lingue compatibili CSV (valori separati da virgola) La prima colonna contiene il testo di origine e le altre colonne contengono le traduzioni di destinazione. La prima riga è costituita da codici lingua, con la lingua di origine nella prima colonna e la lingua di destinazione nelle altre. en fr de es Amazon Amazon Amazon Amazon TMX (Translation Memory eXchange) Un file TMX è un file di tipo XML comunemente utilizzato da software di traduzione. Anche se il formato è diverso da CSV, i contenuti sono simili: Amazon Amazon Amazon Amazon Questi file vengono quindi collegati all'account Amazon Translate. Quando viene eseguito un processo di traduzione e si sceglie di utilizzare la terminologia personalizzata, Amazon Translate utilizza la parola designata ogni volta che rileva la parola di origine. Lingue compatibili Alcune lingue non cambiano la forma di una parola in base al contesto della frase. Per queste lingue, l'applicazione di una terminologia personalizzata è probabile che migliori la qualità della traduzione complessiva. Tuttavia, alcune lingue presentano variazioni della forma della parola estese. Non è consigliabile applicare la funzione a queste lingue, ma non viene posta alcuna restrizione. La tabella seguente mostra le lingue e i suggerimenti per l'utilizzo di questa funzione: Linguaggio Consigliata/Non consigliata Lingue asiatiche (ad esempio cinese, giapponese, coreano, Si consiglia indonesiano) 19
Puoi anche leggere