IBM Cloud Docs
Introdução ao Speech to Text

Introdução ao Speech to Text

O serviço IBM Watson® Speech to Text transcreve áudio para texto para ativar os recursos de transcrição de voz para os aplicativos. Este tutorial baseado em curl pode ajudá-lo a iniciar rapidamente com o serviço. Os exemplos mostram como chamar o método POST /v1/recognize do serviço para solicitar uma transcrição.

O tutorial usa o utilitário de linha de comandos curl para demonstrar chamadas de API REST. Para obter mais informações sobre curl, consulte Usando curl com exemplos Watson.

IBM Cloud Assista ao vídeo a seguir para obter um resumo visual de como começar a usar o serviço Speech to Text.

Antes de Iniciar

IBM Cloud

IBM Cloud

  • Crie uma instância do serviço:

    1. Vá até a página Speech to Text no catálogo IBM Cloud.
    2. Inscreva-se para obter uma conta gratuita do IBM Cloud ou efetue login.
    3. Leia e concorde com os termos do contrato de licença.
    4. Clique em Criar.
  • Copie as credenciais para autenticar sua instância de serviço:

    1. Visualize a página Gerenciar da instância de serviço:

      • Se você estiver na página Introdução para sua instância de serviço, clique na entrada Gerenciar na lista de tópicos.
      • Se você estiver na página Lista de Recursos, expanda o agrupamento AI / Machine Learning na coluna Nome, e clique no nome de sua instância de serviço.
    2. Na página Gerenciar, clique em Mostrar Credenciais na caixa Credenciais.

    3. Copie os valores API Key e URL para a instância de serviço.

Este tutorial usa uma chave API para autenticação. Na produção, use um token IAM. Para obter mais informações, consulte Autenticação em IBM Cloud.

IBM Cloud Pak for Data

IBM Cloud Pak for Data

O serviço Speech to Text deve ser instalado e configurado antes de iniciar este tutorial. Para obter mais informações, consulte Watson Serviços de fala em Cloud Pak for Data.

  1. Crie uma instância do serviço usando o Web client, a API ou a interface de comandos. Para obter mais informações sobre a criação de uma instância de serviço em IBM Cloud Pak for Data, consulte Criação de uma instância de serviço para os serviços de fala de Watson.
  2. Siga as instruções em Criando uma instância do Watson Speech Services para obter um token de acesso para a instância. Este tutorial usa um token de acesso para autenticar para o serviço.

Transcrever áudio sem opções

Chame o método POST /v1/recognize para solicitar uma transcrição básica de um arquivo de áudio FLAC sem nenhum parâmetro de solicitação adicional.

  1. Faça o download do arquivo de áudio da amostra audio-file.flac.

  2. Emita o comando a seguir para chamar o método /v1/recognize do serviço para a transcrição básica sem parâmetros. O exemplo usa o cabeçalho Content-Type para indicar o tipo de áudio, audio/flac. O exemplo usa o modelo de idioma padrão, en-US_BroadbandModel para transcrição.

    IBM Cloud

    • Substitua {apikey} e {url} por sua chave de API e URL.
    • Modifique {path_to_file} para especificar a localização do arquivo audio-file.flac.
    curl -X POST -u "apikey:{apikey}" \
    --header "Content-Type: audio/flac" \
    --data-binary @{path_to_file}audio-file.flac \
    "{url}/v1/recognize"
    

    IBM Cloud Pak for Data IBM Software Hub

    • Substitua {token} e {url} pelo token de acesso e URL de sua instância de serviço.
    • Modifique {path_to_file} para especificar a localização do arquivo audio-file.flac.
    curl -X POST \
    --header "Authorization: Bearer {token}" \
    --header "Content-Type: audio/flac" \
    --data-binary @{path_to_file}audio-file.flac \
    "{url}/v1/recognize"
    

O serviço retorna os resultados da transcrição a seguir:

{
  "result_index": 0,
  "results": [
    {
      "alternatives": [
        {
          "confidence": 0.96
          "transcript": "several tornadoes touch down as a line of severe thunderstorms swept through Colorado on Sunday "
        }
      ],
      "final": true
    }
  ]
}

Transcrever áudio com opções

Chame o método POST /v1/recognize para transcrever o mesmo arquivo de áudio FLAC, mas especifique dois parâmetros de transcrição.

  1. Se necessário, faça o download do arquivo de áudio de amostra audio-file.flac.

  2. Emita o comando a seguir para chamar o método /v1/recognize do serviço com dois parâmetros extras. Configure o parâmetro timestamps como true para indicar o início e o fim de cada palavra no fluxo de áudio. Configure o parâmetro max_alternatives como 3 para receber as três alternativas mais prováveis para a transcrição. O exemplo usa o cabeçalho Content-Type para indicar o tipo de áudio, audio/flac e a solicitação usa o modelo padrão, en-US_BroadbandModel.

    IBM Cloud

    • Substitua {apikey} e {url} por sua chave de API e URL.
    • Modifique {path_to_file} para especificar a localização do arquivo audio-file.flac.
    curl -X POST -u "apikey:{apikey}" \
    --header "Content-Type: audio/flac" \
    --data-binary @{path_to_file}audio-file.flac \
    "{url}/v1/recognize?timestamps=true&max_alternatives=3"
    

    IBM Cloud Pak for Data IBM Software Hub

    • Substitua {token} e {url} pelo token de acesso e URL de sua instância de serviço.
    • Modifique {path_to_file} para especificar a localização do arquivo audio-file.flac.
    curl -X POST \
    --header "Authorization: Bearer {token}" \
    --header "Content-Type: audio/flac" \
    --data-binary @{path_to_file}audio-file.flac \
    "{url}/v1/recognize?timestamps=true&max_alternatives=3"
    

O serviço retorna os resultados a seguir, que incluem os registros de data e hora e três transcrições alternativas:

{
  "result_index": 0,
  "results": [
    {
      "alternatives": [
        {
          "timestamps": [
            ["several":, 1.0, 1.51],
            ["tornadoes":, 1.51, 2.15],
            ["touch":, 2.15, 2.5],
            . . .
          ]
        },
        {
          "confidence": 0.96
          "transcript": "several tornadoes touch down as a line of severe thunderstorms swept through Colorado on Sunday "
        },
        {
          "transcript": "several tornadoes touched down as a line of severe thunderstorms swept through Colorado on Sunday "
        },
        {
          "transcript": "several tornadoes touch down as a line of severe thunderstorms swept through Colorado and Sunday "
        }
      ],
      "final": true
    }
  ]
}

Próximas etapas

  • Para tentar um aplicativo de exemplo que transcreva texto de entrada de áudio de fluxo ou de um arquivo do qual você faz upload, consulte a Speech to Text demo.
  • Para obter mais informações sobre as interfaces e os recursos do serviço, consulte Recursos do serviço.
  • Para obter mais informações sobre todos os métodos das interfaces do serviço, consulte a referência da API e do SDK.