Audio transkribieren

Auf dieser Seite erfahren Sie, wie Sie Audiodateien mithilfe der Speech-to-Text API auf einer Air-Gap-Appliance von Google Distributed Cloud (GDC) in Text transkribieren.

Der Speech-to-Text-Dienst von Vertex AI auf der GDC-Air-Gap-Appliance erkennt Sprache aus Audiodateien. Speech-to-Text wandelt das erkannte Audio mithilfe der vortrainierten API in Texttranskriptionen um.

Hinweise

Für die Verwendung der Speech-to-Text API benötigen Sie ein Projekt, für das die Speech-to-Text API aktiviert ist sowie die entsprechenden Anmeldedaten. Sie können auch Clientbibliotheken installieren, um Aufrufe an die API zu ermöglichen. Weitere Informationen finden Sie unter Spracherkennungsprojekt einrichten.

Audio mit dem Standardmodell transkribieren

Mit Speech-to-Text wird Sprache erkannt. Sie senden die Audiodatei, aus der Sie Sprache erkennen möchten, direkt als Inhalt in der API-Anfrage. Das System gibt den resultierenden transkribierten Text in der API-Antwort zurück.

Sie müssen ein RecognitionConfig-Konfigurationsobjekt angeben, wenn Sie eine Spracherkennungsanfrage stellen. Dieses Objekt gibt der API an, wie Ihre Audiodaten verarbeitet werden sollen und welche Art von Ausgabe Sie erwarten. Wenn in diesem Konfigurationsobjekt kein Modell explizit angegeben ist, wählt Speech-to-Text ein Standardmodell aus. Speech-to-Text auf der GDC-Appliance mit Air Gap unterstützt nur das Standardmodell.

So verwenden Sie den Speech-to-Text-Dienst über ein Python-Skript, um Sprache aus einer Audiodatei zu transkribieren:

  1. Installieren Sie die neueste Version der Speech-to-Text-Clientbibliothek.

  2. Erforderliche Umgebungsvariablen in einem Python-Skript festlegen

  3. API-Anfrage authentifizieren

  4. Fügen Sie dem von Ihnen erstellten Python-Skript den folgenden Code hinzu:

    import base64
    
    from google.cloud import speech_v1p1beta1
    import google.auth
    from google.auth.transport import requests
    from google.api_core.client_options import ClientOptions
    
    audience="https://ENDPOINT:443"
    api_endpoint="ENDPOINT:443"
    
    def get_client(creds):
      opts = ClientOptions(api_endpoint=api_endpoint)
      return speech_v1p1beta1.SpeechClient(credentials=creds, client_options=opts)
    
    def main():
      creds = None
      try:
        creds, project_id = google.auth.default()
        creds = creds.with_gdch_audience(audience)
        req = requests.Request()
        creds.refresh(req)
        print("Got token: ")
        print(creds.token)
      except Exception as e:
        print("Caught exception" + str(e))
        raise e
      return creds
    
    def speech_func(creds):
      tc = get_client(creds)
    
      content="BASE64_ENCODED_AUDIO"
    
      audio = speech_v1p1beta1.RecognitionAudio()
      audio.content = base64.standard_b64decode(content)
      config = speech_v1p1beta1.RecognitionConfig()
      config.encoding= speech_v1p1beta1.RecognitionConfig.AudioEncoding.ENCODING
      config.sample_rate_hertz=RATE_HERTZ
      config.language_code="LANGUAGE_CODE"
      config.audio_channel_count=CHANNEL_COUNT
    
      metadata = [("x-goog-user-project", "projects/PROJECT_ID")]
      resp = tc.recognize(config=config, audio=audio, metadata=metadata)
      print(resp)
    
    if __name__=="__main__":
      creds = main()
      speech_func(creds)
    

    Ersetzen Sie Folgendes:

    • ENDPOINT: Der Speech-to-Text-Endpunkt, den Sie für Ihre Organisation verwenden. Weitere Informationen
    • PROJECT_ID: Ihre Projekt-ID.
    • BASE64_ENCODED_AUDIO: Die Audiodatenbytes in einer Base64-Darstellung. Dieser String beginnt mit Zeichen, die ZkxhQwAAACIQABAAAAUJABtAA+gA8AB+W8FZndQvQAyjv ähneln.
    • ENCODING: Die Codierung der in der Anfrage gesendeten Audiodaten, z. B. LINEAR16.
    • RATE_HERTZ: Abtastrate der im Antrag gesendeten Audiodaten in Hertz, z. B. 16000.
    • LANGUAGE_CODE: Die Sprache der bereitgestellten Audiodaten als BCP-47-Sprachtag. Hier finden Sie eine Liste der unterstützten Sprachen und der entsprechenden Sprachcodes.
    • CHANNEL_COUNT: Die Anzahl der Kanäle in den Audioeingabedaten, z. B. 1.
  5. Speichern Sie das Python-Skript.

  6. Führen Sie das Python-Skript aus, um Audioinhalte zu transkribieren:

    python SCRIPT_NAME
    

    Ersetzen Sie SCRIPT_NAME durch den Namen, den Sie Ihrem Python-Skript gegeben haben, z. B. speech.py.