

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Customizar traduções com terminologia personalizada
<a name="how-custom-terminology"></a>

Use terminologias personalizadas junto com suas solicitações de tradução para garantir que seus nomes de marcas, nomes de personagens, nomes de modelos e outros conteúdos exclusivos sejam traduzidos para o resultado desejado.

Você pode criar arquivos de terminologia e enviá-los para sua conta do Amazon Translate. Para obter informações sobre tamanhos de arquivo e número de arquivos de terminologia, consulte [Cotas de serviço](what-is-limits.md#limits). Ao traduzir texto, você pode, opcionalmente, escolher um arquivo de terminologia personalizado para usar. Quando o Amazon Translate encontra uma correspondência entre o texto de origem e o arquivo de terminologia, ele usa a tradução do arquivo terminológico.

Considere o seguinte exemplo: O *Amazon Photos fornece armazenamento gratuito de fotos* e vídeos para membros do Amazon Prime. Em francês, o nome não está traduzido: permanece como *Amazon Photos*. 

Ao usar o Amazon Translate para traduzir o *Amazon Photos* para o francês sem nenhum contexto adicional, o resultado é *Photos d'Amazon*, que não é a tradução desejada. 

Se você adicionar uma entrada de terminologia personalizada para o termo *Amazon Photos*, especificando que a tradução francesa é *Amazon Photos, o Amazon* Translate usa a terminologia personalizada para traduzir a frase para o resultado desejado.

O Amazon Translate não garante que usará o termo alvo para cada tradução. A terminologia personalizada usa o significado do termo fonte e do termo de destino no contexto da tradução para decidir se deve usar o termo alvo. Para obter mais informações, consulte [Práticas recomendadas](ct-best-practices.md).

**Topics**
+ [Como criar uma terminologia personalizada](creating-custom-terminology.md)
+ [Como usar terminologias personalizadas](using-ct.md)
+ [Exemplo de terminologia personalizada usando o AWS SDK para Python (Boto)](examples-ct.md)
+ [Criptografar sua terminologia](protect-terminology.md)
+ [Práticas recomendadas](ct-best-practices.md)

# Como criar uma terminologia personalizada
<a name="creating-custom-terminology"></a>

Você define a terminologia personalizada criando um arquivo de terminologia. O Amazon Translate oferece suporte aos formatos de arquivo CSV, TSV ou TMX. Cada entrada no arquivo contém o termo fonte e o termo equivalente (traduzido) para cada idioma de destino.

Após você criar um arquivo de terminologia, você o envia para sua conta do Amazon Translate.

**Importante**  
O texto fonte em uma terminologia personalizada diferencia maiúsculas de *minúsculas*. Durante a tradução, o Amazon Translate usa a terminologia personalizada quando encontra uma correspondência exata no documento de entrada.

## Formato de arquivo de terminologia
<a name="creating-custom-terminology-examples"></a>

O exemplo a seguir mostra um arquivo de terminologia no formato CSV.

**CSV (valores separados por vírgula)**

```
en,fr,es
Amazon Photos,Amazon Photos,Amazon Photos
```

O exemplo a seguir mostra um arquivo de terminologia no formato TMX. Um arquivo TMX usa um formato XML que o software de tradução geralmente usa.

**TMX (Translation Memory eXchange) **

```
<?xml version="1.0" encoding="UTF-8"?>
 <tmx version="1.4">
  <header
     creationtool="XYZTool" creationtoolversion="0"
     datatype="PlainText" segtype="sentence"
     adminlang="en-us" srclang="en"
     o-tmf="test"/>
  <body>
    <tu>
      <tuv xml:lang="en">
        <seg>Amazon Photos</seg>
      </tuv>
      <tuv xml:lang="fr">
        <seg>Amazon Photos</seg>
      </tuv>
      <tuv xml:lang="es">
        <seg>Amazon Photos</seg>
      </tuv>
    </tu>   
  </body>
 </tmx>
```

## Direcionalidade
<a name="creating-custom-terminology-directionality"></a>

Ao fazer upload de um arquivo de terminologia personalizada, você define o valor de *direcionalidade* para a terminologia personalizada. A direcionalidade indica se seu arquivo de terminologia especifica um idioma de origem ou vários idiomas de origem.

Para direcionalidade, defina um dos seguintes valores:

**Unidirecional**  
O arquivo de terminologia contém um idioma de origem (o primeiro idioma da lista). Todos os outros idiomas são idiomas-alvo.   
Por exemplo, em um arquivo CSV, a primeira coluna contém texto para o idioma de origem e todas as outras colunas contêm texto para os idiomas de destino.

**Multidirecional**  
Qualquer idioma no arquivo pode ser um idioma de origem ou um idioma de destino. Por exemplo, se seu arquivo de terminologia contiver texto em inglês, francês e espanhol, você poderá usá-lo para trabalhos que traduzam os seguintes pares de idiomas:  
+ Inglês para francês
+ Inglês para espanhol
+ Francês para inglês
+ Francês para espanhol
+ Espanhol para inglês
+ Espanhol para francês

Por outro lado, você precisaria criar três arquivos de terminologia unidirecionais para esses seis trabalhos de tradução (um para cada idioma de origem).

# Como usar terminologias personalizadas
<a name="using-ct"></a>

Para usar uma terminologia personalizada ao traduzir texto com a [TranslateText](https://docs.aws.amazon.com/translate/latest/APIReference/API_TranslateText.html)operação, inclua o parâmetro opcional`TerminologyNames`. 

Por exemplo, se você carregar o seguinte arquivo de terminologia, chamado `Amazon_Family.csv`, para a sua conta:

```
     en,fr
     Amazon Family,Amazon Famille
```

Você pode usar o seguinte comando CLI para traduzir o texto usando a Terminologia Personalizada.

**nota**  
Este exemplo é formatado para Unix, Linux e macOS. Para Windows, substitua o caractere de continuação Unix de barra invertida (\$1) no final de cada linha por um circunflexo (^).

```
aws translate translate-text \
     --region region \
     --source-language-code "en" \
     --target-language-code "fr" \
     --terminology-names "Amazon_Family" \
     --text "Have you ever stored videos in Amazon Family?"
```

Isso usa a terminologia personalizada selecionada para traduzir esse texto como “Avez-vous déjà fait des achats avec Amazon Famille?” em vez da tradução direta (mas indesejável) “Avez-vous déjà fait des achats avec Famille Amazon?”

O exemplo a seguir mostra como usar o mesmo arquivo de terminologia em Python.

```
import boto3
     
translate = boto3.client(service_name='translate')
  
print("Translating 'Have you ever shopped with Amazon Family?' from English to French with the 'Amazon_Family' custom terminology...")
response = translate.translate_text(Text="Have you ever shopped with Amazon Family?", TerminologyNames=["Amazon_Family"], SourceLanguageCode="en", TargetLanguageCode="fr")
print("Translated text: " + response.get('TranslatedText'))
print("\n")
```

Para obter mais informações sobre como usar as operações do Amazon Translate com Terminologias personalizadas, consulte [API Operations](https://docs.aws.amazon.com/translate/latest/APIReference/API_Operations.html). 

# Exemplo de terminologia personalizada usando o AWS SDK para Python (Boto)
<a name="examples-ct"></a>

O exemplo a seguir mostra como usar as operações de terminologia personalizada em Python. Para executar o exemplo, instale o SDK do Python por meio do. AWS CLI Para obter instruções, consulte [Instale e configure o AWS Command Line Interface (AWS CLI)](setting-up.md#setup-awscli).

```
    #!/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)
     
    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")
    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.")
```

# Criptografar sua terminologia
<a name="protect-terminology"></a>

O Amazon Translate procura proteger todos os seus dados, e suas terminologias personalizadas não são diferentes. Toda terminologia personalizada criada é criptografada para que possa ser acessada apenas por você.

Há três opções de criptografia disponíveis:
+ Usando AWS criptografia. AWS criptografia é a opção padrão para proteger suas informações.
+ Usar uma chave de criptografia associada à sua conta. Um menu no console fornecerá uma opção de chaves de criptografia associadas para usar.
+ Usar uma chave de criptografia não associada à sua conta. O console exibe um campo de entrada para você inserir o nome do recurso da Amazon (ARN) da chave de criptografia.

# Práticas recomendadas
<a name="ct-best-practices"></a>

Use as seguintes práticas recomendadas gerais ao usar terminologias personalizadas:
+ Mantenha sua terminologia personalizada organizada. Inclua somente termos para os quais você precisa controlar os valores traduzidos.
+ As terminologias personalizadas diferenciam letras maiúsculas de minúsculas. Se você quiser uma tradução de destino para as versões maiúsculas e não maiúsculas de uma palavra, inclua uma entrada para cada versão.
+ A terminologia personalizada não serve como uma ferramenta para controlar espaçamento, pontuação ou capitalização. Por exemplo, evite os seguintes tipos de entradas: 
  + Adicionar espaços — EN: USA FR: U S A
  + Adicionando pontuação — EN: USA FR: U.S.A
  + Alterando a capitalização — EN: USA FR: Usa
+ Não inclua traduções diferentes para a mesma frase fonte. Por exemplo:
  + Entrada \$11 — EN: Amazon FR: Amazon
  + Entrada \$12 — EN: Amazon FR: Amazone
+ Você pode criar arquivos de terminologia personalizados para qualquer um dos idiomas compatíveis com o Amazon Translate.

O Amazon Translate não garante que a terminologia personalizada use o termo alvo para cada tradução. Para obter alta precisão com a terminologia personalizada, siga estas práticas recomendadas ao criar o conteúdo para o arquivo de terminologia:
+ A terminologia personalizada funciona bem com qualquer palavra, incluindo verbos e homógrafos. Nomes próprios, como nomes de marcas e nomes de produtos, são entradas ideais.
+ Os termos-alvo devem ser fluentes no idioma de destino. A terminologia personalizada não é recomendada para termos-alvo que contêm vários caracteres especiais ou formatação. 
+ Você pode incluir frases ou cláusulas com várias palavras em seu arquivo de terminologia. No entanto, termos que contêm várias palavras têm menos probabilidade de serem lidos fluentemente nos idiomas de destino.
+ A terminologia personalizada usa o significado do termo fonte e do termo de destino no contexto da tradução para decidir se deve usar o termo alvo. Se um termo-alvo não for adequado a um determinado contexto de tradução, o Amazon Translate não poderá usar o termo-alvo. 

  Por exemplo, se seu arquivo de terminologia contiver a seguinte entrada de inglês para francês: 

  `EN: order, FR: commande`(baseado no inglês “to order” traduzido para o francês “comandante”).

  O Amazon Translate não usa essa entrada ao traduzir a seguinte frase, porque o contexto da tradução não corresponde: 

  “**Para que** possamos ajudá-lo, por favor, compartilhe seu nome.” 

  Sugestões para evitar esse tipo de situação: 
  + Certifique-se de que o termo alvo para cada idioma seja semanticamente equivalente ao termo de origem. 
  + Evite termos de origem ou de destino que tenham vários significados.