이 페이지에서는 Cloud Speech-to-Text로 전송되는 오디오 텍스트 변환 요청에 언어 인식을 사용 설정하는 방법을 설명합니다.
오디오 녹음에 어떤 언어가 포함되어 있는지 확실히 모르는 경우가 있습니다. 예를 들어 공식 언어가 여러 개인 국가에서 서비스, 앱 또는 제품을 게시하는 경우 다양한 언어로 된 사용자의 오디오 입력을 받을 수 있습니다. 이런 경우 텍스트 변환 요청에 단일 언어 코드를 지정하기가 상당히 어려울 수 있습니다.
여러 언어 인식
Cloud Speech-to-Text는 오디오 데이터에 포함될 수 있는 대체 언어 집합을 지정하는 방법을 제공합니다. Cloud Speech-to-Text로 오디오 스크립트 작성 요청을 보낼 때 오디오 데이터에 포함되었을 수 있는 추가 언어의 목록을 제공할 수 있습니다. 요청에 언어 목록을 포함하면 Cloud Speech-to-Text는 제공된 대체 언어 샘플에 가장 적합한 언어를 기반으로 오디오를 텍스트로 변환하려고 시도합니다. 그런 다음 Cloud Speech-to-Text는 텍스트 변환 결과에 예측한 언어 코드로 라벨을 표시합니다.
이 기능은 음성 명령이나 검색어와 같은 짧은 말을 텍스트로 변환해야 하는 앱에 적합합니다. 기본 언어 외에 Cloud Speech-to-Text가 지원하는 언어 중에서 최대 3개까지 대체 언어로 목록에 포함할 수 있습니다(총 4개 언어).
음성 텍스트 변환 요청에 대체 언어를 지정할 수 있는 경우라도 languageCode 필드에 기본 언어 코드를 제공해야 합니다. 또한, 요청하는 언어의 수를 최소로 제한해야 합니다. 요청하는 대체 언어 코드가 적을수록 Cloud Speech-to-Text가 정확한 언어를 선택할 확률이 높습니다. 단일 언어만 지정할 때 가장 좋은 결과를 얻을 수 있습니다.
오디오 텍스트 변환 요청에 언어 인식 사용 설정
오디오 텍스트 변환에 대체 언어를 지정하려면 요청에 대한 RecognitionConfig 파라미터에서 alternativeLanguageCodes 필드를 언어 코드 목록으로 설정해야 합니다. Cloud STT는 speech:recognize, speech:longrunningrecognize, 스트리밍 등 모든 음성 인식 방법에서 대체 언어 코드를 지원합니다.
로컬 파일 사용
프로토콜
자세한 내용은 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/v1p1beta1/speech:recognize \ --data '{ "config": { "encoding": "LINEAR16", "languageCode": "en-US", "alternativeLanguageCodes": ["fr-FR", "de-DE"], "model": "command_and_search" }, "audio": { "uri": "gs://cloud-samples-tests/speech/commercial_mono.wav" } }' > multi-language.txt
요청이 성공하면 서버는 200 OK HTTP 상태 코드와 응답을 JSON 형식으로 반환하여 multi-language.txt라는 파일에 저장합니다.
{
"results": [
{
"alternatives": [
{
"transcript": "hi I'd like to buy a Chromecast I'm ..."
"confidence": 0.9466864
}
],
"languageCode": "en-us"
},
{
"alternatives": [
{
"transcript": " let's go with the black one",
"confidence": 0.9829583
}
],
"languageCode": "en-us"
},
]
}
Java
Cloud STT용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud STT 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Cloud STT Java API 참고 문서를 확인하세요.
Cloud STT에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Node.js
Cloud STT용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud STT 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Cloud STT Node.js API 참고 문서를 확인하세요.
Cloud STT에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
Cloud STT용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud STT 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Cloud STT Python API 참고 문서를 확인하세요.
Cloud STT에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
원격 파일 사용
Java
Cloud STT용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud STT 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Cloud STT Java API 참고 문서를 확인하세요.
Cloud STT에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Node.js
Cloud STT용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud STT 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Cloud STT Node.js API 참고 문서를 확인하세요.
Cloud STT에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
Cloud STT용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud STT 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Cloud STT Python API 참고 문서를 확인하세요.
Cloud STT에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.