模块“google.cloud.speech_v1p1beta1.types”没有“RecognitionAudio”成员

Str*_*ker 5 speech-recognition speech-to-text google-speech-api

尝试运行示例代码,但出现此错误”

Module 'google.cloud.speech_v1p1beta1.types' has no 'RecognitionAudio' member
Run Code Online (Sandbox Code Playgroud)

环境:python3x,linux,已安装和更新的 google-cloud lib

pip install --upgrade google-cloud-speech.
Run Code Online (Sandbox Code Playgroud)

安装了以下

  • 谷歌云 (0.34.0)
  • 谷歌云语音(0.36.3)

不知道还有什么要检查的。如果您有任何建议,那就太好了

import argparse
import io

def transcribe_file_with_enhanced_model():
    """Transcribe the given audio file using an enhanced model."""
    # [START speech_transcribe_enhanced_model_beta]
    from google.cloud import speech_v1p1beta1 as speech
    client = speech.SpeechClient()

    speech_file = 'resources/commercial_mono.wav'

    with io.open(speech_file, 'rb') as audio_file:
        content = audio_file.read()

    audio = speech.types.RecognitionAudio(content=content)

    config = speech.types.RecognitionConfig(
        encoding=speech.enums.RecognitionConfig.AudioEncoding.LINEAR16,
        sample_rate_hertz=8000,
        language_code='en-US',
        # Enhanced models are only available to projects that
        # opt in for audio data collection.
        use_enhanced=True,
        # A model must be specified to use enhanced model.
        model='phone_call')

    response = client.recognize(config, audio)

    for i, result in enumerate(response.results):
        alternative = result.alternatives[0]
        print('-' * 20)
        print('First alternative of result {}'.format(i))
        print('Transcript: {}'.format(alternative.transcript))
    # [END speech_transcribe_enhanced_model_beta]
Run Code Online (Sandbox Code Playgroud)

小智 0

使用

config = {
    "language_code": language_code,
    "sample_rate_hertz": sample_rate_hertz,
    "encoding": encoding,
    "use_enhanced": True,
    "model": 'phone_call',
}
audio = {"uri": storage_uri}
Run Code Online (Sandbox Code Playgroud)

代替

audio = speech.types.RecognitionAudio(content=content)

config = speech.types.RecognitionConfig(
    encoding=speech.enums.RecognitionConfig.AudioEncoding.LINEAR16,
    sample_rate_hertz=8000,
    language_code='en-US',
    use_enhanced=True,
    model='phone_call')
Run Code Online (Sandbox Code Playgroud)