Audio transkribieren

Der Speech-to-Text-Dienst von Vertex AI auf Google Distributed Cloud (GDC) Air-Gapped erkennt Sprache aus Audiodateien. Speech-to-Text wandelt das erkannte Audio mithilfe der vortrainierten API in Texttranskriptionen um.

Auf dieser Seite erfahren Sie, wie Sie Audiodateien mit der Speech-to-Text API auf Distributed Cloud in Text transkribieren.

Hinweis

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

Speech-to-Text führt die Spracherkennung aus. 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 teilt der API mit, 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.

Weitere Informationen finden Sie in der Speech API-Dokumentation.

Im folgenden Beispiel wird Sprache aus einer Audiodatei mit dem Standardmodell von Speech-to-Text transkribiert:

Python

Führen Sie die folgenden Schritte aus, um den Speech-to-Text-Dienst über ein Python-Skript zu verwenden, um Sprache aus einer Audiodatei zu transkribieren:

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

  2. Legen Sie die erforderlichen Umgebungsvariablen in einem Python-Skript fest.

  3. Authentifizieren Sie Ihre API-Anfrage.

  4. Fügen Sie dem 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 finden Sie unter Dienststatus und Endpunkte.
    • PROJECT_ID: Ihre Projekt-ID.
    • BASE64_ENCODED_AUDIO: Die Audiodatenbytes, die in einer Base64-Darstellung codiert sind. Dieser String beginnt mit Zeichen, die ZkxhQwAAACIQABAAAAUJABtAA+gA8AB+W8FZndQvQAyjv ähneln. Weitere Informationen finden Sie unter RecognitionAudio.
    • ENCODING: Die Codierung der in der Anfrage gesendeten Audiodaten, z. B. LINEAR16. Weitere Informationen finden Sie unter AudioEncoding.
    • RATE_HERTZ: Die Abtastrate der in der Anfrage gesendeten Audiodaten in Hertz, z. B. 16000. Weitere Informationen finden Sie unter RecognitionConfig.
    • LANGUAGE_CODE: Die Sprache der übermittelten Audiodaten, angegeben als BCP-47-Sprachcode. Hier finden Sie eine Liste der unterstützten Sprachen und ihrer jeweiligen Sprachcodes.
    • CHANNEL_COUNT: Die Anzahl der Kanäle in den Audioeingabedaten, z. B. 1. Weitere Informationen finden Sie unter RecognitionConfig.
  5. Speichern Sie das Python-Skript.

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

    python SCRIPT_NAME
    

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