ML.TRANSCRIBE 함수

이 문서에서는 객체 테이블에서 오디오 파일을 텍스트로 변환할 수 있는 ML.TRANSCRIBE 함수에 대하여 설명합니다.

구문

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

인수

ML.TRANSCRIBE는 다음 인수를 사용합니다.

  • project_id: 프로젝트 ID입니다.

  • dataset: 모델을 포함하는 BigQuery 데이터 세트입니다.

  • model: REMOTE_SERVICE_TYPECLOUD_AI_SPEECH_TO_TEXT_V2원격 모델의 이름입니다.

  • object_table: 오디오 파일의 URI가 포함된 객체 테이블의 이름입니다.

    객체 테이블의 오디오 파일은 지원되는 유형이어야 합니다. 지원되지 않는 유형의 오디오 파일이 포함된 모든 행에서 오류가 반환됩니다.

  • recognition_config: JSON 형식의 RecognitionConfig 리소스를 포함하는 STRING 값.

    인식기가 SPEECH_RECOGNIZER 옵션을 사용하여 원격 모델에 지정된 경우 선택적으로 recognition_config 값을 지정하여 기본 구성을 재정의할 수 있습니다.

    SPEECH_RECOGNIZER 옵션을 사용하여 인식자가 원격 모델에 지정되지 않은 경우 이 인수가 필요합니다.

출력

ML.TRANSCRIBE는 다음 열을 반환합니다.

  • transcripts: 오디오 파일 처리의 스크립트가 포함된 STRING
  • ml_transcribe_result: Document AI API의 문서 프로세서 결과가 포함된 JSON
  • ml_transcribe_result_status: 해당 행의 API 응답 상태가 포함된 STRING 값. 작업이 성공하면 이 값이 비어 있습니다.
  • 객체 테이블 열

할당량

Cloud AI 서비스 함수 할당량 및 제한사항을 참조하세요.

위치

ML.TRANSCRIBE은 함수가 참조하는 원격 모델과 동일한 리전에서 실행되어야 합니다. 다음 위치에서는 Speech-to-Text를 기반으로 모델을 만들 수 있습니다.

  • 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

제한사항

이 함수는 1분을 초과하는 오디오 파일을 처리할 수 없습니다. 이러한 파일을 포함하는 행은 오류를 반환합니다.

다음 예는 audio 테이블이 나타내는 오디오 파일을 텍스트 변환합니다.

모델을 만듭니다.

# 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');

인식기의 기본 구성을 재정의하지 않고 오디오 파일을 텍스트 변환합니다.

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

오디오 파일을 텍스트로 변환하고 인식기의 기본 구성을 재정의합니다.

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": {}}')
);

결과는 다음과 비슷합니다.

transcripts ml_transcribe_result ml_transcribe_status uri ...
Ok Google Netflix에서 내 TV로 기묘한 이야기를 스트리밍해. 오케이, TV 스마트 홈에서 Netflix의 기묘한 이야기를 재생하는데 이것은 단지... {"metadata":{"total_billed_duration":{"seconds":56}},"results":[{"alternatives":[{"confidence":0.738729,"transcript"... gs://mybucket/audio_files

다음 단계