LUIS只返回一个意图

时间:2017-03-06 09:12:31

标签: c# microsoft-cognitive luis

我正在开发一个与LUIS集成的小项目。我正在使用Microsoft.Bot.Builder.Luis命名空间与api进行通信。我正在检查我回来的所有意图,但自从上周以来我每次luis呼叫只回来一个意图。有没有(由我)看不见的变化到我没有得到的详细模式?有没有办法仍然可以调用所有意图结果或者在进入服务器的途中给luismodel一些设置?

我没有更改luis.ai上的任何设置,我想知道为什么会发生这种情况。提前谢谢!

毫当量

3 个答案:

答案 0 :(得分:1)

这对我有用。在LuisRecognizer构造函数中,有一个可选参数,带有一个名为IncludeAllIntents的标志。只需将其设置为true并将其添加到构造函数即可。

    var luisApplication = new LuisApplication(
        configuration["LuisAppId"],
        configuration["LuisAPIKey"],
        "https://" + configuration["LuisAPIHostName"]);

    var predictionOptions = new LuisPredictionOptions();
        predictionOptions.IncludeAllIntents = true;

    _recognizer = new LuisRecognizer(luisApplication, predictionOptions);

答案 1 :(得分:0)

通常,LUIS仍会返回结果集的意图数组,因此必须在模型中进行特定的操作。

如果进一步的实验未确定原因,请通过luservice@microsoft.com与您的LUIS App ID联系,我们可以进行调查。

答案 2 :(得分:0)

我假设你正在使用LuisDialog,你需要设置Verbose = true来获得所有意图。

public RootLuisDialog() : base(new LuisService(new LuisModelAttribute(

      Settings.Default.LuisAppId,
        Settings.Default.LuisAPIKey,
        domain: Settings.Default.LuisAPIHostName

        )
    {
         Verbose =true,
         Log = true
    }))
    {

    }