对话流:无法识别简单的短语

时间:2018-10-25 07:57:28

标签: dialogflow

无法识别简单的短语,例如“我的名字不是哈利,是山姆”。

这给我起名叫哈利(Harry),公司名叫Sam(山姆),因为姓名和公司名称在同一句子中是必需的。

它应该以Sam命名,并再次提示用户输入公司名称,否则应该完全回退。

1 个答案:

答案 0 :(得分:0)

您好,欢迎来到Stackoverflow。

老兄。这不是一个简单的短语。 Dialogflow总是很难回答否定问题。

假设我有一个问题,

I want to check *google* revenue for the year *2017*

如您所见,google和2017是实体。 但是现在,如果您说

I don't want to check *google* revenue for the year *2017*

达到这个旧意图的机会很高,因为dialogflow将这个句子的几乎90%与您的旧句子匹配。因此它可能会失败。

希望您正在尝试提出类似的问题。

无论如何,如果company namename是不同的实体,那么

可以避免的两件事:

  1. 正如所有人所说,请检查您的实体。这些值不应在两个实体中都存在。这将失败,因为dialogflow将不知道是否应将“ Sam”作为您的姓名或公司名称。
  2. 如果您不使用实体中的值,而是使用'$ ANY',则失败的可能性很高。而且,如果您使用的是Dialogflow的系统实体,例如$ given-name,则也不是首选,因为它不能捕获所有名称。因此,请避免使用这些实体。

您可以尝试的事情:

  1. 火车和火车。如您所知,dialogflow中的培训部分非常好。对其进行几次培训,它将自动学习和掌握它。 但是,请注意:错误的培训将导致错误的结果。它应该是100%准确的。在批准培训之前,请务必进行检查。
  2. 并尝试使用webHooks,操作和/或事件来确定从外部API出路。