在 google 云语音 api 中使用增强模型

using enhanced model in google cloud speech api

我正在尝试在 Google 演讲 API 中使用增强模型,例如:

gcs_uri="gs://mybucket/averylongaudiofile.ogg"

client = speech.SpeechClient()

audio = types.RecognitionAudio(uri=gcs_uri)
config = types.RecognitionConfig(
        encoding=enums.RecognitionConfig.AudioEncoding.OGG_OPUS,
        language_code='en-US',
        sample_rate_hertz=48000,
        use_enhanced=True,
        model='phone_call',
        enable_word_time_offsets=True,
        enable_automatic_punctuation=True)

operation = client.long_running_recognize(config, audio)

我在项目的 'Cloud Speech API' 设置中启用了数据记录,以便能够使用增强模型

当我运行它时,它抛出以下错误:

Traceback (most recent call last):   File "./transcribe.py", line 126, in <module>
    enable_automatic_punctuation=True) ValueError: Protocol message RecognitionConfig has no "use_enhanced" field.

有什么建议吗?

您可以在v1p1beta1 package中的RecognitionConfig类型中使用"use_enhanced"。

为了能够 运行 你的例子,你只需要修改你的导入,如下所示:

import google.cloud.speech_v1p1beta1 as speech
gcs_uri="gs://mybucket/averylongaudiofile.ogg"

client = speech.SpeechClient()
audio = speech.types.RecognitionAudio(uri=gcs_uri)
config = speech.types.RecognitionConfig(
        encoding=speech.enums.RecognitionConfig.AudioEncoding.OGG_OPUS,
        language_code='en-US',
        sample_rate_hertz=48000,
        use_enhanced=True,
        model='phone_call',
        enable_word_time_offsets=True,
        enable_automatic_punctuation=True)
operation = client.long_running_recognize(config, audio)