protected override async Task OnMessageActivityAsync(ITurnContext<IMessageActivity> turnContext, CancellationToken cancellationToken) { //I have code here that works fine. }
第二种方法
public QnABot(IConfiguration configuration, ILogger<QnABot> logger, IHttpClientF
我有一个虚拟助理调度,它将控制交给使用QnA maker的知识库技能。我最终会有几个QnA知识库,但现在,我遇到了第一个问题。我创建/编辑、培训并发布/发布了QnA maker KB、知识库技能Luis模型和虚拟助理的调度模型。
当我的知识库技术的Luis模型返回意图时,将在成功的技能分派之后生成异常。我有一个开关语句,它将最终指向与用户问题相对应的知识库。
text: "Exception Message: Could not convert string 'helpdesk_faq' to dictionary key type
'Luis.Knowledg
基本上,我有官方文档中的这段代码。我想要实现的是得到最接近用户输入的问答对的列表。
async def on_message_activity(self, turn_context: TurnContext):
# The actual call to the QnA Maker service.
response = await self.qna_maker.get_answers(turn_context)
if response:
await turn_context.send_activity(MessageFactory.text(respon
我使用的是带有2个LUIS型号和1个QnA maker的dispatch型号。在模拟器上一切正常,但发布后,当我在Azure或Teams上的Web Chat通道上调试它时,我的QnA Maker语句总是返回 No such host is known. 我尝试使用QnA maker门户和westus.api.cognitive.microsoft.com/Qnamaker设置页面中的一个主机名 有人能帮帮忙吗。
我有一个机器人,它使用路易斯和QnA制造商。
现在,我能够发送查询和得到响应在我的机器人基于搜索关键字。但是,如果我的搜索关键字在多个问题中使用,QnA Maker只是检索第一个匹配的QnA对。
请考虑下面的QnA对:
What is flexible working? Flexibility to work from home
How to avail flexible working? Get in touch with manager
如果用户键入准确的问题并点击enter,则响应将是与问题匹配的答案。但是,如果用户在本例中输入flexible working,那么响应将仅仅是第一
有可能同时使用QnAMakerDialog和自定义IntentDialog吗?因此,QnA制造者将从知识库中回答所有与FAQ相关的查询,我也可以将一些定制命令硬编码到BotFramework中。
类似于:
var basicQnAMakerDialog = new cognitiveservices.QnAMakerDialog({
recognizers: [recognizer],
defaultMessage: 'Sorry, I did not understand that.',
qnaThreshold: 0.3
});
bot.dialo
我正在寻找方法来捕捉Qna制造商没有匹配的事件,然后以自定义的方式处理它。我当前的Qna对话框是这样的:
[Serializable]
public class QnaMakerDialog : QnAMakerDialog
{
public QnaMakerDialog() : base(new QnAMakerService(new QnAMakerAttribute(<<myQnAAuthKey>>, <<myQnAKnowledgebaseId>>, "Answer not found. Please try it aga
在本文档中,它显示了QnA Maker服务执行Rest调用和反序列化Json响应-步骤3 *。
模块字符串的特定部分,我想我要找的是:
/* START - QnA Maker Response Class */
public class Metadata
{
public string name { get; set; }
public string value { get; set; }
}
public class Answer
{
public IList<string> questions { get; set; }
public str