Die ML.TRANSCRIBE-Funktion

In diesem Dokument wird die Funktion ML.TRANSCRIBE beschrieben, mit der Sie Audiodateien von einer Objekttabelle transkribieren können.

Syntax

ML.TRANSCRIBE(
  MODEL `project_id.dataset.model_name`,
  TABLE `project_id.dataset.object_table`,
  [RECOGNITION_CONFIG => ( JSON 'recognition_config')]
)

Argumente

ML.TRANSCRIBE verwendet die folgenden Argumente:

  • project_id: Ihre Projekt-ID.

  • dataset: Das BigQuery-Dataset, das das Modell enthält.

  • model: Der Name eines Remote-Modells mit dem REMOTE_SERVICE_TYPE CLOUD_AI_SPEECH_TO_TEXT_V2.

  • object_table: Name der Objekttabelle, die die URIs der Audiodateien enthält.

    Die Audiodateien in der Objekttabelle müssen einen unterstützten Typ haben. Für jede Zeile, die Audiodateien eines nicht unterstützten Typs enthält, wird ein Fehler zurückgegeben.

  • recognition_config: ein STRING-Wert, der eine RecognitionConfig-Ressource im JSON-Format enthält.

    Wenn für das Remote-Modell eine Erkennung mit der Option SPEECH_RECOGNIZER angegeben wurde, können Sie optional einen recognition_config-Wert angeben, um die Standardkonfiguration der angegebenen Erkennung zu überschreiben.

    Dieses Argument ist erforderlich, wenn mit der Option SPEECH_RECOGNIZER keine Erkennung für das Remote-Modell angegeben wurde.

Ausgabe

ML.TRANSCRIBE gibt die folgenden Spalten zurück:

  • transcripts: ein STRING-Wert, der die Transkripte der Verarbeitung der Audiodateien enthält.
  • ml_transcribe_result: ein JSON-Wert, der das Ergebnis des Dokumentverarbeiters der Document AI API enthält.
  • ml_transcribe_result_status: ein STRING-Wert, der den API-Antwortstatus für die entsprechende Zeile enthält. Dieser Wert ist leer, wenn der Vorgang erfolgreich war.
  • Die Spalten der Objekttabelle.

Kontingente

Siehe Kontingente und Limits für Cloud AI-Dienstfunktionen.

Standorte

ML.TRANSCRIBE muss in derselben Region ausgeführt werden wie das Remote-Modell, auf das die Funktion verweist. Sie können Modelle, die auf Speech-to-Text basieren, nur an folgenden Standorten erstellen:

  • asia-northeast1
  • asia-south1
  • asia-southeast1
  • australia-southeast1
  • eu
  • europe-west1
  • europe-west2
  • europe-west3
  • europe-west4
  • northamerica-northeast1
  • us
  • us-central1
  • us-east1
  • us-east4
  • us-west1

Beschränkungen

Die Funktion kann keine Audiodateien verarbeiten, die länger als eine Minute sind. Jede Zeile, die eine solche Datei enthält, gibt einen Fehler zurück.

Beispiel

Im folgenden Beispiel werden die Audiodateien transkribiert, die in der Tabelle audio dargestellt sind:

Modell erstellen:

# Create model
CREATE OR REPLACE MODEL
`myproject.mydataset.transcribe_model`
REMOTE WITH CONNECTION `myproject.myregion.myconnection`
OPTIONS (remote_service_type = 'CLOUD_AI_SPEECH_TO_TEXT_V2',
speech_recognizer = 'projects/project_number/locations/recognizer_location/recognizer/recognizer_id');

Transkribieren Sie die Audiodateien, ohne die Standardkonfiguration der Erkennung zu überschreiben:

SELECT *
FROM ML.TRANSCRIBE(
  MODEL `myproject.mydataset.transcribe_model`,
  TABLE `myproject.mydataset.audio`
);

Transkribieren Sie die Audiodateien und überschreiben Sie die Standardkonfiguration der Erkennung:

SELECT *
FROM ML.TRANSCRIBE(
  MODEL `myproject.mydataset.transcribe_model`,
  TABLE `myproject.mydataset.audio`,
  recognition_config => ( JSON '{"language_codes": ["en-US" ],"model": "telephony","auto_decoding_config": {}}')
);

Das Ergebnis sieht etwa so aus:

Transkripte ml_transcribe_result ml_transcribe_status uri
Hey Google, streame Stranger Things von Netflix auf meinen Fernseher. Okay, Stranger Things von Netflix wird auf dem Smart-Home-Fernseher abgespielt und es ist einfach... {"metadata":{"total_billed_duration":{"seconds":56}},"results":[{"alternatives":[{"confidence":0.738729,"transcript"... gs://mybucket/audio_files

Nächste Schritte