为什么我会得到一根“断管”#34;尝试连接IBM Watson API时出错?

时间:2017-05-23 03:24:52

标签: python watson

当尝试使用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旨在管理流媒体请求。目前尚不清楚为什么我会得到这种性质的错误。欢迎解决方案......

1 个答案:

答案 0 :(得分:2)

好吧,我至少丢失了一个小时,所以与其他人分享......这个问题是错误传递我的凭据(用户名两次)。但是,不要返回一条错误消息,而是说“未经授权的凭据”的性质。正如您所期望的那样,连接超时。

所有人都说...如果您在尝试连接到Watson API时遇到此错误,则可能是凭据问题。检查您的用户名和密码。