

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á.

# Identificação de idioma com trabalhos de transcrição em lote
<a name="lang-id-batch"></a>

Use a identificação de idioma em lote para identificar automaticamente um ou mais idiomas no arquivo de mídia.

Se a mídia tiver apenas um idioma, você poderá habilitar a [identificação de um único idioma](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html#transcribe-StartTranscriptionJob-request-IdentifyLanguage), que identifica o idioma dominante falado no arquivo de mídia e cria a transcrição usando somente esse idioma.

Se a mídia contiver mais de um idioma, você poderá habilitar a [identificação de vários idiomas](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html#transcribe-StartTranscriptionJob-request-IdentifyMultipleLanguages), que identifica todos os idiomas falados no arquivo de mídia e cria a transcrição usando cada idioma identificado. Observe que uma transcrição de vários idiomas é produzida. Você pode usar outros serviços Amazon Translate, como traduzir sua transcrição.

Consulte na tabela de [idiomas compatíveis](supported-languages.md) uma lista completa dos idiomas compatíveis e os códigos de idioma associados.

Para conseguir melhores resultados, o arquivo de mídia deve ter pelo menos 30 segundos de fala.

Para exemplos de uso com o Console de gerenciamento da AWS, AWS CLI, e o SDK do AWS Python, consulte. [Usar a identificação de idioma com transcrições em lote](#lang-id-batch-examples)

## Identificar idiomas em áudio com vários idiomas
<a name="lang-id-batch-multi-language"></a>

Multi-language A identificação é destinada a arquivos de mídia multilíngues e fornece uma transcrição que reflete todos os [idiomas suportados](supported-languages.md) falados em sua mídia. Isso significa que, se os locutores mudarem de idioma no meio da conversa ou se cada participante falar um idioma diferente, a saída de transcrição detectará e transcreverá cada idioma corretamente. Por exemplo, se a mídia contiver um locutor bilíngue que esteja alternando entre inglês americano (`en-US`) e hindi (`hi-IN`), a identificação de vários idiomas poderá identificar e transcrever o inglês americano falado como `en-US` e o hindi falado como `hi-IN`.

Isso difere da identificação de um único idioma, em que apenas um idioma dominante é usado para criar uma transcrição. Nesse caso, qualquer idioma falado que não seja o dominante é transcrito incorretamente.

**nota**  
No momento, não é possível usar edição e modelos de idioma personalizados com a identificação de vários idiomas.

**nota**  
Os seguintes idiomas são atualmente compatíveis com identificação de vários idiomas: en-AB, en-AU, en-GB, en-IE, en-IN, en-NZ, en-US, en-WL, en-ZA, es-ES, es-US, fr-CA, fr-FR, zh-CN, zh-TW, pt-BR, pt-PT, de-CH, de-DE, af-ZA, ar-AE, da-DK, he-IL, hi-IN, id-ID, fa-IR, it-IT, ja-JP, ko-KR, ms-MY, nl-NL, ru-RU, ta-IN, te-IN, th-TH, tr-TR 

Multi-language as transcrições fornecem um resumo dos idiomas detectados e o tempo total em que cada idioma é falado em sua mídia. Veja um exemplo abaixo:

```
"results": {
        "transcripts": [
            {
                "transcript": "welcome to Amazon transcribe. ये तो उदाहरण हैं क्या कैसे कर सकते हैं ।一つのファイルに複数の言語を書き写す"
            }
        ],

    {{...}}

        "language_codes": [
            {
                "language_code": "en-US",
                "duration_in_seconds": 2.45
            },
            {
                "language_code": "hi-IN",
                "duration_in_seconds": 5.325
            },
            {
                "language_code": "ja-JP",
                "duration_in_seconds": 4.15
            }
        ]
}
```

## Melhorar a precisão da identificação de idiomas
<a name="lang-id-batch-improve-accuracy"></a>

Com a identificação de idioma, você tem a opção de incluir uma lista de idiomas que você acha que podem estar presentes na mídia. A inclusão de opções de idioma (`LanguageOptions`) restringe Amazon Transcribe o uso somente dos idiomas que você especifica ao combinar seu áudio com o idioma correto, o que pode acelerar a identificação do idioma e melhorar a precisão associada à atribuição do dialeto correto do idioma.

Se você optar por incluir códigos de idioma, deverá especificar, pelo menos, dois. Não há limite para o número de códigos de idioma que você pode incluir, mas recomendamos usar entre dois e cinco para otimizar a eficiência e a precisão.

**nota**  
Se você incluir códigos de idioma em sua solicitação e nenhum dos códigos de idioma fornecidos corresponder ao idioma ou idiomas identificados em seu áudio, Amazon Transcribe selecionará a correspondência de idioma mais próxima dos códigos de idioma especificados. Em seguida, ele produz uma transcrição nesse idioma. Por exemplo, se sua mídia estiver em inglês dos EUA (`en-US`) e você Amazon Transcribe fornecer os códigos de idioma `zh-CN``fr-FR`, e`de-DE`, Amazon Transcribe provavelmente corresponderá sua mídia ao alemão (`de-DE`) e produzirá uma German-language transcrição. A incompatibilidade entre códigos de idioma e idiomas falados pode resultar em uma transcrição imprecisa; portanto, recomendamos cautela ao incluir códigos de idioma.

## Combinando a identificação do idioma com outros Amazon Transcribe recursos
<a name="lang-id-batch-features"></a>

Você pode usar a identificação de idioma em lote com qualquer outro recurso do Amazon Transcribe . Ao combinar a identificação de idioma com outros recursos, você se limitará aos idiomas compatíveis com esses recursos. Por exemplo, se usar a identificação de idioma com edição de conteúdo, você se limitará ao inglês dos EUA (`en-US`) ou ao espanhol dos EUA (`es-US`), pois esses são os únicos idiomas disponíveis para edição. Consulte [Idiomas oferecidos e recursos específicos do idioma](supported-languages.md) para obter mais informações.

**Importante**  
Se você estiver usando a identificação automática de idioma com a edição de conteúdo habilitada e seu áudio contiver idiomas diferentes do inglês dos EUA (`en-US`) ou do espanhol dos EUA (`es-US`), somente o conteúdo em inglês dos EUA ou espanhol dos EUA será editado em sua transcrição. Outros idiomas não podem ser editados e não há avisos ou falhas no trabalho.



**Modelos de idioma personalizados, vocabulários personalizados e filtros de vocabulário personalizados**

Se você quiser adicionar um ou mais modelos de idioma personalizados, vocabulários personalizados ou filtros de vocabulário personalizados à solicitação de identificação de idioma, inclua o parâmetro [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_LanguageIdSettings.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_LanguageIdSettings.html). Depois, é possível especificar um código de idioma com um modelo de idioma personalizado, vocabulário personalizado e filtro de vocabulário personalizado correspondentes. Observe que a identificação de vários idiomas não é compatível com modelos de idioma personalizados.

É recomendável que você inclua `LanguageOptions` ao usar [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_LanguageIdSettings.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_LanguageIdSettings.html) para garantir que o dialeto correto do idioma seja identificado. Por exemplo, se você especificar um vocabulário `en-US` personalizado, mas Amazon Transcribe determinar qual é o idioma falado em sua mídia`en-AU`, seu vocabulário personalizado *não será* aplicado à sua transcrição. Se você incluir `LanguageOptions` e especificar `en-US` como o único dialeto do idioma inglês, o vocabulário personalizado *será* aplicado à transcrição.

Para ver exemplos de [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_LanguageIdSettings.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_LanguageIdSettings.html) em uma solicitação, consulte a Opção 2 nos painéis suspensos da **AWS CLI** e dos **AWS SDKs** na seção [Usar a identificação de idioma com transcrições em lote](#lang-id-batch-examples).

## Usar a identificação de idioma com transcrições em lote
<a name="lang-id-batch-examples"></a>

Você pode usar a identificação automática de idioma em uma tarefa de transcrição em lote usando o **Console de gerenciamento da AWS**, a **AWS CLI** ou os **SDKs da AWS **. Veja os seguintes exemplos:

### Console de gerenciamento da AWS
<a name="lang-id-console-batch"></a>

1. Faça login no [Console de gerenciamento da AWS](https://console.aws.amazon.com/transcribe/).

1. No painel de navegação, escolha **Tarefas de transcrição** e selecione **Criar tarefa** (no canto superior direito). Isso abre a página **Especificar os detalhes da tarefa**.

1. No painel **Configurações de tarefa**, encontre a seção **Configurações de idioma** e selecione **Identificação automática de idioma** ou **Identificação automática de vários idiomas**.

   Você pode selecionar várias opções de idioma (na caixa suspensa *Selecionar idiomas*) caso saiba quais idiomas estão presentes no arquivo de áudio. Fornecer opções de idioma pode melhorar a precisão, mas não é obrigatório.  
![Amazon Transcribe captura de tela do console: o painel “configurações do trabalho” na página “especificar detalhes do trabalho”.](http://docs.aws.amazon.com/pt_br/transcribe/latest/dg/images/lang-id-batch1.png)

1. Preencha os outros campos que deseja incluir na página **Especificar os detalhes da tarefa** e selecione **Próximo**. Isso leva você à página **Configurar tarefa - *opcional***.  
![Amazon Transcribe captura de tela do console: a página 'configurar trabalho'.](http://docs.aws.amazon.com/pt_br/transcribe/latest/dg/images/lang-id-configure-batch.png)

1. Selecione **Criar tarefa** para executar a tarefa de transcrição. 

### AWS CLI
<a name="lang-id-cli"></a>

Este exemplo usa o comando [start-transcription-job](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/transcribe/start-transcription-job.html) e o parâmetro `IdentifyLanguage`. Para obter mais informações, consulte [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html) e [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_LanguageIdSettings.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_LanguageIdSettings.html).

**Opção 1**: sem o parâmetro `language-id-settings`. Use essa opção se você **não** estiver incluindo um modelo de idioma personalizado, vocabulário personalizado ou filtro de vocabulário personalizado em na solicitação. `language-options` é opcional, mas recomendado.

```
aws transcribe start-transcription-job \
--region {{us-west-2}} \
--transcription-job-name {{my-first-transcription-job}} \
--media MediaFileUri=s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}} \
--output-bucket-name {{amzn-s3-demo-bucket}} \
--output-key {{my-output-files}}/ \    
--identify-language \  (or --identify-multiple-languages) \
--language-options "{{en-US}}" "{{hi-IN}}"
```

**Opção 1**: com o parâmetro `language-id-settings`. Use essa opção se **estiver** incluindo um modelo de idioma personalizado, um vocabulário personalizado ou um filtro de vocabulário personalizado na solicitação.

```
aws transcribe start-transcription-job \
--region {{us-west-2}} \
--transcription-job-name {{my-first-transcription-job}} \
--media MediaFileUri=s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}} \
--output-bucket-name {{amzn-s3-demo-bucket}} \
--output-key {{my-output-files}}/ \
--identify-language \  (or --identify-multiple-languages)
--language-options "{{en-US}}" "{{hi-IN}}" \
--language-id-settings {{en-US}}=VocabularyName={{my-en-US-vocabulary}},{{en-US}}=VocabularyFilterName={{my-en-US-vocabulary-filter}},{{en-US}}=LanguageModelName={{my-en-US-language-model}},{{hi-IN}}=VocabularyName={{my-hi-IN-vocabulary}},{{hi-IN}}=VocabularyFilterName={{my-hi-IN-vocabulary-filter}}
```

Veja a seguir outro exemplo usando o comando [start-transcription-job](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/transcribe/start-transcription-job.html) e um corpo de solicitação que identifica o idioma.

```
aws transcribe start-transcription-job \
--region {{us-west-2}} \
--cli-input-json file://{{filepath}}/{{my-first-language-id-job.json}}
```

O arquivo *my-first-language-id-job.json* contém o corpo de solicitação a seguir.

**Opção 1**: sem o parâmetro `LanguageIdSettings`. Use essa opção se você **não** estiver incluindo um modelo de idioma personalizado, vocabulário personalizado ou filtro de vocabulário personalizado em na solicitação. `LanguageOptions` é opcional, mas recomendado.

```
{
  "TranscriptionJobName": "{{my-first-transcription-job}}",  
  "Media": {
        "MediaFileUri": "s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}}"
   },
  "OutputBucketName": "{{amzn-s3-demo-bucket}}",
  "OutputKey": "{{my-output-files}}/", 
  "IdentifyLanguage": {{true}},  (or "IdentifyMultipleLanguages": {{true}}),
  "LanguageOptions": [
        "{{en-US}}", "{{hi-IN}}"  
  ]
}
```

**Opção 1**: com o parâmetro `LanguageIdSettings`. Use essa opção se **estiver** incluindo um modelo de idioma personalizado, um vocabulário personalizado ou um filtro de vocabulário personalizado na solicitação.

```
{
   "TranscriptionJobName": "{{my-first-transcription-job}}",  
   "Media": {
        "MediaFileUri": "s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}}"
   },
   "OutputBucketName": "{{amzn-s3-demo-bucket}}",
   "OutputKey": "{{my-output-files}}/", 
   "IdentifyLanguage": {{true}},  (or "IdentifyMultipleLanguages": {{true}})
   "LanguageOptions": [
        "{{en-US}}", "{{hi-IN}}"  
   ],
   "LanguageIdSettings": { 
         "{{en-US}}" : { 
            "LanguageModelName": "{{my-en-US-language-model}}",
            "VocabularyFilterName": "{{my-en-US-vocabulary-filter}}",
            "VocabularyName": "{{my-en-US-vocabulary}}"
         },
         "{{hi-IN}}": {
             "VocabularyName": "{{my-hi-IN-vocabulary}}",
             "VocabularyFilterName": "{{my-hi-IN-vocabulary-filter}}"
         }
    }
}
```

### AWS SDK para Python (Boto3)
<a name="lang-id-python-batch"></a>

Este exemplo usa o AWS SDK para Python (Boto3) para identificar o idioma do seu arquivo usando o `IdentifyLanguage` argumento do método [start\_transcription\_job](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/transcribe.html#TranscribeService.Client.start_transcription_job). Para obter mais informações, consulte [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html) e [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_LanguageIdSettings.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_LanguageIdSettings.html).

Para ver exemplos adicionais de uso dos AWS SDKs, incluindo exemplos específicos de recursos, cenários e entre serviços, consulte o capítulo. [Exemplos de código para o Amazon Transcribe usando AWS SDKs](service_code_examples.md)

**Opção 1**: sem o parâmetro `LanguageIdSettings`. Use essa opção se você **não** estiver incluindo um modelo de idioma personalizado, vocabulário personalizado ou filtro de vocabulário personalizado em na solicitação. `LanguageOptions` é opcional, mas recomendado.

```
from __future__ import print_function
import time
import boto3
transcribe = boto3.client('transcribe', '{{us-west-2}}')
job_name = "{{my-first-transcription-job}}"
job_uri = "s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}}"
transcribe.start_transcription_job(
    TranscriptionJobName = job_name,
    Media = {
        'MediaFileUri': job_uri
    },
    OutputBucketName = '{{amzn-s3-demo-bucket}}',
    OutputKey = '{{my-output-files}}/',
    MediaFormat = '{{flac}}',
    IdentifyLanguage = {{True}},  (or IdentifyMultipleLanguages = {{True}}),
    LanguageOptions = [
        '{{en-US}}', '{{hi-IN}}'
    ]
)

while True:
    status = transcribe.get_transcription_job(TranscriptionJobName = job_name)
    if status['TranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']:
        break
    print("Not ready yet...")
    time.sleep(5)
print(status)
```

**Opção 1**: com o parâmetro `LanguageIdSettings`. Use essa opção se **estiver** incluindo um modelo de idioma personalizado, um vocabulário personalizado ou um filtro de vocabulário personalizado na solicitação.

```
from __future__ import print_function
import time
import boto3
transcribe = boto3.client('transcribe')
job_name = "{{my-first-transcription-job}}"
job_uri = "s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}}"
transcribe.start_transcription_job(
    TranscriptionJobName = job_name,
    Media = {
        'MediaFileUri': job_uri
    },
    OutputBucketName = '{{amzn-s3-demo-bucket}}',
    OutputKey = '{{my-output-files}}/', 
    MediaFormat='{{flac}}',
    IdentifyLanguage={{True}},  (or IdentifyMultipleLanguages={{True}})
    LanguageOptions = [
        '{{en-US}}', '{{hi-IN}}'
    ],
    LanguageIdSettings={
        'en-US': {
            'VocabularyName': '{{my-en-US-vocabulary}}',
            'VocabularyFilterName': '{{my-en-US-vocabulary-filter}}',
            'LanguageModelName': '{{my-en-US-language-model}}'
        },
        'hi-IN': {
            'VocabularyName': '{{my-hi-IN-vocabulary}}',
            'VocabularyFilterName': '{{my-hi-IN-vocabulary-filter}}'
        }   
    }
)

while True:
    status = transcribe.get_transcription_job(TranscriptionJobName = job_name)
    if status['TranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']:
        break
    print("Not ready yet...")
    time.sleep(5)
print(status)
```