当使用AWS Transcribe实时转录服务时,可能会遇到BadRequestException错误。此错误通常表示请求中存在一些问题,例如缺少必需的参数或参数格式不正确。以下是一个示例代码,演示如何处理此错误:
import boto3
# 创建 AWS Transcribe 实时转录的客户端
transcribe_client = boto3.client('transcribe')
# 定义实时转录任务的参数
transcription_job_name = 'realtime-transcription-job'
language_code = 'en-US'
media_sample_rate_hertz = 44100
# 发起实时转录任务
try:
response = transcribe_client.start_stream_transcription(
LanguageCode=language_code,
MediaSampleRateHertz=media_sample_rate_hertz,
MediaEncoding='pcm',
MediaFormat='wav',
TranscriptionJobName=transcription_job_name,
Media={
'MediaFileUri': 's3://bucket-name/audio.wav'
}
)
print(response)
except transcribe_client.exceptions.BadRequestException as e:
print("BadRequestException: {}".format(e))
在上述代码中,我们首先创建了AWS Transcribe实时转录的客户端。然后,我们定义了实时转录任务的参数,例如语言代码,音频采样率等。
最后,我们使用start_stream_transcription
方法发起实时转录任务。如果出现BadRequestException错误,我们将捕获该异常并打印出错误消息。
请确保在代码中替换正确的bucket-name和audio.wav的值,以便指向包含要转录的音频文件的Amazon S3存储桶。
如果仍然无法解决问题,建议查看AWS Transcribe的文档和错误代码,以获取更多关于BadRequestException错误的详细信息,并根据需要进行调整。