【问题标题】:Is it possible to return multiple matching intents in DialogFlow and Amazon Lex?是否可以在 DialogFlow 和 Amazon Lex 中返回多个匹配的意图?
【发布时间】:2018-04-16 16:50:32
【问题描述】:

假设我们有 50 个意图,其中很少有密切相关的意图,但它们的功能不同。

是否可以用 4-5 个匹配的意图提示用户,并询问他们的实际意思是哪一个?

在 MS Bot Framework 中是可能的,我想知道它在 Dialogflow 或 Amazon Lex 中是否可行?

【问题讨论】:

  • Amazon Lex 没有将此作为本机功能,但可以通过对 Lambda 验证代码挂钩的一些创造性使用来实现。还没有尝试过,但是您可以将所有潜在的匹配意图指向同一个 Lambda 验证代码挂钩,然后使用 Lambda 函数中的逻辑来引出“最佳”意图。

标签: chatbot dialogflow-es amazon-lex


【解决方案1】:

Dialogflow 以某种方式支持您要执行的操作,但不是直接支持。有一个东西叫做Follow-up intents。这些只会在用户当前处于意图时运行。就像您正在寻找确认一样,您可以在后续意图匹配是或否时创建主要意图。这使用contexts

在 Dialogflow 中,您可能会创建一个匹配所有可能查询的主要意图。然后,您可以使用一组可能的匹配意图进行响应。

天气意图

  • “天气怎么样”
  • “要下雨了吗”
  • “明天会晴吗”

然后你可以用你可能的后续意图来回应。

  • “您想要今天明天还是下周的天气

您将使用自己的短语创建三个后续意图,这些短语只有在用户刚刚输入原始意图时才会匹配。

今日天气意图

  • “今天”

您可以专门为此做出回应。

请记住,Dialogflow 的机器学习旨在让您不会遇到这种模棱两可的问题。理想情况下,用户应该只输入文本,并且应该正确匹配。如果您遇到歧义问题,您可以为每个意图添加额外的训练短语。

您还可以使用quick replies 帮助引导用户完成对话。

【讨论】:

  • 对不起,这不是我的意思。假设用户输入了what is the name,并且what is my namewhat is owners namewhat is name of indian captain 有多个意图,所以它应该返回所有匹配90% 或以上的意图。不仅仅是最匹配的意图。或所有意图的列表以及我们在LUIS 中获得的准确度分数。
  • 您可以获得匹配特定意图的分数,但我认为您不会获得多个匹配的意图
【解决方案2】:

DialogFlow 目前不支持针对给定预测的多个意图,但有一个开放的feature request for this feature logged on Google's bug tracking system。如果您认为它有用,请务必给问题“加注星标”,以便他们知道人们想要它。

Amazon Lex 最近推出了此功能。检查“alternativeIntents”对象:

alternativeIntents 一到四个替代意图,可能是 适用于用户的意图。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多