我遵循了此Microsoft文档,以实现使用Bois的Bot的实现,该Bot使用LUIS将用户的问题路由到QnAMaker:https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-tutorial-dispatch?view=azure-bot-service-4.0&tabs=cs
基本上,我在V3文档(https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/tutorials/integrate-qnamaker-luis)中注意到了(因为在V4中没有提及) 它说:
为每个QnA Maker知识库添加一个意图。这个例子 语音应该对应于QnA Maker知识中的问题 基地。
我的问题是,除了将所有问题从QnA Maker手动复制到每个Intent(假设我有多个KB)之外,还有没有更简便的方法?例如从QnA Maker导出文件或类似文件?
答案 0 :(得分:1)
这是使用Dispatch工具完成的。本质上,它所做的是从QnA Maker KB中下载问题,并创建一个名称为“ dispatch”的新LUIS应用。在此新应用中,将为您的每个QnA Maker KB添加一个意图,命名将为q_<kb_name_here>
,相关KB中的问题将作为发音添加到该意图中。
如何执行此操作概述在您链接的文档的Create the dispatch model部分下。
您需要安装npm
附带的NodeJS才能从CognitiveModels
文件夹中的命令行执行以下操作(粗略指南):
// install botdispatch package
npm i -g botdispatch
// initialise a dispatch file
dispatch init -n <filename-to-create> --luisAuthoringKey "<your-luis-authoring-key>" --luisAuthoringRegion <your-region>
// add references to luis and qna apps
dispatch add -t luis -i "<app-id-for-weather-app>" -n "<name-of-weather-app>" -v <app-version-number> -k "<your-luis-authoring-key>" --intentName l_Weather
dispatch add -t luis -i "<app-id-for-home-automation-app>" -n "<name-of-home-automation-app>" -v <app-version-number> -k "<your-luis-authoring-key>" --intentName l_HomeAutomation
dispatch add -t qna -i "<knowledge-base-id>" -n "<knowledge-base-name>" -k "<azure-qna-service-key1>" --intentName q_sample-qna
// generate a dispatch model
dispatch create
然后,您必须在LUIS门户中找到新应用并进行发布,然后才能使用它。然后按照Use the dispatch model下的步骤利用LUIS进行路由。