Localizar ficheiros de áudio para transcrição em lote

A transcrição em lote é usada para transcrever uma grande quantidade de áudio no armazenamento. A transcrição em lote pode acessar arquivos de áudio de dentro ou fora do Azure.

Quando os arquivos de áudio de origem são armazenados fora do Azure, eles podem ser acessados por meio de um URI público (como "https://crbn.us/hello.wav"). Os ficheiros devem ser diretamente acessíveis; Não há suporte para URIs que exigem autenticação ou que invocam scripts interativos antes que o arquivo possa ser acessado.

Os arquivos de áudio armazenados no armazenamento de Blob do Azure podem ser acessados por meio de um dos dois métodos:

Você pode especificar um ou vários arquivos de áudio ao criar uma transcrição. Recomendamos que você forneça vários arquivos por solicitação ou aponte para um contêiner de armazenamento de Blob do Azure com os arquivos de áudio a serem transcritos. O serviço de transcrição em lote pode lidar com um grande número de transcrições enviadas. O serviço transcreve os ficheiros em simultâneo, o que reduz o tempo de reviravolta.

Formatos de áudio e codecs suportados

A API de transcrição em lote suporta muitos formatos e codecs diferentes, tais como:

  • WAV
  • MP3
  • OPUS/OGG
  • FLAC
  • AMM
  • AAC
  • ALAW no recipiente WAV
  • MULAW no contentor WAV
  • RAM
  • WebM
  • M4A
  • SPEEX

Nota

O serviço de transcrição em lote integra o GStreamer e pode aceitar mais formatos e codecs sem retornar erros, enquanto sugerimos o uso de formatos sem perdas, como WAV (codificação PCM) e FLAC para garantir a melhor qualidade de transcrição.

Carregamento do Armazenamento de Blobs do Azure

Quando os arquivos de áudio estão localizados em uma conta de Armazenamento de Blob do Azure, você pode solicitar a transcrição de arquivos de áudio individuais ou de um contêiner inteiro de Armazenamento de Blob do Azure. Você também pode gravar resultados de transcrição em um contêiner de Blob.

Nota

Para limites de blob e contêiner, consulte cotas e limites de transcrição em lote.

Siga estas etapas para criar uma conta de armazenamento e fazer upload de arquivos wav do seu diretório local para um novo contêiner.

  1. Aceda ao portal do Azure e inicie sessão com a sua conta do Azure.
  2. Crie um recurso de conta de armazenamento no portal do Azure. Utilize a mesma subscrição e o mesmo grupo de recursos que o recurso de Voz.
  3. Selecione a conta de armazenamento.
  4. No grupo Armazenamento de dados no painel esquerdo, selecione Contêineres.
  5. Selecionar + Contentor.
  6. Insira um nome para o novo contêiner e selecione Criar.
  7. Selecione o novo contêiner.
  8. Selecione Carregar.
  9. Escolha os ficheiros a carregar e selecione Carregar.

Mecanismo de segurança de serviços confiáveis do Azure

Esta seção explica como configurar e limitar o acesso aos seus arquivos de áudio de origem de transcrição em lote em uma conta de Armazenamento do Azure usando o mecanismo de segurança de serviços confiáveis do Azure.

Nota

Com o mecanismo de segurança de serviços confiáveis do Azure, você precisa usar o armazenamento de Blob do Azure para armazenar arquivos de áudio. Não há suporte para o uso de Arquivos do Azure.

Se você executar todas as ações nesta seção, sua conta de armazenamento será configurada da seguinte maneira:

Assim, na verdade, sua conta de armazenamento fica completamente "bloqueada" e não pode ser usada em nenhum cenário além de transcrever arquivos de áudio que já estavam presentes no momento em que a nova configuração foi aplicada. Você deve considerar esta configuração como um modelo no que diz respeito à segurança de seus dados de áudio e personalizá-los de acordo com suas necessidades.

Por exemplo, você pode permitir o tráfego de endereços IP públicos selecionados e redes virtuais do Azure. Você também pode configurar o acesso à sua conta de Armazenamento usando pontos de extremidade privados (consulte também este tutorial), reativar o acesso usando a chave da conta de Armazenamento, permitir o acesso a outros serviços confiáveis do Azure, etc.

Nota

O uso de pontos de extremidade privados para Fala não é necessário para proteger a conta de armazenamento. Você pode usar um ponto de extremidade privado para solicitações de API de transcrição em lote, enquanto acessa separadamente os arquivos de áudio de origem de uma conta de armazenamento segura ou o contrário.

Ao seguir as etapas abaixo, você restringe severamente o acesso à conta de armazenamento. Em seguida, você atribui as permissões mínimas necessárias para a identidade gerenciada por recurso de fala para acessar a conta de armazenamento.

Habilitar a identidade gerenciada atribuída ao sistema para o recurso de Fala

Siga estas etapas para habilitar a identidade gerenciada atribuída ao sistema para o recurso de fala que você usa para transcrição em lote.

  1. Aceda ao portal do Azure e inicie sessão com a sua conta do Azure.

  2. Selecione o recurso Fala.

  3. No grupo Gerenciamento de Recursos no painel esquerdo, selecione Identidade.

  4. Na guia Sistema atribuído, selecione Ativado para obter o status.

    Importante

    A identidade gerenciada atribuída ao usuário não atenderá aos requisitos para o cenário de conta de armazenamento de transcrição em lote. Certifique-se de que ativa a identidade gerida atribuída pelo sistema.

  5. Selecione Guardar

Agora, a identidade gerenciada para seu recurso de fala pode ter acesso à sua conta de armazenamento.

Restringir o acesso à conta de armazenamento

Siga estas etapas para restringir o acesso à conta de armazenamento.

