Chirp 3 è l'ultima generazione di modelli generativi multilingue specifici per il riconoscimento vocale automatico (ASR) di Google, progettati per soddisfare le esigenze degli utenti in base al feedback e all'esperienza. Chirp 3 offre maggiore precisione e velocità rispetto ai modelli Chirp precedenti e fornisce la diarizzazione e il rilevamento automatico della lingua.
Dettagli modello
Chirp 3: Transcription è disponibile esclusivamente nell'API Speech-to-Text V2.
Identificatori modello
Puoi utilizzare Chirp 3: Transcription come qualsiasi altro modello specificando l'identificatore del modello appropriato nella richiesta di riconoscimento quando utilizzi l'API o il nome del modello nella console Google Cloud . Specifica l'identificatore appropriato nel riconoscimento.
Modello | Identificatore modello |
Chirp 3 | chirp_3 |
Metodi API
Non tutti i metodi di riconoscimento supportano gli stessi set di disponibilità delle lingue, poiché Chirp 3 è disponibile nell'API Speech-to-Text V2, supporta i seguenti metodi di riconoscimento: Non tutti i metodi di riconoscimento supportano gli stessi set di disponibilità delle lingue, poiché Chirp 3 è disponibile nell'API Speech-to-Text V2, supporta i seguenti metodi di riconoscimento:
API | Supporto del metodo API | Assistenza |
v2 | Speech.StreamingRecognize (ideale per lo streaming e l'audio in tempo reale) | Supportato |
v2 | Speech.Recognize (ideale per audio di durata inferiore a un minuto) | Supportato |
v2 | Speech.BatchRecognize (ideale per audio lunghi da 1 minuto a 1 ora) | Supportato |
Disponibilità a livello di regione
Chirp 3 è disponibile nelle seguenti Google Cloud regioni, con altre in programma:
Google Cloud Zona | Idoneità al lancio |
us
|
Anteprima pubblica |
Utilizzando l'API Locations come spiegato qui, puoi trovare l'elenco più recente di regioni, lingue, impostazioni internazionali e funzionalità supportate per ogni modello di trascrizione. Google Cloud
Lingue disponibili per la trascrizione
Chirp 3 supporta la trascrizione in StreamingRecognize
, Recognize
e BatchRecognize
nelle seguenti lingue:
Lingua | BCP-47 Code |
Arabo (Emirati Arabi Uniti) | ar-AE |
Arabo (Bahrain) | ar-BH |
Arabo (Algeria) | ar-DZ |
Arabo (Egitto) | ar-EG |
Arabo (Israele) | ar-IL |
Curdo centrale (Iraq) | ar-IQ |
Arabo (Giordania) | ar-JO |
Arabo (Kuwait) | ar-KW |
Arabo (Libano) | ar-LB |
Arabo (Marocco) | ar-MA |
Arabo (Mauritania) | ar-MR |
Arabo (Oman) | ar-OM |
Arabo (Stato di Palestina) | ar-PS |
Arabo (Qatar) | ar-QA |
Arabo (Arabia Saudita) | ar-SA |
Arabo (Siria) | ar-SY |
Arabo (Tunisia) | ar-TN |
Arabo | ar-XA |
Arabo (Yemen) | ar-YE |
Bulgaro (Bulgaria) | bg-BG |
Bengalese (Bangladesh) | bn-BD |
Bengalese (India) | bn-IN |
Catalano (Spagna) | ca-ES |
Cinese semplificato (Cina) | cmn-Hans-CN |
Cinese, cantonese (Hong Kong, tradizionale) | yue-Hant-HK |
Cinese, mandarino (tradizionale, Taiwan) | cmn-Hant-TW |
Ceco (Repubblica Ceca) | cs-CZ |
Danese (Danimarca) | da-DK |
Tedesco (Germania) | de-DE |
Greco (Grecia) | el-GR |
Inglese (Australia) | en-AU |
Inglese (Regno Unito) | en-GB |
Inglese (India) | en-IN |
Inglese (Filippine) | en-PH |
Inglese (Stati Uniti) | en-US |
Spagnolo (Messico) | es-MX |
Spagnolo (Spagna) | es-ES |
Spagnolo (Stati Uniti) | es-US |
Estone (Estonia) | et-EE |
Persiano (Iran) | fa-IR |
Francese (Francia) | fr-FR |
Finlandese (Finlandia) | fi-FI |
Filippino (Filippine) | fil-PH |
Francese (Canada) | fr-CA |
Gujarati (India) | gu-IN |
Hindi (India) | hi-IN |
Croato (Croazia) | hr-HR |
Ungherese (Ungheria) | hu-HU |
Armeno (Armenia) | hy-AM |
Indonesiano (Indonesia) | id-ID |
Italiano (Italia) | it-IT |
Ebraico (Israele) | iw-IL |
Giapponese (Giappone) | ja-JP |
Khmer (Cambogia) | km-KH |
Kannada (India) | kn-IN |
Coreano (Corea) | ko-KR |
Lao (Laos) | lo-LA |
Lituano (Lituania) | lt-LT |
Lettone (Lettonia) | lv-LV |
Malayalam (India) | ml-IN |
Marathi (India) | mr-IN |
Malese (Malaysia) | ms-MY |
Birmano (Myanmar) | my-MM |
Nepalese (Nepal) | ne-NP |
Olandese (Paesi Bassi) | nl-NL |
Norvegese (Norvegia) | no-NO |
Polacco (Polonia) | pl-PL |
Portoghese (Brasile) | pt-BR |
Portoghese (Portogallo) | pt-PT |
Rumeno (Romania) | ro-RO |
Russo (Russia) | ru-RU |
Slovacco (Slovacchia) | sk-SK |
Sloveno (Slovenia) | sl-SI |
Serbo (Serbia) | sr-RS |
Svedese (Svezia) | sv-SE |
Swahili | sw |
Tamil (India) | ta-IN |
Telugu (India) | te-IN |
Thailandese (Thailandia) | th-TH |
Turco (Turchia) | tr-TR |
Ucraino (Ucraina) | uk-UA |
Uzbeko (Uzbekistan) | uz-UZ |
Vietnamita (Vietnam) | vi-VN |
Lingue disponibili per la diarizzazione
Chirp 3 supporta la trascrizione e la diarizzazione solo in BatchRecognize
e Recognize
nelle seguenti lingue:
Lingua | Codice BCP-47 |
Cinese semplificato (Cina) | cmn-Hans-CN |
Tedesco (Germania) | de-DE |
Inglese (Regno Unito) | en-GB |
Inglese (India) | en-IN |
Inglese (Stati Uniti) | en-US |
Spagnolo (Spagna) | es-ES |
Spagnolo (Stati Uniti) | es-US |
Francese (Canada) | fr-CA |
Francese (Francia) | fr-FR |
Hindi (India) | hi-IN |
Italiano (Italia) | it-IT |
Giapponese (Giappone) | ja-JP |
Coreano (Corea) | ko-KR |
Portoghese (Brasile) | pt-BR |
Supporto e limitazioni delle funzionalità
Chirp 3 supporta le seguenti funzionalità:
Funzionalità | Descrizione | Fase di avvio |
Punteggiatura automatica | Vengono generati automaticamente dal modello e possono essere disattivati facoltativamente. | Anteprima |
Capitalizzazione automatica | Vengono generati automaticamente dal modello e possono essere disattivati facoltativamente. | Anteprima |
Speaker Diarization | Identifica automaticamente i diversi speaker in un campione audio a un solo canale. | Anteprima |
Trascrizione audio indipendente dalla lingua. | Il modello deduce automaticamente la lingua parlata nel file audio e trascrive nella lingua più diffusa. | Anteprima |
Chirp 3 non supporta le seguenti funzionalità:
Funzionalità | Descrizione |
Tempi delle parole (timestamp) | Vengono generati automaticamente dal modello e possono essere disattivati facoltativamente. |
Punteggi di confidenza a livello di parola | L'API restituisce un valore, ma non si tratta di un vero e proprio punteggio di confidenza. |
Adattamento vocale (Biasing) | Fornisci suggerimenti al modello sotto forma di frasi o parole per migliorare l'accuratezza del riconoscimento di termini specifici o nomi propri. |
Utilizzo di Chirp 3
Utilizzo di Chirp 3 per le attività di trascrizione e diarizzazione.
Trascrivere utilizzando la richiesta batch Chirp 3 con diarizzazione
Scopri come utilizzare Chirp 3 per le tue esigenze di trascrizione
Eseguire il riconoscimento vocale batch
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