Pitido: modelo universal de voz

Chirp es la nueva generación de modelos de voz a texto de Google. La primera versión de Chirp, que representa la culminación de años de investigación, ya está disponible para la transcripción de voz. Tenemos previsto mejorar y ampliar Chirp a más idiomas y ámbitos. Para obtener más información, consulta nuestro documento Google USM.

Hemos entrenado los modelos de Chirp con una arquitectura diferente a la de nuestros modelos de voz actuales. Un único modelo unifica los datos de varios idiomas. Sin embargo, los usuarios siguen especificando el idioma en el que el modelo debe reconocer el habla. Chirp no admite algunas de las funciones de voz de Google que tienen otros modelos. Consulta la lista completa de funciones admitidas y limitaciones.

Identificadores de modelo

Chirp está disponible en la versión 2 de la API Speech-to-Text. Puedes usarlo como cualquier otro modelo.

El identificador de modelo de Chirp es chirp.

Puedes especificar este modelo en solicitudes de reconocimiento síncronas o por lotes.

Métodos de API disponibles

Chirp procesa la voz en fragmentos mucho más grandes que otros modelos. Esto significa que puede que no sea adecuado para un 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 la 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

Consulta la página de idiomas para obtener más información.

Idiomas

Puedes consultar los idiomas admitidos en la lista completa de idiomas.

Asistencia y limitaciones de funciones

Chirp no admite algunas de las funciones de la API STT:

  • Puntuaciones de confianza: la API devuelve un valor, pero no es una puntuación de confianza real.
  • Adaptación de voz: no se admiten funciones de adaptación.
  • Diarización: la diarización automática no está disponible.
  • Normalización forzada: no se admite.
  • Confianza a nivel de palabra: no se admite.
  • Detección de idioma: no disponible.

Chirp sí admite las siguientes funciones:

  • Puntuación automática: el modelo predice la puntuación. Se puede inhabilitar.
  • Tiempos de las palabras: se devuelven de forma opcional.
  • Transcripción de audio independiente del idioma: el modelo infiere automáticamente el idioma hablado en tu archivo de audio y lo añade a los resultados.

