Amazon Transcribe
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

入门 (AWS SDK for Python (Boto))

在本练习中,您将创建脚本,使用 SDK for Python 将语音转录为文本。要完成此练习,您需要:

  • 安装 AWS CLI。有关更多信息,请参阅 步骤 2:设置 AWS Command Line Interface (AWS CLI)。这将安装 AWS SDK for Python (Boto)。

  • 有 .WAV 或 .MP4 格式的语音文件,存储在具有适当权限的 S3 存储桶中。有关 Amazon Transcribe 所需的权限的更多信息,请参阅IAM 用户角色所需的权限。存储位置必须与您要调用的终端节点位于同一区域。此示例假定文件位于名为 test-transcribe 的 Amazon S3 存储桶中,文件名是 answer2.wav

from __future__ import print_function import time import boto3 transcribe = boto3.client('transcribe') job_name = "job name" job_uri = "https://S3 endpoint/test-transcribe/answer2.wav" transcribe.start_transcription_job( TranscriptionJobName=job_name, Media={'MediaFileUri': job_uri}, MediaFormat='wav', LanguageCode='en-US' ) 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)

转录任务完成后,结果将链接到 Amazon S3 预签名 URL,其中包含 JSON 格式的转录:

{ "jobName":"job ID", "accountId":"account ID", "results": { "transcripts":[ { "transcript":" that's no answer", "confidence":1.0 } ], "items":[ { "start_time":"0.180", "end_time":"0.470", "alternatives":[ { "confidence":0.84, "word":"that's" } ] }, { "start_time":"0.470", "end_time":"0.710", "alternatives":[ { "confidence":0.99, "word":"no" } ] }, { "start_time":"0.710", "end_time":"1.080", "alternatives":[ { "confidence":0.87, "word":"answer" } ] } ] }, "status":"COMPLETED" }