이 가이드는 Speech-to-Text를 사용하여 전화에서 녹음된 오디오를 텍스트로 변환하는 방법을 설명합니다.
오디오 파일의 출처는 다양할 수 있습니다. 오디오 데이터는 전화(예: 음성사서함) 또는 동영상 파일에 포함된 사운드트랙일 수 있습니다.
Speech-to-Text는 여러 머신러닝 모델 중 하나를 사용하여 원본 오디오 소스와 가장 잘 일치하도록 오디오 파일을 텍스트로 변환할 수 있습니다. 사용자는 원본 오디오 소스를 지정하면 보다 나은 음성 텍스트 변환 결과를 얻을 수 있습니다. 이렇게 하면 Speech-to-Text에서 오디오 파일과 유사한 데이터를 학습한 머신러닝 모델을 사용하여 오디오 파일을 처리할 수 있습니다.
요청 전송
전화 통화나 음성사서함과 같이 전화에서 캡처한 오디오를 가장 우수하게 텍스트로 변환하려면 RecognitionConfig
페이로드의 model
필드를 phone_call
로 설정하면 됩니다. model
필드는 텍스트 변환 요청에 사용할 음성 인식 모델을 Speech-to-Text API에게 알립니다.
고급 모델을 사용하면 전화 오디오 스크립트 작성 결과가 향상될 수 있습니다. 고급 모델을 사용하려면 RecognitionConfig
페이로드에서 useEnhanced
필드를 true
로 설정합니다.
다음 코드 샘플은 Speech-to-Text 호출 시 특정 텍스트 변환 모델을 선택하는 방법을 보여줍니다.
프로토콜
자세한 내용은 speech:recognize
API 엔드포인트를 참조하세요.
동기 음성 인식을 수행하려면 POST
요청을 하고 적절한 요청 본문을 제공합니다. 다음은 curl
을 사용한 POST
요청의 예시입니다. 이 예시에서는 Google Cloud CLI를 사용하여 액세스 토큰을 생성합니다. gcloud CLI 설치에 대한 안내는 빠른 시작을 참조하세요.
curl -s -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ https://speech.googleapis.com/v1/speech:recognize \ --data '{ "config": { "encoding": "LINEAR16", "languageCode": "en-US", "enableWordTimeOffsets": false, "enableAutomaticPunctuation": true, "model": "phone_call", "useEnhanced": true }, "audio": { "uri": "gs://cloud-samples-tests/speech/commercial_mono.wav" } }'
요청 본문 구성에 대한 자세한 내용은 RecognitionConfig
참조 문서를 확인하세요.
요청이 성공하면 서버가 200 OK
HTTP 상태 코드와 응답을 JSON 형식으로 반환합니다.
{ "results": [ { "alternatives": [ { "transcript": "Hi, I'd like to buy a Chromecast. I was wondering whether you could help me with that.", "confidence": 0.8930228 } ], "resultEndTime": "5.640s" }, { "alternatives": [ { "transcript": " Certainly, which color would you like? We are blue black and red.", "confidence": 0.9101991 } ], "resultEndTime": "10.220s" }, { "alternatives": [ { "transcript": " Let's go with the black one.", "confidence": 0.8818244 } ], "resultEndTime": "13.870s" }, { "alternatives": [ { "transcript": " Would you like the new Chromecast Ultra model or the regular Chromecast?", "confidence": 0.94733626 } ], "resultEndTime": "18.460s" }, { "alternatives": [ { "transcript": " Regular Chromecast is fine. Thank you. Okay. Sure. Would you like to ship it regular or Express?", "confidence": 0.9519095 } ], "resultEndTime": "25.930s" }, { "alternatives": [ { "transcript": " Express, please.", "confidence": 0.9101229 } ], "resultEndTime": "28.260s" }, { "alternatives": [ { "transcript": " Terrific. It's on the way. Thank you. Thank you very much. Bye.", "confidence": 0.9321616 } ], "resultEndTime": "34.150s" } ] }
Go
Speech-to-Text용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Speech-to-Text 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Speech-to-Text Go API 참조 문서를 확인하세요.
Speech-to-Text에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Java
Speech-to-Text용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Speech-to-Text 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Speech-to-Text Java API 참조 문서를 확인하세요.
Speech-to-Text에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Node.js
Speech-to-Text용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Speech-to-Text 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Speech-to-Text Node.js API 참조 문서를 확인하세요.
Speech-to-Text에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
Speech-to-Text용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Speech-to-Text 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Speech-to-Text Python API 참조 문서를 확인하세요.
Speech-to-Text에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
추가 언어
C#: 클라이언트 라이브러리 페이지의 C# 설정 안내를 따른 다음 .NET용 Speech-to-Text 참고 문서를 참조하세요.
PHP: 클라이언트 라이브러리 페이지의 PHP 설정 안내를 따른 다음 PHP용 Speech-to-Text 참고 문서를 참조하세요.
Ruby: 클라이언트 라이브러리 페이지의 Ruby 설정 안내를 따른 다음 Ruby용 Speech-to-Text 참고 문서를 참조하세요.