【问题标题】:Returning entity only from LUIS仅从 LUIS 返回实体
【发布时间】:2017-05-13 01:51:09
【问题描述】:

如果我只想从 BotFramework 发送到 LUIS 的文本中返回一个实体,但它没有被任何意图触发,该怎么办?例如,我的机器人已经要求用户指定一个时间范围,例如((星期一下午 3 点到星期一晚上 9 点),我只想发送这个以获取 builtin.datetimeV2.datetimerange 回来?我目前只是将它发送到 LuisIntent ("None") 并且它有效,但感觉不对。我应该以不同的方式执行此操作吗?

【问题讨论】:

    标签: botframework microsoft-cognitive azure-language-understanding


    【解决方案1】:

    用“无”的意图标记您的实体是可以的。

    这是用于对话框内的 LUIS 调用吗?或者这是用于启动对话的 LUIS 调用?

    【讨论】:

    • 谢谢。不,它只是在一个对话框中。事实上,我可能会在多个对话框中重新使用相同的调用。我应该为此在它自己的应用程序中使用它吗?
    • 您使用的是 C# SDK 还是 Node SDK?虽然我对 C# SDK 不够熟悉,所以我会说是的。
    • 是的 C#。它确实有效,只是感觉像是一个糟糕的模式。
    • 抱歉,我们可能在考虑不同的事情。当您说应用程序时,我正在考虑对 LUIS 进行简单的 REST 调用。例如。您的聊天机器人访问 LUIS 端点,然后解析结果。 Node 中的一个例子就是在对话框中使用带有异步调用的 Promise
    • 在 Node 中,您将使用一个模块来设置上述 REST 调用并将其分配给可以在任何对话框中调用的辅助函数;您的聊天机器人将解析瀑布内部 LUIS 的结果。这就是我在与你的协议中真正考虑的内容
    【解决方案2】:

    就像@Steven G 提到的,你可以直接调用 LUIS,然后解析 json 结果。

    public class LUISRestService
    {
        public static async Task<string> GetLuisResult(string searchFor)
        {
            string LUISEndpoint = $"https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/[YOURLUSAPPID]?subscription-key=[YOURSUBSCRIPTIONKEY]&timezoneOffset=0&verbose=true&q={searchFor}";
            string result = "";
            HttpClient client = new HttpClient();
            client.BaseAddress = new Uri(LUISEndpoint);
    
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
    
            HttpResponseMessage response = await client.GetAsync(LUISEndpoint);
            if (response.IsSuccessStatusCode)
            {
                result = await response.Content.ReadAsStringAsync();                
            }
            else
            {
                Console.WriteLine("{0} ({1})", (int)response.StatusCode, response.ReasonPhrase);
            }
            return result;
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2018-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多