Chirp: Modelo de voz universal

Chirp es la próxima generación de modelos de voz a texto de Google. Como la culminación de años de investigación, ya está disponible la primera versión de Chirp para Speech-to-Text. Queremos mejorar y expandir Chirp a más idiomas y dominios. Para conocer más detalles, consulta nuestro informe, Google USM.

Entrenamos modelos de Chirp con una arquitectura diferente a la de nuestros modelos de voz actuales. Un solo modelo unifica los datos de varios idiomas. Sin embargo, los usuarios deben especificar el idioma en el que el modelo debe reconocer la voz. Chirp no admite algunas de las funciones de Google Speech que tienen otros modelos. Consulta la siguiente lista completa.

Identificadores de modelo

Chirp está disponible en la API de Cloud Speech-to-Text v2. Puedes aprovecharlo como cualquier otro modelo.

El identificador de modelo para Chirp es: chirp.

Puedes especificar este modelo mientras creas un reconocedor o intercalado en solicitudes de reconocimiento síncronas o por lotes.

Métodos de la API disponibles

Chirp procesa la voz en fragmentos mucho más grandes que los de otros modelos. Esto significa que podría no ser adecuado para su uso en tiempo real. Chirp está disponible a través de los siguientes métodos de API:

Chirp no está disponible en los siguientes métodos de API:

  • v2 Speech.StreamingRecognize
  • v1 Speech.StreamingRecognize
  • v1 Speech.Recognize
  • v1 Speech.LongRunningRecognize
  • v1p1beta1 Speech.StreamingRecognize
  • v1p1beta1 Speech.Recognize
  • v1p1beta1 Speech.LongRunningRecognize

Regiones

Chirp está disponible en las siguientes regiones:

  • us-central1
  • europe-west4
  • asia-southeast1

Para obtener más información, consulta la página de idiomas.

Lenguajes

Puedes ver los idiomas compatibles en la lista completa de idiomas.

Compatibilidad y limitaciones de funciones

Actualmente, Chirp no admite muchas de las características de la API de STT. Consulta la información que aparece a continuación para conocer las restricciones específicas.

  • Puntuaciones de confianza: La API muestra un valor, pero no es realmente una puntuación de confianza.
  • Adaptación de voz: No se admiten funciones de adaptación.
  • Identificación: No se admite la identificación automática.
  • Normalización forzada: No admitida.
  • Confianza a nivel de palabra: No admitida.
  • Detección de idioma: No admitida.

