azure-devops - QNA maker - 知识库 - Azure DevOps 管道,如何创建任何示例?
问题描述
有一个要求,需要为 QNA 创建 Azure Devops(CICD) 管道 - KB 如下
将 excel 文件导入知识库 保存和训练知识库 发布知识库
如何通过 Azure Devops Pipeline 完成。任何文档或步骤都可能会有所帮助。
解决方案
您确实需要尝试一下,以便我们提供更有针对性的建议,但我可以为您提供一些高级指导。首先,您需要查看QnA Maker Programmatic APIs。这些应该允许您访问您需要的所有功能。您可以在 DevOps Release Pipeline 中使用许多不同的任务来调用这些任务,但我更喜欢 Azure CLI,原因如下所述。
仅使用 API,您需要对订阅密钥、KBID 等值进行硬编码。为避免对这些值进行硬编码,您也可以通过 Azure CLI 以编程方式获取它们。如果将任务版本设置为 2.X,则可以使用 PowerShell。这是我获取 QnA Maker 密钥、订阅密钥、KBID 和端点密钥的脚本。
$QNAKEY= & az cognitiveservices account keys list -g "YOUR_RESOURCE_GROUP" --name "YOUR_COGNITIVE_SERVICE" --query key1 -o tsv
$header = @{"Ocp-Apim-Subscription-Key"="$QNAKEY"}
$res = Invoke-RestMethod -Uri "https://westus.api.cognitive.microsoft.com/qnamaker/v4.0/knowledgebases" -Method 'Get' -Headers $header
$kb = $res.knowledgebases | Where-Object name -eq "YOUR_KB_NAME"
$kbId = $kb.id
$res = Invoke-RestMethod -Uri "https://westus.api.cognitive.microsoft.com/qnamaker/v4.0/endpointkeys" -Method "Get" -Headers $header
$endpointKey = $res.primaryEndpointKey
请注意,以上假设您已经创建了 KB。只需查看导入 API 调用,看看您需要什么并进行相应调整。请注意,如果您正在创建新的 KB,QnA Maker 不会确保 KB 名称的唯一性。如果不进行某种检查,您最终将创建重复的 KB。
您应该能够使用这些方法(QnA Maker API 和 Azure CLI 在管道中调用它)来访问您需要的任何 KB 管理功能。
推荐阅读
- javascript - 如何选择我想通过 Nightwatch Programmatic API 运行的测试
- python - Python中单元测试的装饰器问题
- c# - UWP:为多个播放器使用 1 个 MediaSource
- c - 编写一个程序,该程序将接受 5-95 范围内的整数值并作为 5 的倍数
- c++ - 如何在 debian 10 上运行 g++-6,需要编译旧的 buildroot 系统(交叉编译)
- wordpress - Wp查询日期之间的帖子,但任何年份
- android-studio - 安卓工作室:com.android。tools.build:gradle3.5.3 可用于离线模式
- grpc - 如何在不使用具体实例的情况下创建 dotnet gRPC 服务器
- mysql - 2个外键可以在一个表中引用另一个表中的同一列吗?
- opengl - 为什么 pyrr.Matrix44 转换似乎是列优先,而旋转行优先?