【问题标题】:Unable to connect sample bot framework project to luis API无法将示例机器人框架项目连接到 luis API
【发布时间】:2018-03-20 18:26:06
【问题描述】:

到目前为止我做了什么:

  1. here 创建了一个示例 Microsoft Bot Framework 项目
  2. 创建了一个示例 LIUS 应用程序,其中包含一些意图、实体和话语。
  3. 还通过端点url在浏览器中测试了应用程序,似乎工作正常

问题:

我遇到了多个问题,也许对于专家来说它们是微不足道的,但我似乎无法解决它们

  1. 当我执行上述步骤 3 时,luis 仪表板中的“每个周期的端点命中数”部分未显示任何命中。 (但我仍然确定我的 Sample Bot Framework 应用程序正在访问 url,我通过实时线鲨跟踪验证了它。)为什么它没有更新?
  2. 模拟器显示此错误。这个错误是从哪里来的,应用程序在某个地方崩溃了?:

    "异常:响应状态码不表示成功:400(错误请求)。 ['text/plain' 类型的文件]"

  3. 我无法深入了解项目的 luis 响应是什么,我在哪里可以编写调试行来查看请求和响应?

这是我的代码:

[LuisModel("b5439fa6-5be1-4680-bc46-379698e780ed", "045c3ef0bfc14040b7b35079ea030a98", domain: "westus.api.cognitive.microsoft.com")]
[Serializable]
public class RootDialog : LuisDialog<object>
{
    public RootDialog()
    {
    }
    public RootDialog(ILuisService service)
        : base(service)
    {
    }

    [LuisIntent("")]
    public async Task None(IDialogContext context, LuisResult result)
    {
        <some code written here>
    }

    [LuisIntent("FAQs.Data.Coverage")]
    public async Task Coverage(IDialogContext context, LuisResult result)
    {
        <some code written here>
    }

    [LuisIntent("FAQs.Data.Info")]
    public async Task Info(IDialogContext context, LuisResult result)
    {
        <some code written here>
    }

    [LuisIntent("FAQs.Data.Package")]
    public async Task Package(IDialogContext context, LuisResult result)
    {
        <some code written here>
    }

    [LuisIntent("FAQs.Data.PhoneSupport")]
    public async Task PhoneSupport(IDialogContext context, LuisResult result)
    {
        <some code written here>
    }
}

【问题讨论】:

    标签: c# botframework azure-language-understanding


    【解决方案1】:

    我直接点击了你的端点并收到以下消息:

    Model not published. Please publish your model before hitting the endpoint.

    要发布,您将访问应用的发布应用页面,您还可以在其中选择要与端点一起使用的密钥。你可以在documentation的这个页面找到更多关于发布的信息。

    在您完成此操作之前,请转到您的 LUIS 帐户设置(点击右上角退出旁边的您的姓名)并重新生成您的程序化 API 密钥。这样,任何人都无法使用您在问题中提供的密钥。

    【讨论】:

    • 谢谢,我想知道你是如何直接点击端点以获得“模型未发布”的,我无法弄清楚后端发生了什么。将 url 粘贴到浏览器中时,端点不会被命中吗?
    • 非常感谢 Steven G,问题#2 已解决,请同时指导第 1 点和第 3 点。在我点击端点 url 后,仪表板仍然没有显示更新的统计信息
    • 对于#2,我使用 LuisModel 实例化中使用的参数创建了您的端点,然后像您说的那样,将该链接粘贴到浏览器中。对于 #1,您仍在使用您的 Programmatic API 密钥还是已切换到端点密钥?
    • 对于#3,您是否尝试过使用断点来查找您的查询和 LuisResult?在您的意图代码中,您可以从 LuisResult result 访问结果
    【解决方案2】:

    当您在 staging 环境中发布应用并在 URL 中设置属性 staging=false 时,您会遇到此问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-28
      • 1970-01-01
      • 2020-12-08
      • 2018-10-15
      • 2018-10-13
      • 1970-01-01
      相关资源
      最近更新 更多