Importante

Carregue arquivos de áudio em um contêiner de Blob antes de bloquear o acesso à conta de armazenamento.

  1. Aceda ao portal do Azure e inicie sessão com a sua conta do Azure.
  2. Selecione a conta de armazenamento.
  3. No grupo Configurações no painel esquerdo, selecione Configuração.
  4. Selecione Desativado para Permitir acesso público ao Blob.
  5. Selecione Desativado para Permitir acesso à chave da conta de armazenamento
  6. Selecione Guardar.

Para obter mais informações, consulte Impedir acesso público de leitura anônimo a contêineres e blobs e Impedir autorização de chave compartilhada para uma conta de Armazenamento do Azure.

Configurar o firewall do Armazenamento do Azure

Tendo acesso restrito à conta de armazenamento, você precisa conceder acesso a identidades gerenciadas específicas. Siga estas etapas para adicionar acesso ao recurso de fala.

  1. Aceda ao portal do Azure e inicie sessão com a sua conta do Azure.

  2. Selecione a conta de armazenamento.

  3. No grupo Segurança + rede no painel esquerdo, selecione Rede.

  4. Na guia Firewalls e redes virtuais, selecione Habilitado em redes virtuais e endereços IP selecionados.

  5. Desmarque todas as caixas de seleção.

  6. Verifique se o roteamento de rede da Microsoft está selecionado.

  7. Na seção Instâncias de recurso, selecione Microsoft.CognitiveServices/accounts como o tipo de recurso e selecione seu recurso de fala como o nome da instância.

  8. Selecione Guardar.

    Nota

    Pode levar até 5 minutos para que as alterações de rede se propaguem.

Embora agora o acesso à rede seja permitido, o recurso de fala ainda não pode acessar os dados na conta de armazenamento. Você precisa atribuir uma função de acesso específica para a identidade gerenciada por recursos de fala.

Atribuir função de acesso a recursos

Siga estas etapas para atribuir a função Leitor de Dados de Blob de Armazenamento à identidade gerenciada do seu recurso de Fala.

Importante

Você precisa receber a função de Proprietário da conta de Armazenamento ou escopo superior (como Assinatura) para executar a operação nas próximas etapas. Isso ocorre porque somente a função Proprietário pode atribuir funções a outras pessoas. Veja os detalhes aqui.

  1. Aceda ao portal do Azure e inicie sessão com a sua conta do Azure.

  2. Selecione a conta de armazenamento.

  3. Selecione o menu Controle de acesso (IAM) no painel esquerdo.

  4. Selecione Adicionar atribuição de função no bloco Conceder acesso a este recurso .

  5. Selecione Storage Blob Data Reader em Função e, em seguida, selecione Avançar.

  6. Selecione Identidade gerenciada em Membros>Atribuir acesso a.

  7. Atribua a identidade gerenciada do recurso de Fala e selecione Revisar + atribuir.

    Screenshot of the managed role assignment review.

  8. Depois de confirmar as configurações, selecione Revisar + atribuir

Agora, a identidade gerenciada pelo recurso de fala tem acesso à conta de armazenamento e pode acessar os arquivos de áudio para transcrição em lote.

Com a identidade gerenciada atribuída ao sistema, você usa uma URL de conta de armazenamento simples (sem SAS ou outras adições) ao criar uma solicitação de transcrição em lote. Por exemplo:

{
    "contentContainerUrl": "https://<storage_account_name>.blob.core.windows.net/<container_name>"
}

Caso contrário, você poderia especificar arquivos individuais no contêiner. Por exemplo:

{
    "contentUrls": [
        "https://<storage_account_name>.blob.core.windows.net/<container_name>/<file_name_1>",
        "https://<storage_account_name>.blob.core.windows.net/<container_name>/<file_name_2>"
    ]
}

URL SAS para transcrição em lote

Uma assinatura de acesso compartilhado (SAS) é um URI que concede acesso restrito a um contêiner de Armazenamento do Azure. Use-o quando quiser conceder acesso aos seus arquivos de transcrição em lote para um intervalo de tempo específico sem compartilhar a chave da conta de armazenamento.

Gorjeta

Se o contêiner com arquivos de origem de transcrição em lote só deve ser acessado pelo seu recurso de Fala, use o mecanismo de segurança de serviços confiáveis do Azure.

Siga estas etapas para gerar uma URL SAS que você pode usar para transcrições em lote.

  1. Conclua as etapas no carregamento do Armazenamento de Blobs do Azure para criar uma conta de Armazenamento e carregar arquivos de áudio para um novo contêiner.

  2. Selecione o novo contêiner.

  3. No grupo Configurações no painel esquerdo, selecione Tokens de acesso compartilhado.

  4. Selecionar + Contentor.

  5. Selecione Ler e Listar Permissões.

    Screenshot of the container SAS URI permissions.

  6. Insira os tempos de início e expiração do URI SAS ou deixe os padrões.

  7. Selecione Gerar token SAS e URL.

Você usa a URL SAS quando cria uma solicitação de transcrição em lote. Por exemplo:

{
    "contentContainerUrl": "https://<storage_account_name>.blob.core.windows.net/<container_name>?SAS_TOKEN"
}

Caso contrário, você poderia especificar arquivos individuais no contêiner. Você deve gerar e usar uma URL SAS diferente com permissões de leitura (r) para cada arquivo. Por exemplo:

{
    "contentUrls": [
        "https://<storage_account_name>.blob.core.windows.net/<container_name>/<file_name_1>?SAS_TOKEN_1",
        "https://<storage_account_name>.blob.core.windows.net/<container_name>/<file_name_2>?SAS_TOKEN_2"
    ]
}

Próximos passos