【问题标题】:How to handle Luis intent with parameters with prompt如何通过提示处理带有参数的 Luis 意图
【发布时间】:2017-01-17 12:45:00
【问题描述】:

我在 LUIS 中有几个必需参数的意图。我还为这些参数设置了提示,以便在未检测到它们时,LUIS 会询问它们。但是在 BOT 中,当未指定它们时,我总是将它们设为 null。

机器人不会询问缺少的参数(即使在 Luis 中设置了提示)。为什么?有没有办法自动获取提示? 还是 MS Bot Framework 仍然不支持? 我正在使用 C#

【问题讨论】:

  • 你使用的是 C# 还是 Node?​​span>
  • 我用的是C#,也更新了问题
  • 您使用的是哪个版本的 BotBuilder nuget?
  • 版本 3.0.0 和运行时版本 v4.0.30319

标签: c# botframework azure-language-understanding


【解决方案1】:

根据您的评论,您似乎使用的是旧版本的 Nuget 包。确保更新到最新的 BotBuilder 版本。当前版本是v3.5

在最新版本中,BotFramework 团队增加了对 LUIS v2 API 的支持,并添加了一些全新的功能。我很确定 V2 现在是最新版本中的默认值,但即便如此,LuisModel 属性现在除了 ModelId 和 ModelSubscriptionKey 之外还接受 API version

例如,现在 LuisDialog 将在您的意图需要参数但未提供参数时执行。在那种情况下(似乎是您的情况),LuisDialog 将使用您在 LUIS 前端的 action 参数中定义的提示消息,automatically launchLuisActionDialog 并询问用户缺少的参数。

顺便说一句,要检查操作,您可以浏览实际意图。 IntentRecommendation 有一个 Actions 集合属性。

下图显示了完整的树,包括动作参数。

【讨论】:

  • 谢谢!你碰巧有一个如何使用它的代码示例吗?
  • 你不需要对你的代码做任何事情;会自动提示输入参数
  • 我的具体意思是,例如如何初始化构造函数(我从哪里获取上下文 ID)?
  • 您不需要手动创建 LuisActionDialog,它将由 BotFramework 自动完成,如下所示github.com/Microsoft/BotBuilder/blob/…
猜你喜欢
  • 1970-01-01
  • 2017-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多