Partitionnement des locuteurs (diarisation) - Amazon Transcribe

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Partitionnement des locuteurs (diarisation)

Grâce à la diarisation des haut-parleurs, vous pouvez faire la distinction entre les différents haut-parleurs dans votre sortie de transcription. Amazon Transcribe peut différencier un maximum de 30 locuteurs uniques et étiqueter le texte de chaque locuteur avec une valeur unique (spk_0jusqu'àspk_9).

Outre les sections de transcription standard (transcripts et items), les demandes pour lesquelles le partitionnement des locuteurs est activé incluent une section speaker_labels. Cette section est regroupée par locuteur et contient des informations sur chaque énoncé, notamment l’étiquette du locuteur et des horodatages.

"speaker_labels": { "channel_label": "ch_0", "speakers": 2, "segments": [ { "start_time": "4.87", "speaker_label": "spk_0", "end_time": "6.88", "items": [ { "start_time": "4.87", "speaker_label": "spk_0", "end_time": "5.02" }, ... { "start_time": "8.49", "speaker_label": "spk_1", "end_time": "9.24", "items": [ { "start_time": "8.49", "speaker_label": "spk_1", "end_time": "8.88" },

Pour consulter un exemple de transcription complet avec partitionnement des locuteurs (pour deux locuteurs), consultez la section Exemple de sortie de diarisation (lot).

Partitionnement des locuteurs dans une transcription par lots

Pour partitionner des locuteurs dans une transcription par lots, consultez les exemples suivants :

  1. Connectez-vous à la AWS Management Console.

  2. Dans le volet de navigation, choisissez Tâches de transcription, puis sélectionnez Créer une tâche (en haut à droite). La page Spécifier les détails de la tâche s’ouvre.

    Amazon Transcribe page « Spécifier les détails du travail » de la console. Dans le volet « Paramètres de la tâche », vous pouvez définir un nom pour votre tâche de transcription, sélectionner un type de modèle et définir vos paramètres de langue.
  3. Renseignez les champs que vous souhaitez inclure sur la page Spécifier les détails de la tâche, puis sélectionnez Suivant. Vous accédez alors à la page Configurer la tâche - facultatif.

    Dans le volet Paramètres audio, sélectionnez Partitionnement des locuteurs (sous l’en-tête « Type d’identification audio »). Vous pouvez éventuellement spécifier le nombre de locuteurs que vous souhaitez partitionner, jusqu’à un maximum de 10.

    Amazon Transcribe page « Configurer le travail » de la console. Dans le volet « Paramètres audio », vous pouvez activer « Partitionnement des locuteurs ».
  4. Sélectionnez Créer une tâche pour exécuter votre tâche de transcription.

Cet exemple utilise le start-transcription-job​​​. Pour plus d’informations, consultez StartTranscriptionJob.

aws transcribe start-transcription-job \ --region us-west-2 \ --transcription-job-name my-first-transcription-job \ --media MediaFileUri=s3://DOC-EXAMPLE-BUCKET/my-input-files/my-media-file.flac \ --output-bucket-name DOC-EXAMPLE-BUCKET \ --output-key my-output-files/ \ --language-code en-US \ --show-speaker-labels TRUE \ --max-speaker-labels 3

Voici un autre exemple d'utilisation de la start-transcription-jobcommande et d'un corps de requête qui permet le partitionnement des haut-parleurs avec cette tâche.

aws transcribe start-transcription-job \ --region us-west-2 \ --cli-input-json file://my-first-transcription-job.json

Le fichier my-first-transcription-job.json contient le corps de requête suivant.

{ "TranscriptionJobName": "my-first-transcription-job", "Media": { "MediaFileUri": "s3://DOC-EXAMPLE-BUCKET/my-input-files/my-media-file.flac" }, "OutputBucketName": "DOC-EXAMPLE-BUCKET", "OutputKey": "my-output-files/", "LanguageCode": "en-US", "ShowSpeakerLabels": 'TRUE', "MaxSpeakerLabels": 3 }

Cet exemple utilise le AWS SDK for Python (Boto3) pour identifier les canaux à l'aide de la méthode start_transcription_job. Pour plus d'informations, consultez StartTranscriptionJob.

from __future__ import print_function import time import boto3 transcribe = boto3.client('transcribe', 'us-west-2') job_name = "my-first-transcription-job" job_uri = "s3://DOC-EXAMPLE-BUCKET/my-input-files/my-media-file.flac" transcribe.start_transcription_job( TranscriptionJobName = job_name, Media = { 'MediaFileUri': job_uri }, OutputBucketName = 'DOC-EXAMPLE-BUCKET', OutputKey = 'my-output-files/', LanguageCode = 'en-US', Settings = { 'ShowSpeakerLabels': True, 'MaxSpeakerLabels': 3 } ) while True: status = transcribe.get_transcription_job(TranscriptionJobName = job_name) if status['TranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']: break print("Not ready yet...") time.sleep(5) print(status)

Partitionnement des locuteurs dans une transcription en streaming

Pour partitionner des locuteurs dans une transcription en streaming, consultez les exemples suivants :

  1. Connectez-vous à la AWS Management Console.

  2. Dans le panneau de navigation, choisissez Transcription en temps réel. Faites défiler jusqu’à Paramètres audio et développez ce champ s’il est réduit.

    Amazon Transcribe capture d'écran de la console : l'onglet « paramètres audio » sur la page « transcription en temps réel ».
  3. Activez Partitionnement des locuteurs.

    Amazon Transcribe capture d'écran de la console : onglet « paramètres audio » étendu avec le partitionnement des haut-parleurs activé.
  4. Vous êtes prêt à transcrire votre flux. Sélectionnez Démarrer le streaming et commencez à parler. Pour mettre fin à votre dictée, sélectionnez Arrêter le streaming.

Cet exemple crée une requête HTTP/2 qui partitionne les locuteurs dans votre sortie de transcription. Pour plus d'informations sur l'utilisation du streaming HTTP/2 avec Amazon Transcribe, consultezConfiguration d'un flux HTTP /2. Pour plus de détails sur les paramètres et les en-têtes spécifiques à Amazon Transcribe, voir StartStreamTranscription.

POST /stream-transcription HTTP/2 host: transcribestreaming.us-west-2.amazonaws.com X-Amz-Target: com.amazonaws.transcribe.Transcribe.StartStreamTranscription Content-Type: application/vnd.amazon.eventstream X-Amz-Content-Sha256: string X-Amz-Date: 20220208T235959Z Authorization: AWS4-HMAC-SHA256 Credential=access-key/20220208/us-west-2/transcribe/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date;x-amz-target;x-amz-security-token, Signature=string x-amzn-transcribe-language-code: en-US x-amzn-transcribe-media-encoding: flac x-amzn-transcribe-sample-rate: 16000 x-amzn-transcribe-show-speaker-label: true transfer-encoding: chunked

Les définitions des paramètres se trouvent dans la référence d'API ; les paramètres communs à toutes les opérations d' AWS API sont répertoriés dans la section Paramètres communs.

Cet exemple crée une URL présignée qui sépare les locuteurs dans votre sortie de transcription. Les sauts de ligne ont été ajoutés pour faciliter la lecture. Pour plus d'informations sur l'utilisation WebSocket des flux avec Amazon Transcribe, consultezConfiguration d'un WebSocket stream. Pour plus de détails sur les paramètres, consultez la section StartStreamTranscription.

GET wss://transcribestreaming.us-west-2.amazonaws.com:8443/stream-transcription-websocket? &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIAIOSFODNN7EXAMPLE%2F20220208%2Fus-west-2%2Ftranscribe%2Faws4_request &X-Amz-Date=20220208T235959Z &X-Amz-Expires=300 &X-Amz-Security-Token=security-token &X-Amz-Signature=string &X-Amz-SignedHeaders=content-type%3Bhost%3Bx-amz-date &language-code=en-US &specialty=PRIMARYCARE &type=DICTATION &media-encoding=flac &sample-rate=16000 &show-speaker-label=true

Les définitions des paramètres se trouvent dans la référence d'API ; les paramètres communs à toutes les opérations d' AWS API sont répertoriés dans la section Paramètres communs.