当QnAmaker没有任何响应以显示提示对话框时如何更改默认答案。
例如:
用户1:你好
机器人:你好!!
用户1:你卖车吗?
机器人:没有找到合适的匹配!
机器人应该提出可用服务列表,而不是找不到好的匹配。
此外,每当未找到匹配项时,机器人都应再次提出可用服务列表。
如何实现这一目标?
最佳答案
QnAMakerAttribute 有一个 defaultMessage 参数,允许您自定义“不匹配”响应文本:https://github.com/Microsoft/BotBuilder-CognitiveServices/blob/7866f5a1bc970bdd0be341b9ba24c74067edf57c/CSharp/Library/QnAMaker/QnAMaker/QnAMakerService/QnAMakerAttribute.cs
public class BasicQnAMakerDialog : QnAMakerDialog
{
public BasicQnAMakerDialog() : base(
new QnAMakerService(
new QnAMakerAttribute(
Utils.GetAppSetting("QnASubscriptionKey"),
Utils.GetAppSetting("QnAKnowledgebaseId"),
"**List of services: one, two three**",
0.30,
8))) {}
}
还有一个等待合并的拉取请求,该请求将允许覆盖发送默认消息:https://github.com/Microsoft/BotBuilder-CognitiveServices/pull/87在那之前,您唯一的选择似乎是在您自己的代码库中复制 QnAMakerDialog:QnAMakerDialog source
关于c# - 当 QnAmaker 没有任何响应时,QnAmaker 更改默认答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50253608/