View a markdown version of this page

在批量转录中启用发言者划分 - Amazon Transcribe

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在批量转录中启用发言者划分

您可以使用 StartMedicalTranscriptionJob API 或 AWS 管理控制台,在批量转录作业中启用发言者划分。该功能使您能够在临床医生与患者对话中对每位说话者的文本进行划分,并确定谁在转录输出中说了什么。

要在转录作业中 AWS 管理控制台 使用启用说话者日记功能,请先启用音频识别,然后启用说话者分区。

  1. 登录到 AWS 管理控制台。

  2. 在导航窗格的 “ Amazon Transcribe 医疗” 下,选择 “转录作业”。

  3. 请选择创建任务。

  4. 在指定作业详细信息页面上,提供有关您的转录作业的信息。

  5. 选择下一步。

  6. 启用音频识别。

  7. 对于音频识别类型,请选择发言者划分。

  8. 在发言者人数上限中,输入您认为将在音频文件中发言的最大发言者数量。

  9. 选择创建。

使用批量转录作业启用发言者划分 (API)
  • 对于 StartMedicalTranscriptionJob API,请指定以下内容。

    1. 对于 MedicalTranscriptionJobName,请指定在您 AWS 账户中是唯一的名称。

    2. 对于 LanguageCode,指定与音频文件中所用语言对应的语言代码。

    3. 在 Media 对象的 MediaFileUri 参数中,指定要转录的音频文件的名称。

    4. 对于 Specialty,请指定音频文件中说话的临床医生的医学专科。

    5. 对于 Type,请指定 CONVERSATION。

    6. 对于OutputBucketName,请指定用于 Amazon S3 存储转录结果的存储桶。

    7. 对于 Settings 对象,指定以下内容。

      1. ShowSpeakerLabels – true.

      2. MaxSpeakerLabels – 介于 2 和 10 之间的整数,表示音频中您认为在说话的发言者数量。

以下请求使用启动初级保健临床医生患者对话的批量转录作业,同时启用了说话者分区。 适用于 Python (Boto3) 的 AWS SDK

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://amzn-s3-demo-bucket/my-input-files/my-media-file.flac" transcribe.start_medical_transcription_job( MedicalTranscriptionJobName = job_name, Media={ 'MediaFileUri': job_uri }, OutputBucketName = 'amzn-s3-demo-bucket', OutputKey = 'my-output-files/', LanguageCode = 'en-US', Specialty = 'PRIMARYCARE', Type = 'CONVERSATION', OutputBucketName = 'amzn-s3-demo-bucket', Settings = {'ShowSpeakerLabels': True, 'MaxSpeakerLabels': 2 } ) while True: status = transcribe.get_medical_transcription_job(MedicalTranscriptionJobName = job_name) if status['MedicalTranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']: break print("Not ready yet...") time.sleep(5) print(status)

以下示例代码显示了启用发言者划分情况下的转录作业的转录结果。

{ "jobName": "job ID", "accountId": "111122223333", "results": { "transcripts": [ { "transcript": "Professional answer." } ], "speaker_labels": { "speakers": 1, "segments": [ { "start_time": "0.000000", "speaker_label": "spk_0", "end_time": "1.430", "items": [ { "start_time": "0.100", "speaker_label": "spk_0", "end_time": "0.690" }, { "start_time": "0.690", "speaker_label": "spk_0", "end_time": "1.210" } ] } ] }, "items": [ { "start_time": "0.100", "end_time": "0.690", "alternatives": [ { "confidence": "0.8162", "content": "Professional" } ], "type": "pronunciation" }, { "start_time": "0.690", "end_time": "1.210", "alternatives": [ { "confidence": "0.9939", "content": "answer" } ], "type": "pronunciation" }, { "alternatives": [ { "content": "." } ], "type": "punctuation" } ] }, "status": "COMPLETED" }
转录从事初级保健的临床医生与患者之间对话的音频文件 (AWS CLI)
  • 运行以下代码。

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

    以下代码显示了 example-start-command.json 的内容。

    { "MedicalTranscriptionJobName": "my-first-med-transcription-job", "Media": { "MediaFileUri": "s3://amzn-s3-demo-bucket/my-input-files/my-audio-file.flac" }, "OutputBucketName": "amzn-s3-demo-bucket", "OutputKey": "my-output-files/", "LanguageCode": "en-US", "Specialty": "PRIMARYCARE", "Type": "CONVERSATION", "Settings":{ "ShowSpeakerLabels": true, "MaxSpeakerLabels": 2 } }