Antes de empezar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  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 column 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 Conceder acceso.
    4. En el campo Nuevos principales, introduce tu identificador de usuario. Normalmente, se trata de la dirección de correo de una cuenta de Google.

    5. En la lista Selecciona un rol, elige un rol.
    6. Para conceder más roles, haz clic en Añadir otro rol y añade cada rol adicional.
    7. Haz clic en Guardar.
  6. Install the Google Cloud CLI.

  7. Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

  8. Para inicializar gcloud CLI, ejecuta el siguiente comando:

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

    Go to project selector

  10. Verify that billing is enabled for your Google Cloud project.

  11. Enable the Speech-to-Text APIs.

    Enable the APIs

  12. 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 column 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 Conceder acceso.
    4. En el campo Nuevos principales, introduce tu identificador de usuario. Normalmente, se trata de la dirección de correo de una cuenta de Google.

    5. En la lista Selecciona un rol, elige un rol.
    6. Para conceder más roles, haz clic en Añadir otro rol y añade cada rol adicional.
    7. Haz clic en Guardar.
  13. Install the Google Cloud CLI.

  14. Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

  15. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  16. Las bibliotecas de cliente pueden usar las credenciales predeterminadas de la aplicación para autenticarse fácilmente en las APIs de Google y enviar solicitudes a esas APIs. Con las credenciales predeterminadas de la aplicación, puedes probar tu aplicación de forma local e implementarla sin cambiar el código subyacente. Para obtener más información, consulta el artículo Autenticarse para usar bibliotecas de cliente.

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

    If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.

  18. También debes instalar la biblioteca de cliente.

    Realizar el reconocimiento de voz síncrono con Chirp

    A continuación, se muestra un ejemplo de cómo realizar el reconocimiento de voz síncrono en un archivo de audio local con Chirp:

    Python

    import os
    
    from google.api_core.client_options import ClientOptions
    from google.cloud.speech_v2 import SpeechClient
    from google.cloud.speech_v2.types import cloud_speech
    
    PROJECT_ID = os.getenv("GOOGLE_CLOUD_PROJECT")
    
    
    def transcribe_chirp(
        audio_file: str,
    ) -> cloud_speech.RecognizeResponse:
        """Transcribes an audio file using the Chirp model of Google Cloud Speech-to-Text API.
        Args:
            audio_file (str): Path to the local audio file to be transcribed.
                Example: "resources/audio.wav"
        Returns:
            cloud_speech.RecognizeResponse: The response from the Speech-to-Text API containing
            the transcription results.
    
        """
        # 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:
            audio_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=audio_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
    
    

    Hacer una solicitud con la transcripción sin lenguaje verbal habilitada

    En los siguientes ejemplos de código se muestra cómo hacer una solicitud con la transcripción independiente del idioma habilitada.

    Python

    import os
    
    from google.api_core.client_options import ClientOptions
    from google.cloud.speech_v2 import SpeechClient
    from google.cloud.speech_v2.types import cloud_speech
    
    PROJECT_ID = os.getenv("GOOGLE_CLOUD_PROJECT")
    
    
    def transcribe_chirp_auto_detect_language(
        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.
        Args:
            audio_file (str): Path to the local audio file to be transcribed.
            region (str): The region for the API endpoint.
        Returns:
            cloud_speech.RecognizeResponse: The response containing the transcription results.
        """
        # 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:
            audio_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=audio_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
    
    

    Empezar a usar Chirp en la Google Cloud consola

    1. Asegúrate de haberte registrado para obtener una cuenta de Google Cloud y de haber creado un proyecto.
    2. Ve a Voz en la consola de Google Cloud .
    3. Habilita la API si aún no lo has hecho.
    4. Ve a la subpágina Transcripciones.
    5. Haz clic en New Transcription (Nueva transcripción).
    6. Asegúrate de que tienes un espacio de trabajo de STT. Si no lo tienes, crea uno.

      1. Abre el menú desplegable Espacio de trabajo y haz clic en Nuevo espacio de trabajo.

      2. En la barra lateral de navegación Crear un espacio de trabajo, haz clic en Buscar.

      3. Haz clic para crear un segmento.

      4. Escribe el nombre del contenedor y haz clic en Continuar.

      5. Haz clic en Crear.

      6. Una vez creado el segmento, haz clic en Seleccionar para seleccionarlo.

      7. Haz clic en Crear para terminar de crear tu espacio de trabajo de Speech-to-Text.

    7. Transcribe el audio.

      Página de creación de transcripciones de voz a texto, que muestra la selección o la subida de archivos.
      1. En la página Nueva transcripción, elige una opción para seleccionar el archivo de audio:
        • Para subirlo, haz clic en Subida local.
        • Haga clic en Almacenamiento en la nube para especificar un archivo de Cloud Storage.
      1. Haz clic en Continuar.
      Página de creación de transcripciones de voz a texto en la que se muestra cómo seleccionar el modelo Chirp y enviar un trabajo de transcripción.
      1. En la sección Opciones de transcripción, selecciona el idioma hablado que quieras usar para el reconocimiento con Chirp en el reconocedor que hayas creado anteriormente.

      2. En el menú desplegable Modelo*, selecciona Chirp.

      3. En el desplegable Región, selecciona una región, como us-central1.

      4. Haz clic en Continuar.

      5. Para ejecutar tu primera solicitud de reconocimiento con Chirp, en la sección principal, haz clic en Enviar.

    8. Consulta el resultado de la transcripción de Chirp.

      1. En la página Transcripciones, haz clic en el nombre de la transcripción.

      2. En la página Detalles de la transcripción, consulta el resultado de la transcripción y, si quieres, reproduce el audio en el navegador.

    Limpieza

    Para evitar que se apliquen cargos en tu cuenta de Google Cloud por los recursos utilizados en esta página, sigue estos pasos.

    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

  19. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  20. In the project list, select the project that you want to delete, and then click Delete.
  21. In the dialog, type the project ID, and then click Shut down to delete the project.
  22. gcloud

  23. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  24. In the project list, select the project that you want to delete, and then click Delete.
  25. In the dialog, type the project ID, and then click Shut down to delete the project.
  26. Siguientes pasos