对话与沃森复杂

时间:2017-12-20 12:46:33

标签: node.js chatbot watson

我开始使用hostnamectl set-hostname myhostname开发chatbot,我觉得部署起来非常简单。但我对如何做到这一点有疑问,如果有可能的话(我在一些聊天机器人中看到过)。

一个例子是,使用对话我可以定义watson#intentions@ties。但是,给予选择的过程如何运作?例如,我问了一个问题“什么是最好的啤酒?”他会回答“有很多啤酒,但有5个给你的清单”这样的东西,所以他们将自己列在清单中。并且我可以点击并跟随对话等等。我在一些聊天机器人中看过这个,但我还没有看到如何用沃森做这类事情。

另一件事是,是否可以与后端进行交互?例如:“逾期账户”,我的后面会咨询银行并退回逾期账户。

我对这个话题感到非常困惑。最后,Watson是开发聊天机器人的最佳选择吗?

2 个答案:

答案 0 :(得分:1)

Watson会话工具用于创建内容的对话流,并且尚未设计用于直接在工具内部署其他选项(如按钮,视频等)。

为了做到这一点,你需要一个"编排"图层通常是带有代码的app.js,它允许您使用按钮,调用其他服务,与后端系统交互等。

这里可以找到一个示例工具包,它将支持许多facebook按钮和选项,但无论您使用哪个前端,逻辑都是相同的。该套件包括facebook按钮,轮播,分享按钮和图像。还包括一些额外的Watson服务,例如视觉识别和音调分析器,它们演示了与其他服务的交互。

Facebook bot actions

Simple HTML Front end with buttons

为了向用户显示选项,您只需在对话框输出中放置显示按钮所需的代码。例如"选择您的选项" option1

最近推出的还有用于进行服务后端调用的IBM Cloud Functions https://developer.ibm.com/recipes/tutorials/watson-conversation-ibm-cloud-functions-to-do-a-longtail-chatbot/

答案 1 :(得分:0)

只是补充了@ReeceMed所说的...... Watson只是一个API端点,所以你的app可以用一些自定义代码做很多事情。

关于您的第一个疑问,您需要创建一个#intentBeer,其中包含如何要求啤酒,最佳啤酒的示例:

  • “什么是最好的啤酒?”
  • “你能在这里推荐最好的啤酒吗?”
  • “我想在这里买到最好的啤酒!”
  • “我想要最好的啤酒,请”

我真的建议你在脑海里给出最多的例子,或者请求另一个人如何要求类似的东西。请参阅此项目示例conversation simple,使用IBM Developers中的Watson Conversation在Node.js中构建。

在Dialog中,您将创建一个能识别#intentBeer

的节点
if bot recognizes #intentBeer response: Oh! The best beer here is: - X <br> - Y <br> - Z <br>

因此,如果您使用的是网络示例,则可以在Watson响应中添加HTML标记,例如几个月前我回答的this answer

对于做某事,例如“过期帐户”示例,您可以看到此answer。基本上,您需要在context variable的回复中访问action objectpost /message,并且在后端,您将使用自定义代码执行某些操作。