2

我是 Watson 服务的新手。
我正在创建一个聊天机器人,以根据学生的个人资料为他推荐最好的课程。

我应该执行诸如
“2016 年
哪个课程的截止百分比最高?”、“过去三年截止百分比最高的前 3 门课程是哪些?”之类的查询。ETC。,

我所做的是因为我有数据库管理的基本知识,所以我创建了 SQL 表。

但我在考虑 IBM Watson Conversation and Discovery 将如何提供帮助。我应该完全使用对话来执行查询还是创建课程和其他参数的文档并使用 Discovery 来检索答案并将其与对话集成。

最终我的问题是 Watson Conversation 足够了吗?

4

3 回答 3

1

根据我对 IBM Watson API 的经验...我认为对话就足够了,但是您需要使用很好的示例来训练意图和实体,就像上面的示例一样。当您在 Watson Conversation Service 中创建 #Intents 和 @Entities 时,您可以看到我使用and创建条件答案以及 Simon O'Doherty 的最佳实践答案。intentsentities

如果您已经tables使用数据创建了,则不需要使用 Discovery,因为使用 Discovery 您将查询非结构化文档,在这种情况下:JSON、PDF、Word 等......请参阅官方架构:

在此处输入图像描述

Obs.:这是一个建议,也许 IBM 专业人士会同意,或者补充我的回答或为您回答另一种可能性。

于 2017-09-22T17:45:15.060 回答
1

对话最适合问题频率非常高的问题。这类问题被称为“短头”。您通常会看到的其他类型的问题被称为“长尾”问题。这些问题更难预料,因为用户需要的信息更加多样化。Discovery 在这些用例中效果更好,因为它提供了允许用户探索结果的功能(段落、相关性训练、聚合、过滤器等)。Discovery 允许您查询结构化和非结构化数据(不限于任何一种),并使用典型的信息检索方法对结果集进行切片和切块。

对话和发现也可以一起工作。您可以有一个对话界面来回答短头问题,然后在遇到无法以足够自信回答的问题时回退到 Discovery。

在这个特定的用例中,根据您的简要描述,您可能想要调查 Discovery,因为它允许您提交可以完成上述用例的查询,但您也可能受益于能够训练模型以识别哪个基于标记的基本事实,文档(在这种情况下为课程)可能是“好”的。当 Conversation 无法回答问题时,它也会有所帮助,因为返回一组可能的选项而不是什么都不返回更有用。

于 2017-09-25T17:25:29.397 回答
0

每当您知道用户的问题肯定会有某些已知的关键字时(在您的示例中为“截止百分比”),您需要使用 IBM 对话服务,但请记住您可以使用对话服务回复用户,但是对于处理查询和获取结果,Discovery Service 会很满意,因此将 Conversational Service 与 Discovery Service 集成是一个更好的主意。

于 2018-01-28T06:15:42.577 回答