Azure问答机器人-如何添加身份验证?



我已经创建了一个基本的Azure '自定义问答'机器人(https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/question-answering/quickstart/sdk?pivots=studio)。我通过语言工作室创建了这个机器人:通过语言工作室创建Bot

我想添加身份验证,以便只有与谁是我的Azure AD的一部分的用户能够与机器人交互。我试着遵循下面列出的教程:

  • https://learn.microsoft.com/en us/azure/bot service/bot - builder authentication?view=azure bot -服务- 4.0,标签= singletenant % 2 caadv2 % 2 ccsharp
  • https://learn.microsoft.com/en-us/microsoftteams/platform/bots/how-to/authentication/add-authentication?tabs=dotnet%2Cdotnet-sample

我无法遵循这些教程,因为它们假设bot是由以下代码库之一构建的:

https://github.com/microsoft/BotBuilder-Samples/tree/master/samples/csharp_dotnetcore/46.teams-auth
  • https://github.com/Microsoft/BotBuilder-Samples/tree/main/samples/csharp_dotnetcore/18.bot-authentication

而我通过Language Studio部署的bot看起来像是从以下框架构建的:

  • https://github.com/microsoft/BotBuilder-Samples/tree/main/samples/csharp_dotnetcore/12.customQABot

如何将身份验证添加到通过Azure Language Studio部署的自定义问答机器人(认知服务)?目前任何人都可以和我的机器人互动。

感谢

要添加身份验证,需要安装支持Python编程的库。

pip install azure-ai-language-questionanswering

添加上述库以启动认证过程。

Authenticate with Client

从Azure Cognitive Services获取API密钥。

az cognitiveservices account keys list --resource-group <resource-group-name> --name <resource-name>

实例化QuestioningAnswerClient

from azure.core.credentials import AzureKeyCredential
from azure.ai.language.questionanswering import QuestionAnsweringClient
endpoint = "https://{myaccount}.api.cognitive.microsoft.com"
credential = AzureKeyCredential("{api-key}")
client = QuestionAnsweringClient(endpoint, credential)

如需进一步参考,请查看以下链接:

https://pypi.org/project/azure-ai-language-questionanswering/

https://learn.microsoft.com/en-us/azure/cognitive-services/authentication?tabs=powershell

由于这些都是示例,因此为了简单起见,它们都被设计为只做一件事。您需要做的实际上是直截了当的(在概念上,如果不总是在实践中)。您应该查看验证示例的代码和文档,并将验证部分集成到您的CQA机器人中。或者,您可以将CQA部分与认证机器人集成。不管你从哪个基础开始,目标都是一样的。结合两者

相关内容

  • 没有找到相关文章

最新更新