Watson Conversation始终返回第一个Variation文本

时间:2017-09-09 14:59:47

标签: watson-conversation

我们正在使用Python的Watson Conversation。我们的对话框中有变体文本的回复,但我们总是收到第一个变体 - 即问题。从Bluemix Converation Tooling运行它时,该对话框可以正常工作。

def wd_conv_send_message(sTexto):
    # Replace with the context obtained from the initial request
    context = {}

    workspace_id = conv_workspaceid

    response = conversation.message(
        workspace_id=workspace_id,
        message_input={'text': sTexto},
        context=context
    )

    # print(json.dumps(response, indent=2))
    print(response['output']['text'][0])

enter image description here

2 个答案:

答案 0 :(得分:1)

变化:

response = conversation.message(
    workspace_id=workspace_id,
    message_input={'text': sTexto},
    context=context
)

到:

response = conversation.message(
    workspace_id=workspace_id,
    message_input={'text': sTexto},
    context=context
)
context = response['context']

会话是无国籍的。所以你需要发回你收到的上下文,否则它将不知道从哪里继续。

答案 1 :(得分:0)

事实证明,Watson Conversation方面有一些不稳定的行为,并结合调试:如果您从Pycharm运行/调试 - 设置顺序或随机 - 您只能获得第一个Variation几次(五次或更多次)。但是如果从Python解释器命令行运行,它似乎工作正常。所以,我猜 - 只是推测 - 它与从Pycharm运行时的一些时间问题有关。