我是Watson服务的新手
我正在创建一个聊天机器人,根据他的个人资料为学生提供最佳课程。
我应该执行类似于&#39的查询;哪个课程在2016年有最大截止百分比?',
'在过去三年中,截止百分比最高的前3个课程是哪些?'等,
我所做的是因为我掌握了数据库管理的基本知识,所以我创建了SQL表。
但我在考虑IBM Watson Conversation和Discovery如何提供帮助。 我是否应该完全使用对话来执行查询或创建课程和其他参数的文档,并使用Discovery来检索答案并将其与对话集成。
归根结底,我的问题是Watson Conversation足够吗?
答案 0 :(得分:1)
根据我对IBM Watson API的经验......我认为对话就足够了,但你需要用好的例子训练意图和实体,就像上面的例子一样。您可以使用intents
和entities
来创建条件,以及来自Simon O'Doherty的answer,以便在您创建时获得最佳做法# Watson Conversation Service内部的意图和@Entities。
如果您使用数据创建了tables
,则不需要使用Discovery,因为使用Discovery,您将查询非结构化文档,在这种情况下:JSON,PDF,Word等...参见官方架构:
Obs。:这是一个建议,也许IBM专业人士会同意,或补充我的答案或回答你的另一种可能性。
答案 1 :(得分:1)
对话最适合问题频率非常高的问题。这类问题被称为"短头"。 您通常会看到的其他类型的问题是那些被称为"长尾"的问题。由于用户所需的信息更加多样化,因此难以预测这些问题。发现在这些用例中效果更好,因为它提供了功能(段落,相关性培训,聚合,过滤器等),以允许用户探索结果。发现允许您查询结构化和非结构化数据(不限于任何一种),并使用典型的信息检索方法对结果集进行切片和切块。
对话和发现也可以协同工作。您可以拥有一个能够回答短头的会话界面,然后在遇到无法满怀信心地回答的问题时回退到Discovery。
在此特定用例中,根据您的简要说明,您可能需要调查发现,因为它将允许您提交可以完成上述用例的查询,但您也可以从培训模型中受益识别哪些文件(在这种情况下是一门课程)很可能"好"基于标记的基础事实。当对话无法回答问题时,它也会有所帮助,因为返回一组可能的选项而不是一无所有更有用。
答案 2 :(得分:0)
每当您知道用户的问题肯定会有某些已知关键字时(在您的示例中为“截止百分比”),您需要转到IBM对话服务,但请记住您只需回复用户使用会话服务,但是对于处理查询和获取结果将很好地满足发现服务,因此将会话服务与发现服务集成更好。