当尝试使用Python SDK连接到IBM WATSON的Speech-to-Text API并遵循文档here中的示例时,我收到以下错误:
" ConnectionError :('连接已中止。',错误(32,'断开管道'))在对URL发出POST请求时。"
speech_to_text = SpeechToTextV1(
username=os.environ['WATSON_SPEECH_USERNAME'],
password=os.environ['WATSON_SPEECH_PASSWORD'],
x_watson_learning_opt_out=False
)
def speech_to_text_api_call(audio_filename):
with open(audio_filename, 'rb') as a_file:
http_response = speech_to_text.recognize(
a_file,
content_type='audio/wav',
word_alternatives_threshold = 0.5,
word_confidence = True,
timestamps = True,
profanity_filter = False,
smart_formatting = True,
speaker_labels = True,)
return http_response
test = speech_to_text_api_call('temp/test-audio.wav')
我认为SDK旨在管理流媒体请求。目前尚不清楚为什么我会得到这种性质的错误。欢迎解决方案......
答案 0 :(得分:2)
好吧,我至少丢失了一个小时,所以与其他人分享......这个问题是错误传递我的凭据(用户名两次)。但是,不要返回一条错误消息,而是说“未经授权的凭据”的性质。正如您所期望的那样,连接超时。
所有人都说...如果您在尝试连接到Watson API时遇到此错误,则可能是凭据问题。检查您的用户名和密码。