Chirp admite las siguientes características:

  • Puntuación automática: El modelo predice la puntuación. Se puede inhabilitar.
  • Tiempos de palabras: Se muestran de forma opcional.
  • Transcripción de audio independiente del idioma: El modelo infiere de manera automática el idioma hablado en tu archivo de audio y lo agrega a los resultados.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  4. Enable the Speech-to-Text APIs.

    Enable the APIs

  5. Make sure that you have the following role or roles on the project: Cloud Speech Administrator

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role colunn to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Google Cloud console, go to the IAM page.

      Ir a IAM
    2. Selecciona el proyecto.
    3. Haz clic en Grant access.
    4. En el campo Principales nuevas, ingresa tu identificador de usuario. Esta suele ser la dirección de correo electrónico de una Cuenta de Google.

    5. En la lista Seleccionar un rol, elige un rol.
    6. Para otorgar funciones adicionales, haz clic en Agregar otro rol y agrega cada rol adicional.
    7. Haz clic en Guardar.
    8. Install the Google Cloud CLI.
    9. To initialize the gcloud CLI, run the following command:

      gcloud init
    10. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

      Go to project selector

    11. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

    12. Enable the Speech-to-Text APIs.

      Enable the APIs

    13. Make sure that you have the following role or roles on the project: Cloud Speech Administrator

      Check for the roles

      1. In the Google Cloud console, go to the IAM page.

        Go to IAM
      2. Select the project.
      3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

      4. For all rows that specify or include you, check the Role colunn to see whether the list of roles includes the required roles.

      Grant the roles

      1. In the Google Cloud console, go to the IAM page.

        Ir a IAM
      2. Selecciona el proyecto.
      3. Haz clic en Grant access.
      4. En el campo Principales nuevas, ingresa tu identificador de usuario. Esta suele ser la dirección de correo electrónico de una Cuenta de Google.

      5. En la lista Seleccionar un rol, elige un rol.
      6. Para otorgar funciones adicionales, haz clic en Agregar otro rol y agrega cada rol adicional.
      7. Haz clic en Guardar.
      8. Install the Google Cloud CLI.
      9. To initialize the gcloud CLI, run the following command:

        gcloud init
      10. Las bibliotecas cliente pueden usar las credenciales predeterminadas de la aplicación para autenticarse fácilmente con las APIs de Google y enviar solicitudes a esas API. Con las credenciales predeterminadas de la aplicación, puedes probar tu aplicación de forma local y, luego, implementarla sin cambiar el código subyacente. Para obtener más información, consulta Se autentica para usar las bibliotecas cliente.

      11. If you're using a local shell, then create local authentication credentials for your user account:

        gcloud auth application-default login

        You don't need to do this if you're using Cloud Shell.

      También asegúrate de haber instalado la biblioteca cliente.

      Realiza reconocimiento de voz síncrono con Chirp

      El siguiente es un ejemplo de cómo realizar un reconocimiento de voz síncrono en un archivo de audio local con Chirp:

      Python

      from google.api_core.client_options import ClientOptions
      from google.cloud.speech_v2 import SpeechClient
      from google.cloud.speech_v2.types import cloud_speech
      
      def transcribe_chirp(
          project_id: str,
          audio_file: str,
      ) -> cloud_speech.RecognizeResponse:
          """Transcribe an audio file using Chirp."""
          # Instantiates a client
          client = SpeechClient(
              client_options=ClientOptions(
                  api_endpoint="us-central1-speech.googleapis.com",
              )
          )
      
          # Reads a file as bytes
          with open(audio_file, "rb") as f:
              content = f.read()
      
          config = cloud_speech.RecognitionConfig(
              auto_decoding_config=cloud_speech.AutoDetectDecodingConfig(),
              language_codes=["en-US"],
              model="chirp",
          )
      
          request = cloud_speech.RecognizeRequest(
              recognizer=f"projects/{project_id}/locations/us-central1/recognizers/_",
              config=config,
              content=content,
          )
      
          # Transcribes the audio into text
          response = client.recognize(request=request)
      
          for result in response.results:
              print(f"Transcript: {result.alternatives[0].transcript}")
      
          return response
      
      

      Realiza una solicitud con la transcripción independiente del idioma habilitada

      En las siguientes muestras de código, se explica cómo realizar una solicitud con una transcripción independiente del lenguaje habilitada.

      Python

      
      from google.api_core.client_options import ClientOptions
      from google.cloud.speech_v2 import SpeechClient
      from google.cloud.speech_v2.types import cloud_speech
      
      def transcribe_chirp_auto_detect_language(
          project_id: str,
          audio_file: str,
          region: str = "us-central1",
      ) -> cloud_speech.RecognizeResponse:
          """Transcribe an audio file and auto-detect spoken language using Chirp.
      
          Please see https://cloud.google.com/speech-to-text/v2/docs/encoding for more
          information on which audio encodings are supported.
          """
          # Instantiates a client
          client = SpeechClient(
              client_options=ClientOptions(
                  api_endpoint=f"{region}-speech.googleapis.com",
              )
          )
      
          # Reads a file as bytes
          with open(audio_file, "rb") as f:
              content = f.read()
      
          config = cloud_speech.RecognitionConfig(
              auto_decoding_config=cloud_speech.AutoDetectDecodingConfig(),
              language_codes=["auto"],  # Set language code to auto to detect language.
              model="chirp",
          )
      
          request = cloud_speech.RecognizeRequest(
              recognizer=f"projects/{project_id}/locations/{region}/recognizers/_",
              config=config,
              content=content,
          )
      
          # Transcribes the audio into text
          response = client.recognize(request=request)
      
          for result in response.results:
              print(f"Transcript: {result.alternatives[0].transcript}")
              print(f"Detected Language: {result.language_code}")
      
          return response
      
      

      Comienza a usar Chirp en la consola de Google Cloud

      1. Asegúrate de haberte registrado en una cuenta de Google Cloud y creado un proyecto.
      2. Ve a Speech en la consola de Google Cloud.
      3. Habilita la API si aún no está habilitada.
      4. Crea un reconocedor de STT que use Cirp. Ve a la pestaña Reconocimientos y haz clic en Crear.

        Captura de pantalla de la lista de Reconocimiento de voz a texto.

        b. En la página Crear reconocedor, ingresa los campos necesarios para Chirp.

        Captura de pantalla de la página Crear reconocedor de texto a voz.

        i. Asigna un nombre al reconocedor.

        ii. Selecciona Chirp como modelo.

        iii. Selecciona el idioma que deseas usar. Debes usar un reconocedor por idioma que desees probar.

        iv. No selecciones ninguna otra función.

      5. Asegúrate de tener un lugar de trabajo de la IU de STT. Si aún no tienes uno, debes crear un lugar de trabajo. Visita la página de transcripciones y haz clic en Transcripción nueva.

        b. Abre el menú desplegable Lugar de trabajo y haz clic en Nuevo lugar de trabajo para crear un lugar de trabajo de transcripción.

        c. Desde la barra lateral de navegación Crear un lugar de trabajo nuevo, haz clic en Explorar.

        d. Haz clic para crear un bucket nuevo.

        e. Ingresa un nombre para tu bucket y haz clic en Continuar.

        f. Haz clic en Crear para crear un bucket de Cloud Storage.

        g. Una vez que se haya creado el bucket, haz clic en Seleccionar para seleccionar su bucket.

        h. Haz clic en Crear para terminar de crear tu lugar de trabajo para la IU de voz a texto.

      6. Realiza una transcripción en tu audio real.

        Captura de pantalla de la página de creación de la transcripción de Speech-to-Text, que muestra la selección o carga del archivo.

        a. En la página Nueva transcripción, selecciona el archivo de audio mediante la carga (Carga local) o especificando un archivo de Cloud Storage existente (Cloud Storage). Nota: La IU intenta evaluar automáticamente los parámetros de tu archivo de audio.

        b. Haz clic en Continuar para pasar a las Opciones de transcripción.

        Captura de pantalla de la página de creación de transcripciones de Speech-to-Text que muestra la selección de un modelo de Chirp y el envío de un trabajo de transcripción.

        c. Selecciona el lenguaje de voz que planeas usar para el reconocimiento con Chirp de tu reconocedor creado previamente.

        d. En el menú desplegable del modelo, selecciona Chirp - Modelo de voz universal.

        e. En el menú desplegable Reconocimiento, selecciona el reconocedor que creaste recientemente.

        f. Haz clic en Enviar para ejecutar tu primera solicitud de reconocimiento mediante Chirp.

      7. Visualiza el resultado de tu transcripción de Chirp. a. En la página Transcripciones, haz clic en el nombre de la transcripción para ver su resultado.

        b. En la página Detalles de la transcripción, visualiza el resultado de la transcripción. También tienes la opción de reproducir el audio en el navegador.

      Limpia

      Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.

      1. Optional: Revoke the authentication credentials that you created, and delete the local credential file.

        gcloud auth application-default revoke
      2. Optional: Revoke credentials from the gcloud CLI.

        gcloud auth revoke

      Consola

    14. En la consola de Google Cloud, ve a la página Administrar recursos.

      Ir a Administrar recursos

    15. En la lista de proyectos, elige el proyecto que quieres borrar y haz clic en Borrar.
    16. En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrar el proyecto.
    17. gcloud

      Borra un proyecto de Google Cloud:

      gcloud projects delete PROJECT_ID

      ¿Qué sigue?