이 페이지에서는 Speech-to-Text API 및 비동기 음성 인식을 사용하여 긴 오디오 파일(1분 이상)의 스크립트를 작성하는 방법을 설명합니다.
비동기 음성 인식 정보
일괄 음성 인식은 장기 실행 오디오 처리 작업을 시작합니다. 비동기 음성 인식을 사용하여 60초 이상의 오디오를 텍스트로 변환합니다. 이보다 짧은 오디오는 동기 음성 인식이 더 빠르고 더 간단합니다. 비동기 음성 인식의 상한값은 480분(8시간)입니다.
일괄 음성 인식은 Cloud Storage에 저장된 오디오의 스크립트만 작성할 수 있습니다. 스크립트 작성 출력은 응답에서 단일 파일 일괄 인식 요청의 인라인으로 제공되거나 Cloud Storage에 작성될 수 있습니다.
일괄 인식 요청은 진행 중인 요청의 인식 처리에 대한 정보가 포함된 Operation
을 반환합니다. 작업을 폴링하면 작업이 완료되고 스크립트를 사용할 수 있는 시점을 알 수 있습니다.
시작하기 전에
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Speech-to-Text APIs.
-
Make sure that you have the following role or roles on the project: Cloud Speech Administrator
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
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.
- For all rows that specify or include you, check the Role colunn to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
IAM으로 이동 - 프로젝트를 선택합니다.
- 액세스 권한 부여를 클릭합니다.
-
새 주 구성원 필드에 사용자 식별자를 입력합니다. 일반적으로 Google 계정의 이메일 주소입니다.
- 역할 선택 목록에서 역할을 선택합니다.
- 역할을 추가로 부여하려면 다른 역할 추가를 클릭하고 각 역할을 추가합니다.
- 저장을 클릭합니다.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Speech-to-Text APIs.
-
Make sure that you have the following role or roles on the project: Cloud Speech Administrator
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
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.
- For all rows that specify or include you, check the Role colunn to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
IAM으로 이동 - 프로젝트를 선택합니다.
- 액세스 권한 부여를 클릭합니다.
-
새 주 구성원 필드에 사용자 식별자를 입력합니다. 일반적으로 Google 계정의 이메일 주소입니다.
- 역할 선택 목록에서 역할을 선택합니다.
- 역할을 추가로 부여하려면 다른 역할 추가를 클릭하고 각 역할을 추가합니다.
- 저장을 클릭합니다.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
-
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.
클라이언트 라이브러리는 애플리케이션 기본 사용자 인증 정보를 사용하여 간편하게 Google API를 인증하고 API에 요청을 보낼 수 있습니다. 애플리케이션 기본 사용자 인증 정보를 사용하면 애플리케이션을 로컬에서 테스트하고 기본 코드를 변경하지 않은 상태로 배포할 수 있습니다. 자세한 내용은 클라이언트 라이브러리 사용 인증을 참조하세요.
또한 클라이언트 라이브러리를 설치했는지 확인합니다.
Cloud Storage에 대한 액세스 사용 설정
Speech-to-Text는 서비스 계정을 사용하여 Cloud Storage의 파일에 액세스합니다. 기본적으로 서비스 계정은 동일한 프로젝트의 Cloud Storage 파일에 액세스할 수 있습니다.
서비스 계정 이메일 주소는 다음과 같습니다.
service-PROJECT_NUMBER@gcp-sa-speech.iam.gserviceaccount.com
다른 프로젝트의 Cloud Storage 파일을 텍스트로 변환하려면 이 서비스 계정에 다른 프로젝트의 Speech-to-Text 서비스 에이전트 역할을 부여하면 됩니다.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-speech.iam.gserviceaccount.com \
--role=roles/speech.serviceAgent
프로젝트 IAM 정책에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
또한 서비스 계정에 특정 Cloud Storage 버킷에 대한 권한을 부여하여 보다 세분화된 액세스 권한을 제공할 수 있습니다.
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \
--member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-speech.iam.gserviceaccount.com \
--role=roles/storage.admin
Cloud Storage의 액세스 관리에 대한 자세한 내용은 Cloud Storage 문서의 액세스 제어 목록(ACL) 생성 및 관리를 참조하세요.
인라인 결과로 일괄 인식 수행
다음은 Cloud Storage의 오디오 파일에서 일괄 음성 인식을 수행하고 응답에서 스크립트 작성 결과를 인라인으로 읽는 예시입니다.
Python
일괄 인식 수행 및 Cloud Storage에 결과 작성
다음은 Cloud Storage의 오디오 파일에서 일괄 음성 인식을 수행하고 Cloud Storage의 출력 파일에서 스크립트 작성 결과를 읽는 예시입니다. Cloud Storage에 기록된 파일은 JSON 형식의 BatchRecognizeResults
메시지임에 유의하세요.
Python
여러 파일에서 일괄 인식 수행
다음은 Cloud Storage의 여러 오디오 파일에서 일괄 음성 인식을 수행하고 Cloud Storage의 출력 파일에서 스크립트 작성 결과를 읽는 예시입니다.
Python
일괄 인식에서 동적 일괄 처리 사용 설정
동적 일괄 처리를 사용하면 스크립트 작성 비용을 절감하고 지연 시간이 더 길어집니다. 이 기능은 일괄 인식에만 사용할 수 있습니다.
다음은 동적 일괄 처리가 사용 설정된 상태에서 Cloud Storage에 있는 오디오 파일에 대해 일괄 인식을 수행한 예입니다.
Python
파일마다 인식 기능 재정의
기본 일괄 인식은 일괄 인식 요청의 각 파일에 대해 동일한 인식 구성을 사용합니다. 파일마다 다른 구성 또는 기능이 필요한 경우 [BatchRecognizeFileMetadata
][batch-file-metadata-grpc] 메시지의 config
필드를 사용하여 파일별로 구성을 재정의할 수 있습니다. 인식 기능 재정의의 예시를 보려면 인식자 문서를 참조하세요.
삭제
이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.
-
Optional: Revoke the authentication credentials that you created, and delete the local credential file.
gcloud auth application-default revoke
-
Optional: Revoke credentials from the gcloud CLI.
gcloud auth revoke
콘솔
gcloud
Delete a Google Cloud project:
gcloud projects delete PROJECT_ID
다음 단계
- 일괄 인식에 대한 자세한 내용은 참고 문서를 확인하세요.
- 스트리밍 오디오의 텍스트 변환 방법 알아보기
- 짧은 오디오 파일의 스크립트 작성 연습
- Chirp를 사용하여 오디오 파일 텍스트 변환
- 권장사항 문서에서 최상의 성능, 정확도, 기타 팁 참조