In questa pagina viene descritto come ottenere le etichette per diversi interlocutori nei dati audio trascritti da Speech-to-Text.
A volte, i dati audio contengono campioni di più di una persona che parla. Ad esempio, l'audio di una telefonata di solito include le voci di due o più persone. Una trascrizione della chiamata, idealmente, include chi parla in quali momenti.
Speaker diarization
Speech-to-Text può riconoscere più persone che parlano nello stesso clip audio. Quando invii una richiesta di trascrizione audio a Speech-to-Text, puoi includere un parametro che indica a Speech-to-Text di identificare i diversi altoparlanti nel campione audio. Questa funzionalità, chiamata diarizzazione degli altoparlanti, rileva quando gli speaker cambiano ed etichetta in base al numero delle singole voci rilevate nell'audio.
Quando attivi la diarizzazione degli speaker nella richiesta di trascrizione, Speech-to-Text tenta di distinguere le diverse voci incluse nel campione audio. Il risultato della trascrizione contrassegna ogni parola con un numero assegnato ai singoli parlanti. Le parole pronunciate dalla stessa oratrice hanno lo stesso numero. Un risultato della trascrizione può includere numeri fino a un numero di altoparlanti pari a un numero di speaker pari a quello di Speech-to-Text in grado di identificare in modo univoco nel campione audio.
Quando utilizzi la diarizzazione degli altoparlanti, Speech-to-Text produce un'aggregazione progressiva di tutti i risultati forniti nella trascrizione. Ogni risultato include le parole del risultato precedente. Pertanto, l'array words
nel risultato finale fornisce i risultati completi e diarizzati della trascrizione.
Consulta la pagina di assistenza per le lingue per verificare se questa funzionalità è disponibile per la tua lingua.
Attiva la diarizzazione dello speaker in una richiesta
Per attivare la diarizzazione degli speaker, devi impostare il campo enableSpeakerDiarization
su true
nei parametri SpeakerDiarizationConfig
della richiesta. Per migliorare i risultati della trascrizione, devi anche specificare il numero di parlanti presenti nel clip audio
impostando il campo diarizationSpeakerCount
nei
parametri SpeakerDiarizationConfig
. Speech-to-Text utilizza un valore predefinito se non
fornisci un valore per diarizationSpeakerCount
.
Speech-to-Text supporta la diarizzazione
degli altoparlanti per tutti i metodi di riconoscimento vocale:
speech:recognize
speech:longrunningrecognize
e streaming.
Utilizza un file locale
Il seguente snippet di codice mostra come abilitare la diarizzazione di chi parla in una richiesta di trascrizione a Speech-to-Text
Protocollo
Per informazioni dettagliate, consulta l'endpoint API speech:recognize
.
Per eseguire il riconoscimento vocale sincrono, effettua una richiesta POST
e fornisci il
corpo della richiesta appropriato. Di seguito è riportato un esempio di richiesta POST
mediante curl
. L'esempio utilizza Google Cloud CLI per generare un token
di accesso. Per istruzioni sull'installazione di gcloud CLI, consulta la quickstart.
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", "diarizationConfig": { "enableSpeakerDiarization": true, "minSpeakerCount": 2, "maxSpeakerCount": 2 }, "model": "phone_call", }, "audio": { "uri": "gs://cloud-samples-tests/speech/commercial_mono.wav" } }' > speaker-diarization.txt
Se la richiesta riesce, il server restituisce un codice di stato HTTP 200 OK
e la risposta in formato JSON, salvata in un file denominato speaker-diarization.txt
.
{ "results": [ { "alternatives": [ { "transcript": "hi I'd like to buy a Chromecast and I was wondering whether you could help me with that certainly which color would you like we have blue black and red uh let's go with the black one would you like the new Chromecast Ultra model or the regular Chrome Cast regular Chromecast is fine thank you okay sure we like to ship it regular or Express Express please terrific it's on the way thank you thank you very much bye", "confidence": 0.92142606, "words": [ { "startTime": "0s", "endTime": "1.100s", "word": "hi", "speakerTag": 2 }, { "startTime": "1.100s", "endTime": "2s", "word": "I'd", "speakerTag": 2 }, { "startTime": "2s", "endTime": "2s", "word": "like", "speakerTag": 2 }, { "startTime": "2s", "endTime": "2.100s", "word": "to", "speakerTag": 2 }, ... { "startTime": "6.500s", "endTime": "6.900s", "word": "certainly", "speakerTag": 1 }, { "startTime": "6.900s", "endTime": "7.300s", "word": "which", "speakerTag": 1 }, { "startTime": "7.300s", "endTime": "7.500s", "word": "color", "speakerTag": 1 }, ... ] } ], "languageCode": "en-us" } ] }
Go
Per scoprire come installare e utilizzare la libreria client per Speech-to-Text, vedi Librerie client di Speech-to-Text. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Speech-to-Text.
Per eseguire l'autenticazione a Speech-to-Text, configura le Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Speech-to-Text, vedi Librerie client di Speech-to-Text. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Speech-to-Text.
Per eseguire l'autenticazione a Speech-to-Text, configura le Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per scoprire come installare e utilizzare la libreria client per Speech-to-Text, vedi Librerie client di Speech-to-Text. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Speech-to-Text.
Per eseguire l'autenticazione a Speech-to-Text, configura le Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Speech-to-Text, vedi Librerie client di Speech-to-Text. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python di Speech-to-Text.
Per eseguire l'autenticazione a Speech-to-Text, configura le Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
usa un bucket Cloud Storage
Il seguente snippet di codice mostra come abilitare la diarizzazione di chi parla in una richiesta di trascrizione a Speech-to-Text
Go
Per scoprire come installare e utilizzare la libreria client per Speech-to-Text, vedi Librerie client di Speech-to-Text. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Speech-to-Text.
Per eseguire l'autenticazione a Speech-to-Text, configura le Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Speech-to-Text, vedi Librerie client di Speech-to-Text. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Speech-to-Text.
Per eseguire l'autenticazione a Speech-to-Text, configura le Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per scoprire come installare e utilizzare la libreria client per Speech-to-Text, vedi Librerie client di Speech-to-Text. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Speech-to-Text.
Per eseguire l'autenticazione a Speech-to-Text, configura le Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Speech-to-Text, vedi Librerie client di Speech-to-Text. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python di Speech-to-Text.
Per eseguire l'autenticazione a Speech-to-Text, configura le Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.