Botframework 如何集成QnA maker以收集用户信息?
我目前已将LUIS与我的聊天机器人集成。 情况是:-Botframework 如何集成QnA maker以收集用户信息?,botframework,azure-language-understanding,qnamaker,Botframework,Azure Language Understanding,Qnamaker,我目前已将LUIS与我的聊天机器人集成。 情况是:- 用户在bot中键入某些内容 机器人逻辑调用LUIS来确定意图并基于意图 调用相应的对话框 在对话框中,我使用瀑布式对话框通过 提示 我现在想要的是, 在上述场景的第2步之后,根据LUIS返回的意图,我希望后续问题由QnA而不是机器人提出。 基本上,我想用QnA maker取代瀑布式步骤。 这样做可以吗,还是可行 流程如下所述:- 用户:-创建任务 -->>>>路易斯的意图回来了 -->>>>基于返回的意图调用QnA QnA:-您希望在哪个项目
var tempInputText = activity.Text;
if(tempInputText.Contains("batman") == true)
{
var tempActivityBatman = new Activity();
tempActivityBatman.Text = "did you just ask about batman, " + userProfile.Name + "?";
tempActivityBatman.Type = "message";
//await stepContext.Context.SendActivityAsync(_templateEngine.GenerateActivityForLocale("UnsupportedMessage", userProfile));
await stepContext.Context.SendActivityAsync(tempActivityBatman,cancellationToken);
return await stepContext.NextAsync();
}
上面的代码示例是一个快速脏代码,我用它来导航特定的单词,我想让聊天从常规代码中转移出来 这可能是可行的使用提示,但在我看来,这不是一个很好的使用QnA制造商。你能帮我理解为什么你不想做瀑布式对话框吗?我想要的不是在代码中硬编码问题,而是应该向QnA制造商询问,这样将来如果我需要对问题进行任何更改,我就不需要回到我的代码来更改它。-@billovertonSorry,因为我反应太晚了。我没有得到你说“在用户信息进入QnA maker之前捕获用户信息”的部分。如何确定它是否是用户信息@JayI用我使用的示例代码更新了我的答案。注意:这不是最优雅的解决方案,但对我的项目来说已经足够好了。