Cette page explique comment attribuer des libellés aux différents locuteurs dans les données audio transcrites par Speech-to-Text.
Parfois, les données audio contiennent des passages où plusieurs locuteurs parlent. Par exemple, un fichier audio provenant d'un appel téléphonique comprend généralement les voix de deux personnes ou plus. Dans l'idéal, une transcription de l'appel inclut les locuteurs qui parlent et le moment où ils le font.
Identification du locuteur
Speech-to-Text peut reconnaître plusieurs locuteurs dans un même extrait audio. Lorsque vous envoyez une requête de transcription audio à Speech-to-Text, vous pouvez inclure un paramètre lui indiquant d'identifier les différents locuteurs de l'échantillon audio. Cette fonctionnalité, appelée identification du locuteur, permet de détecter le changement d'intervenant et attribue un numéro à chaque voix détectée dans le fichier audio.
Lorsque vous activez cette fonctionnalité dans votre requête de transcription, Speech-to-Text tente de distinguer les différentes voix incluses dans l'échantillon audio. Dans le résultat de la transcription, un libellé est attribué à chaque mot. Ce libellé contient un numéro correspondant à chaque locuteur. Les mots prononcés par un même locuteur portent le même numéro. Un résultat de transcription peut inclure autant de numéros que de locuteurs que Speech-to-Text peut identifier de manière unique dans l'échantillon audio.
Lorsque vous utilisez la fonctionnalité d'identification du locuteur, Speech-to-Text génère un agrégat mobile de l'ensemble des résultats fournis dans la transcription. Chaque résultat comprend les mots du résultat précédent. Ainsi, le tableau words
compris dans le résultat final fournit les résultats complets identifiant les locuteurs de la transcription.
Consultez la page Langues acceptées pour savoir si cette fonctionnalité est disponible pour votre langue.
Activer l'identification des locuteurs dans une requête
Pour activer l'identification des locuteurs, vous devez définir le champ enableSpeakerDiarization
sur true
dans les paramètres SpeakerDiarizationConfig
de la requête. Pour améliorer les résultats de la transcription, il est également recommandé de spécifier le nombre de locuteurs présents dans l'extrait audio en définissant la valeur diarizationSpeakerCount
au sein des paramètres SpeakerDiarizationConfig
. Si vous n'indiquez pas la valeur du champ diarizationSpeakerCount
, Speech-to-Text utilise une valeur par défaut.
Speech-to-Text permet d'utiliser la fonctionnalité d'identification du locuteur pour toutes les méthodes de reconnaissance vocale : speech:recognize
speech:longrunningrecognize
et Streaming.
Utiliser un fichier local
L'extrait de code suivant montre comment activer l'identification du locuteur dans une requête de transcription envoyée à Speech-to-Text à l'aide d'un fichier local.
Protocole
Reportez-vous au point de terminaison speech:recognize
de l'API pour obtenir des informations complètes.
Pour réaliser une reconnaissance vocale synchrone, exécutez une requête POST
en fournissant le corps de requête approprié. Voici un exemple de requête POST
utilisant curl
. L'exemple utilise Google Cloud CLI pour générer un jeton d'accès. Pour obtenir des instructions sur l'installation de gcloud CLI, consultez le guide de démarrage rapide.
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
Si la requête aboutit, le serveur renvoie un code d'état HTTP 200 OK
et la réponse au format JSON, enregistrée dans un fichier nommé 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
Pour savoir comment installer et utiliser la bibliothèque cliente pour Speech-to-Text, consultez la page Bibliothèques clientes Speech-to-Text. Pour en savoir plus, consultez la documentation de référence de l'API Speech-to-Text en langage Go.
Pour vous authentifier auprès de Speech-to-Text, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Speech-to-Text, consultez la page Bibliothèques clientes Speech-to-Text. Pour en savoir plus, consultez la documentation de référence de l'API Speech-to-Text en langage Java.
Pour vous authentifier auprès de Speech-to-Text, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Speech-to-Text, consultez la page Bibliothèques clientes Speech-to-Text. Pour en savoir plus, consultez la documentation de référence de l'API Speech-to-Text en langage Node.js.
Pour vous authentifier auprès de Speech-to-Text, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Speech-to-Text, consultez la page Bibliothèques clientes Speech-to-Text. Pour en savoir plus, consultez la documentation de référence de l'API Speech-to-Text en langage Python.
Pour vous authentifier auprès de Speech-to-Text, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Utiliser un bucket Cloud Storage
L'extrait de code suivant montre comment activer l'identification du locuteur dans une requête de transcription envoyée à Speech-to-Text à l'aide d'un fichier Google Cloud Storage.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour Speech-to-Text, consultez la page Bibliothèques clientes Speech-to-Text. Pour en savoir plus, consultez la documentation de référence de l'API Speech-to-Text en langage Go.
Pour vous authentifier auprès de Speech-to-Text, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Speech-to-Text, consultez la page Bibliothèques clientes Speech-to-Text. Pour en savoir plus, consultez la documentation de référence de l'API Speech-to-Text en langage Java.
Pour vous authentifier auprès de Speech-to-Text, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Speech-to-Text, consultez la page Bibliothèques clientes Speech-to-Text. Pour en savoir plus, consultez la documentation de référence de l'API Speech-to-Text en langage Node.js.
Pour vous authentifier auprès de Speech-to-Text, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Speech-to-Text, consultez la page Bibliothèques clientes Speech-to-Text. Pour en savoir plus, consultez la documentation de référence de l'API Speech-to-Text en langage Python.
Pour vous authentifier auprès de Speech-to-Text, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.