IBM Cloud Docs
Iniciación a Speech to Text

Iniciación a Speech to Text

El servicio IBM Watson® Speech to Text transcribe audio a texto para habilitar las prestaciones de transcripción de voz para las aplicaciones. Esta guía de aprendizaje basada en curl puede ayudarle a empezar con el servicio. En los ejemplos se muestra cómo llamar al método POST /v1/recognize del servicio para solicitar una transcripción.

La guía de aprendizaje utiliza el programa de utilidad de línea de mandatos curl para mostrar las llamadas de API REST. Para obtener más información sobre curl, consulte Utilización de curl con ejemplos de Watson.

IBM Cloud Vea el siguiente vídeo para obtener un resumen visual de cómo empezar a utilizar el servicio Speech to Text.

Antes de empezar

IBM Cloud

IBM Cloud

  • Cree una instancia del servicio:

    1. Vaya a la página Speech to Text en el catálogo IBM Cloud.
    2. Regístrese para obtener una cuenta de IBM Cloud gratuita o inicie una sesión.
    3. Lea y acepte los términos del acuerdo de licencia.
    4. Pulse Crear.
  • Copie las credenciales para autenticarse en la instancia de servicio:

    1. Vea la página Administrar para la instancia de servicio:

      • Si está en la página Cómo empezar para la instancia de servicio, pulse la entrada Gestionar en la lista de temas.
      • Si está en la página Lista de recursos, expanda la agrupación AI/ Machine Learning en la columna Nombre y pulse el nombre de la instancia de servicio.
    2. En la página Gestionar, pulse Mostrar credenciales en el recuadro Credenciales.

    3. Copie los valores API Key y URL para la instancia de servicio.

Esta guía de aprendizaje utiliza la clave de API para realizar la autenticación. En producción, utilice una señal IAM. Para obtener más información, consulte Autenticación en IBM Cloud.

IBM Cloud Pak for Data

IBM Cloud Pak for Data

El servicio Speech to Text debe estar instalado y configurado antes de comenzar este tutorial. Para más información, consulte Watson Servicios de voz en Cloud Pak for Data.

  1. Cree una instancia del servicio utilizando el cliente web, la API o la interfaz de línea de mandatos. Para obtener más información sobre cómo crear una instancia de servicio en IBM Cloud Pak for Data, consulte Creación de una instancia de servicio para los servicios de voz de Watson.
  2. Siga las instrucciones de Creación de una instancia de servicios de voz de Watson para obtener una señal portadora para la instancia. Esta guía de aprendizaje utiliza una señal portadora para autenticarse en el servicio.

Transcribir audio sin opciones

Llame al método POST /v1/recognize para solicitar una transcripción básica de un archivo de audio FLAC sin parámetros de solicitud adicionales.

  1. Descargue el archivo de audio de ejemplo audio-file.flac.

  2. Emita el mandato siguiente para llamar al método /v1/recognize del servicio para la transcripción básica sin parámetros. En el ejemplo se utiliza la cabecera Content-Type para indicar el tipo de audio, audio/flac. En el ejemplo se utiliza el modelo de lenguaje predeterminado, en-US_BroadbandModel, para la transcripción.

    IBM Cloud

    • Sustituya {apikey} y {url} por su clave de API y su URL.
    • Modifique {path_to_file} para especificar la ubicación del archivo 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

    • Reemplaza {token} y {url} con el token de acceso y URL para tu instancia de servicio.
    • Modifique {path_to_file} para especificar la ubicación del archivo 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"
    

El servicio devuelve los siguientes resultados de la transcripción:

{
  "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
    }
  ]
}

Transcribir audio con opciones

Llame al método POST /v1/recognize para transcribir el mismo archivo de audio FLAC, pero especifique dos parámetros de transcripción.

  1. Si es necesario, descargue el archivo de audio de muestra audio-file.flac.

  2. Emita el mandato siguiente para llamar al método /v1/recognize del servicio con dos parámetros adicionales. Establezca el parámetro timestamps en true para indicar el principio y el final de cada palabra en la secuencia de audio. Establezca el parámetro max_alternatives en 3 para recibir las tres alternativas más probables para la transcripción. En el ejemplo se utiliza la cabecera Content-Type para indicar el tipo de audio, audio/flac, y la solicitud utiliza el modelo predeterminado, en-US_BroadbandModel.

    IBM Cloud

    • Sustituya {apikey} y {url} por su clave de API y su URL.
    • Modifique {path_to_file} para especificar la ubicación del archivo 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

    • Reemplaza {token} y {url} con el token de acceso y URL para tu instancia de servicio.
    • Modifique {path_to_file} para especificar la ubicación del archivo 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"
    

El servicio devuelve los siguientes resultados, que incluyen indicaciones de fecha y hora y tres transcripciones 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óximos pasos

  • Para probar una aplicación de ejemplo que transcribe texto de la entrada de audio en modalidad continua o de un archivo que cargue, consulte la demo deSpeech to Text.
  • Para obtener más información sobre las características y las interfaces de servicio, consulte Características del servicio.
  • Para obtener más información sobre todos los métodos de las interfaces del servicio, consulte la referencia de API y SDK.