循环Q& IBM沃森对话?

时间:2018-03-19 18:01:53

标签: python-2.7 watson-conversation

我试图再次将其循环回来而不是结束,所以它允许你在沃森的第一个回复之后向沃森谈话发送另一个问题。然而,我是一个完整的新手,并发现它很难,所以任何帮助将不胜感激!

import json
import watson_developer_cloud

conversation = watson_developer_cloud.ConversationV1(username='', password='', version='2018-03-16')
question = raw_input("what is youre question?\n")
response = conversation.message( workspace_id='*', input={ 'text': question }) 
print('\n'.join(response['output']['text']))

1 个答案:

答案 0 :(得分:0)

在这种情况下,您需要将第一条消息中的context发送到下一条帖子消息,然后您将继续对话流程。总结,您需要包含上一个响应中的context object。主要问题是不维护上下文对象

@Simon O'Doherty做了一个如何使用Python做到这一点的例子,检查所有代码here

result = '\n'.join(response['output']['text'])
context = response['context']

return result

然后:

response = test('I want to make a reservation')
print(response)
response = test('tomorrow')
print(response)
  • 查看来自Watson Developer Cloud的Watson Conversation的Official example

  • 详细了解如何在官方API Reference - Python中使用对话。