Azure Web App Bot - 链接到另一个帐户的知识库

Azure Web App Bot - Linked to Another Account's Knowledgebase

有没有一种方法可以从一个帐户获取 Web App Bot,查询来自 Azure 上另一个帐户的 QnA Maker 的知识库?使用我的公司帐户,我可以创建 QnA Maker 知识库,但我没有在 Azure 上创建机器人的权限(需要创建 Microsoft App ID,我不能)。

到目前为止我做了什么 -

  1. 在 QnA Maker 上建立知识库
  2. 使用 QnA Maker 客户端库 (Python SDK) 查询知识库(工作正常)
  3. 在 Streamlit 上托管 Python 应用程序,为最终用户提供 GUI

我对构建“真正的”聊天机器人界面的其他方式持开放态度,例如网络应用程序机器人或来自 DialogFlow 的机器人。

是的,这是可能的。您只需要端点、知识库 ID 和 EndpointKey,它们在您发布 KB 时提供,如下所示。

POST /knowledgebases/********-****-****-****-************/generateAnswer
Host: https://QNA_SERVICE_NAME.azurewebsites.net/qnamaker
Authorization: EndpointKey ########-####-####-####-############
Content-Type: application/json
{"question":"<Your question>"}

有了这些信息,您可以从任何地方拨打电话 - 机器人、网站等等。就我个人而言,我喜欢编写自己的辅助函数来使用上述信息进行 HTTP 调用。但您也可以使用 botbuilder-dialogs 库 (const {QnAMaker} = require('botbuilder-ai')) 中的 QnAMaker 等模块。我假设 nuget 中有一个等效的包。