在Watson中使用数据集

时间:2018-12-13 18:20:07

标签: sql database chatbot ibm-watson

我正在与IBM Cloud Services一起进行大学项目。我和我的团队已经通过Watson Assistant服务创建了我们的虚拟助手,现在我们想在助手中使用大量数据集。我们实际上不知道如何实现此数据集以及如何使用用户提供的信息来从数据集中进行选择。希望您的答复

1 个答案:

答案 0 :(得分:1)

这是完成您要完成的工作的一种通用方法:

您需要收集context variables以确定哪些歌曲信息发送回用户。一种有效的方法是使用插槽。 here's a guide on that

收集的上下文变量示例如下所示:

{
    genre: "hiphop",
    mood: "upbeat",
    instrumental: false
}

因此,机器人从此信息中知道,它会以快节奏的速度返回嘻哈歌曲,而这并没有帮助。

我想您可能已经走到了这一步,但是下一步是回到您的数据集进行查询并返回那些歌曲列表。

有几种不同的方法可以做到这一点:

  1. 您可以将数据集存储在Watson Assistant中作为预设的上下文变量;这可能没有意义,因为它是一个大数据集。只有一些选择才真正有意义。

  2. 您可以在业务流程层中查询数据集。 Watson Assistant将返回一条消息,并带有查询数据集的操作,然后再将其返回给最终用户,业务流程层将进行查询并填写返回的信息。这有点复杂,因为您需要构建和管理业务流程层-尽管那里有一些服务可以帮助您。这是带有watson助手的业务流程层的示意图: watson assistant orchestration

  3. 您可以使用IBM云功能从Watson Assistant内对数据集进行查询。在节点中收集信息后,您将指示Watson Assistant调用查询您的数据集的云函数。这种方法的好处是,所有内容都包含在WA和云函数中(不需要业务流程层),尽管存在超时等限制,因为作为API的Watson Assistant需要“立即”响应。这是有关making programmatic calls from a dialog node的更多信息。

希望这会有所帮助。