【问题标题】:How to run a bot created with the help of QnA Maker on the local machine?如何在本地机器上运行借助 QnA Maker 创建的机器人?
【发布时间】:2017-06-04 15:26:57
【问题描述】:

(请注意,此 FAQ 机器人是在 Microsoft QnA Maker 的帮助下创建的,无需任何编码,然后将其连接到 Bot Framework。

我借助“无需编码”的 QnA Maker 在 Microsoft Bot Framework 上创建了一个常见问题解答机器人,然后在 Bot Framework 上注册了它。现在我需要插入消息端点以使机器人运行。但到目前为止,我还没有订阅 Azure 机器人服务或任何其他托管服务来托管机器人。我想在本地 Windows 机器上运行它。

我下载了 Bot Framework Emulator 并将 node.js http-server 命令运行到其文件夹中,使用 ngrok 对其进行隧道传输,并将生成的 URL 后跟 /api/messages(如 https://xxxxxxxx.ngrok.io/api/messages)作为消息端点以及Botframework 模拟器。但它没有用。 Ngrok 给出了一个错误,因为 Bot 是远程的,并且隧道连接到我的本地机器,那里也需要软件。但我没有得到机器人软件代码,因为 QnA Maker 显然不提供下载。那么,在我为我的机器人创建工作端点之前有哪些选择?

希望我的问题很清楚,如果没有,请让我进一步澄清。蒂亚!

【问题讨论】:

标签: bots botframework


【解决方案1】:

你想如何使用你的 QnA 层?

QnA Maker 页面会自动托管(现在免费,但正在查看使用情况)QnA 功能,因此您可以通过多种方式集成它:

  • 使用机器人
  • 但也可以在经典的 Asp.Net 应用程序中使用
  • 或在许多其他项目类型中

怎么做?

要使用您的知识库,一旦您设置(和培训)它,第一步就是发布https://qnamaker.ai/)。你会得到这样的信息:

在机器人中集成

您可以使用 QnA 模板:https://docs.microsoft.com/en-us/bot-framework/azure/azure-bot-service-template-question-and-answer

它将使用一个名为 QnAMakerDialog 的专用对话框类型,可通过 NuGet / npm 获得:

对于 C#,QnAMaker 对话框通过 Microsoft.Bot.Builder.CognitiveServices NuGet 包。

对于 Node.js,QnAMaker 对话框通过 botbuilder-cognitiveservices npm 模块。

以下是您在发布阶段使用参数的方式:QnASubscriptionKeyQnAKnowledgebaseId 在以下示例代码中使用:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Threading;
using Microsoft.Bot.Connector;
using Microsoft.Bot.Builder.Dialogs;
using Microsoft.Bot.Builder.CognitiveServices.QnAMaker;

[Serializable]
public class BasicQnAMakerDialog : QnAMakerDialog
{        
    //Parameters to QnAMakerService are:
    //Required: subscriptionKey, knowledgebaseId, 
    //Optional: defaultMessage, scoreThreshold[Range 0.0 – 1.0]
    public BasicQnAMakerDialog() : base(new QnAMakerService(new QnAMakerAttribute(Utils.GetAppSetting("QnASubscriptionKey"), Utils.GetAppSetting("QnAKnowledgebaseId"), "No good match in FAQ.", 0.5)))
    {}
}

直接在另一个项目中

由于 QnA Maker 将您的 QnA 知识库作为 Web API 发布,您可以通过 Web 调用直接从代码中使用它。以下是 API 参考链接:https://qnamaker.ai/Documentation/ApiReference

如果您查看API list 上提供的方法,您将使用Generate answer

【讨论】:

    猜你喜欢
    • 2020-11-03
    • 2018-03-07
    • 1970-01-01
    • 2020-07-06
    • 1970-01-01
    • 1970-01-01
    • 2021-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多