Chirp 3는 피드백과 경험을 기반으로 사용자 요구사항을 충족하도록 설계된 최신 세대의 Google 다국어 ASR 전용 생성 모델입니다. 정확성과 속도 측면에서 원래 Chirp 및 Chirp 2 모델을 개선하고 화자 분할과 같은 주요 새 기능으로 확장합니다.
모델 세부정보
Chirp_3 세부정보
모델 식별자
Chirp 3는 Speech-to-Text API V2에서만 사용할 수 있으며 다른 모델과 마찬가지로 사용할 수 있습니다. API를 사용할 때는 인식 요청에 적절한 식별자를 지정하고 Google Cloud 콘솔을 사용할 때는 모델 이름을 지정합니다.
모델 | 모델 식별자 |
Chirp 3 | chirp_3 |
API 메서드
모든 인식 방법이 동일한 언어 세트를 지원하지 않습니다. Chirp 3는 Speech-to-Text API V2에서 사용할 수 있으므로 다음 인식 방법을 지원합니다. 모든 인식 방법이 동일한 언어 세트를 지원하지 않습니다. Chirp 3는 Speech-to-Text API V2에서 사용할 수 있으므로 다음 인식 방법을 지원합니다.
API | API 메서드 지원 | 지원 |
v2 | Speech.BatchRecognize(1분~1시간의 긴 오디오에 적합) | 지원됨 |
v2 | Speech.Recognize(1분 미만의 오디오에 적합) | 지원되지 않음 |
v2 | Speech.StreamingRecognize(스트리밍 및 실시간 오디오에 적합) | 지원되지 않음 |
사용 가능한 리전
Chirp 3는 다음 Google Cloud 리전에서 사용할 수 있으며 더 많은 리전이 계획되어 있습니다.
Google Cloud 영역 | 출시 준비 |
us-west1 | 비공개 프리뷰 |
여기에 설명된 대로 Location API를 사용하여 각 스크립트 작성 모델에 대해 지원되는 Google Cloud 리전, 언어, 기능의 최신 목록을 확인할 수 있습니다.
스크립트 작성 지원 언어
Chirp 3는 BatchRecognize에서 다음 언어로만 스크립트 작성을 지원합니다.
언어 | BCP-47 코드 |
아랍어(이집트) | ar-EG |
아랍어(사우디아라비아) | ar-SA |
벵골어(방글라데시) | bn-BD |
벵골어(인도) | bn-IN |
체코어(체코) | cs-CZ |
덴마크어(덴마크) | da-DK |
그리스어(그리스) | el-GR |
스페인어(멕시코) | es-MX |
에스토니아어(에스토니아) | et-EE |
페르시아어(이란) | fa-IR |
핀란드어(핀란드) | fi-FI |
필리핀어(필리핀) | fil-PH |
프랑스어(캐나다) | fr-CA |
구자라트어(인도) | gu-IN |
크로아티아어(크로아티아) | hr-HR |
헝가리어(헝가리) | hu-HU |
인도네시아어(인도네시아) | id-ID |
히브리어(이스라엘) | iw-IL |
칸나다어(인도) | kn-IN |
리투아니아어(리투아니아) | lt-LT |
라트비아어(라트비아) | lv-LV |
말라얄람어(인도) | ml-IN |
마라티어(인도) | mr-IN |
네덜란드어(네덜란드) | nl-NL |
노르웨이어(노르웨이) | no-NO |
펀자브어(인도) | pa-IN |
폴란드어(폴란드) | pl-PL |
포르투갈어(포르투갈) | pt-PT |
루마니아어(루마니아) | ro-RO |
러시아어(러시아) | ru-RU |
슬로바키아어(슬로바키아) | sk-SK |
슬로베니아어(슬로베니아) | sl-SI |
세르비아어(세르비아) | sr-RS |
스웨덴어(스웨덴) | sv-SE |
타밀어(인도) | ta-IN |
텔루구어(인도) | te-IN |
태국어(태국) | th-TH |
터키어(터키) | tr-TR |
우크라이나어(우크라이나) | uk-UA |
우르두어(파키스탄) | ur-PK |
베트남어(베트남) | vi-VN |
중국어(중국) | zh-CN |
중국어(타이완) | zh-TW |
줄루어(남아프리카 공화국) | zu-SA |
화자 분할 지원 언어
언어 | BCP-47 코드 |
중국어(간체, 중국) | cmn-Hans-CN |
독일어(독일) | de-DE |
영어(호주) | en-AU |
영어(영국) | en-GB |
영어(인도) | en-IN |
영어(미국) | en-US |
스페인어(스페인) | en-ES |
스페인어(미국) | en-US |
프랑스어(프랑스) | fr-FR |
힌디어(인도) | hi-IN |
이탈리아어(이탈리아) | it-IT |
일본어(일본) | ja-JP |
한국어(대한민국) | ko-KR |
포르투갈어(브라질) | pt-BR |
기능 지원 및 제한사항
Chirp 3는 다음 기능을 지원합니다.
기능 | 설명 | 출시 단계 |
자동 구두점 | 모델에 의해 자동으로 생성되며 원하는 경우 사용 중지할 수 있습니다. | 미리보기 |
자동 대문자 사용 | 모델에 의해 자동으로 생성되며 원하는 경우 사용 중지할 수 있습니다. | 미리보기 |
화자 분할 | 단일 채널 오디오 샘플에서 여러 화자를 자동으로 식별합니다. | 미리보기 |
언어 제약이 없는 오디오 스크립트 작성 | 모델은 오디오 파일에서 음성 언어를 자동으로 추론하여 가장 흔한 언어로 스크립트를 작성합니다. | 미리보기 |
Chirp 3는 다음 기능을 지원하지 않습니다.
기능 | 설명 |
단어 시간(타임스탬프) | 모델에 의해 자동으로 생성되며 원하는 경우 사용 중지할 수 있습니다. |
단어 수준의 신뢰도 점수 | API는 값을 반환하지만 실제 신뢰도 점수는 아닙니다. |
음성 적응(편향) | 특정 용어 또는 고유명사의 인식 정확도를 높이기 위해 문구 또는 단어 형식으로 모델에 힌트를 제공합니다. |
Chirp 3 사용
스크립트 작성 및 화자 분할 작업에 Chirp 3 사용
화자 분할을 적용한 Chirp 3 일괄 요청을 사용하여 스크립트 작성
스크립트 작성에 Chirp 3를 사용하는 방법 알아보기
일괄 음성 인식 수행
Cloud Speech 서비스가 Cloud Storage 스토리지 버킷을 읽도록 허용합니다(비공개 프리뷰 중에 일시적으로 필요함). 이는 Google Cloud CLI 명령어를 사용하여 명령줄에서 실행할 수 있습니다.
gcloud storage buckets add-iam-policy-binding gs://<YOUR_BUCKET_NAME_HERE> --member=serviceAccount:service-727103546492@gcp-sa-aiplatform.iam.gserviceaccount.com --role=roles/storage.objectViewer
또는 http://console.cloud.google.com/storage/browser로 이동하여 Cloud 콘솔을 사용하고 버킷을 선택한 후 권한 > 액세스 권한 부여를 클릭하고 다음과 같이 서비스 계정을 추가합니다.

