如何使用带有提示的参数处理 Luis 意图

How to handle Luis intent with parameters with prompt

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

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

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

在最新版本中,BotFramework 团队添加了对 LUIS v2 API 的支持并添加了一些全新的功能。我很确定 V2 现在是最新版本的默认设置,但即便如此,LuisModel attribute now accepts the API version 除了 ModelId 和 ModelSubscriptionKey

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

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

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