import os
from google.cloud.speech_v2 import SpeechClient
from google.cloud.speech_v2.types import cloud_speech
from google.api_core.client_options import ClientOptions
PROJECT_ID = os.getenv("GOOGLE_CLOUD_PROJECT")
def transcribe_batch_chirp3(
audio_uri: str,
) -> cloud_speech.BatchRecognizeResults:
"""Transcribes an audio file from a Google Cloud Storage URI using the Chirp 3 model of Google Cloud Speech-to-Text V2 API.
Args:
audio_uri (str): The Google Cloud Storage URI of the input
audio file. E.g., gs://[BUCKET]/[FILE]
Returns:
cloud_speech.RecognizeResponse: The response from the
Speech-to-Text API containing the transcription results.
"""
# Instantiates a client
client = SpeechClient(
client_options=ClientOptions(
api_endpoint="us-west1-speech.googleapis.com",
)
)
speaker_diarization_config = cloud_speech.SpeakerDiarizationConfig(
min_speaker_count=1, # minimum number of speakers
max_speaker_count=6, # maximum expected number of speakers
)
config = cloud_speech.RecognitionConfig(
auto_decoding_config=cloud_speech.AutoDetectDecodingConfig(),
language_codes=["en-US"], # Use "auto" to detect language
model="chirp_3",
features=cloud_speech.RecognitionFeatures(
diarization_config=speaker_diarization_config,
),
)
file_metadata = cloud_speech.BatchRecognizeFileMetadata(uri=audio_uri)
request = cloud_speech.BatchRecognizeRequest(
recognizer=f"projects/{PROJECT_ID}/locations/us-west1/recognizers/_",
config=config,
files=[file_metadata],
recognition_output_config=cloud_speech.RecognitionOutputConfig(
inline_response_config=cloud_speech.InlineOutputConfig(),
),
)
# Transcribes the audio into text
operation = client.batch_recognize(request=request)
print("Waiting for operation to complete...")
response = operation.result(timeout=120)
for result in response.results[audio_uri].transcript.results:
print(f"Transcript: {result.alternatives[0].transcript}")
print(f"Detected Language: {result.language_code}")
print(f"Speakers per word: {result.alternatives[0].words}")
return response.results[audio_uri].transcript