- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我们有一个聊天机器人和它旁边的一个按钮,可以在英语和法语之间更改机器人的语言。我还有一个包含英语和法语问题的 QnAmaker。有没有办法让我们在机器人处于英语模式时只处理英语问题?法语也是如此。
Note: my bot react like this:
user: what is teww?
Do you mean this, select one of question below: BOT
1. French question
2. English question
3 French question
我想防止这种情况发生,我正在考虑创建两个 qnamaker,一个用于法语,一个用于英语。但是我不知道如何处理 azure bot 服务中的 qna 更改?有办法解决吗?
平台:Azure 机器人服务 Node.JS 微软 QnA Maker
最佳答案
是的,您可以针对英语和法语问题分别创建 2 个 QnAMaker 知识库。您可以利用 Text Analytics API检测机器人的 recevie
中间件中的用户输入语言,该中间件显示在 Determine the locale by using analytics .
请引用以下代码片段:
var recognizer1 = new cognitiveservices.QnAMakerRecognizer({
knowledgeBaseId: <knowledgeBaseId_1>,
subscriptionKey: <subscriptionKey_1>,
top: 4
});
var basicQnAMakerDialog = new cognitiveservices.QnAMakerDialog({
recognizers: [recognizer1],
qnaThreshold: 0.3,
});
var recognizer2 = new cognitiveservices.QnAMakerRecognizer({
knowledgeBaseId: <knowledgeBaseId_2>,
subscriptionKey: <subscriptionKey_2>,
top: 4
});
var basicQnAMakerDialog2 = new cognitiveservices.QnAMakerDialog({
recognizers: [recognizer2],
qnaThreshold: 0.3,
});
bot.dialog('en', basicQnAMakerDialog);
bot.dialog('zh', basicQnAMakerDialog2);
bot.dialog('/', [(session, args) => {
switch (session.preferredLocale()) {
case 'zh':
session.replaceDialog('zh', args)
break;
case 'en-US':
default:
session.replaceDialog('en', args)
break;
}
}])
bot.use({
receive: function (event, next) {
if (event.text) {
var options = {
method: 'POST',
url: 'https://westus2.api.cognitive.microsoft.com/text/analytics/v2.0/languages?numberOfLanguagesToDetect=1',
body: {
documents: [{
id: 'message',
text: event.text
}]
},
json: true,
headers: {
'Ocp-Apim-Subscription-Key': '230f82f08c014accbd067ddc2c0ea98f'
}
};
request(options, function (error, response, body) {
if (!error && body) {
if (body.documents && body.documents.length > 0) {
var languages = body.documents[0].detectedLanguages;
if (languages && languages.length > 0) {
event.textLocale = languages[0].iso6391Name;
}
}
}
next();
});
} else {
next();
}
}
});
关于node.js - 如何在 Azure Bot 服务上同时使用英语和法语 QnaMaker?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49700383/
如何在QnAmaker无任何响应时更改默认答案显示提示对话框。 例如: 用户1:你好 机器人:你好!! User1:你卖车吗? 机器人:找不到合适的匹配项! 机器人应该提出可用服务列表,而不是找不到合
我已经在带有 Qnamaker 的 Azure Webapp 机器人中选择了 Nodejs,并在在线代码编辑器本身中修改了默认无答案,但它仍然没有反射(reflect)在聊天中。即使我尝试更改应用程序
我有一个 pdf 或 docx 文档(仅接受多圈格式),其中包含许多子标题,可转换为后续提示。这一切正常!但我想为我的所有提示启用仅上下文,因为答案与上下文无关。 我可以在我的文件中注明吗?手动检查按
我们正在使用 QnAMaker 服务创建一个机器人,并想知道是否可以将该服务部署为我们自己的 Azure 订阅中的认知服务。目前,我们没有看到在自定义 Azure 订阅中部署它的选项,并且 QnA M
我有一些属于多个类别的问题数据。 因此,我想为下面的一个元数据标记分配多个值。 我该怎么做? 最佳答案 我认为您提到的元数据结构如下: 您可以为其添加元数据标签以使其正确链接。 引用:https://
我已开始使用 QnA Maker,并希望能够在日志中查看问题的所有答案以及随请求发送的分数阈值 。目前,我只能通过此 Kusto 查询看到问题的一个答案。 requests | where url e
我在想机器人有一些通用的问题,比如你好吗?可能我有大约 10 个答案,我希望问答制作者随机选择而不是每次都相同的答案。 或者还有像给我讲故事这样的问题 最佳答案 some generic questi
我正在生成一个大型 PDF,其中包含多轮问题。 我是通过浏览器执行此操作的,更新需要相当长的时间,最后它说它仍在后台运行。 为了检查它何时完成,我进行了 api 调用以获取操作的详细信息。最终这会返回
我正在探索 Microsoft 服务。 路易斯引起了我的注意。将其添加到 QNAmaker 机器人会有好处吗? 机器人基本上会尽可能准确地回答问题,没有别的,只是来自知识库的纯粹答案。 我还需要添加
我正在探索 Microsoft 服务。 路易斯引起了我的注意。将其添加到 QNAmaker 机器人会有好处吗? 机器人基本上会尽可能准确地回答问题,没有别的,只是来自知识库的纯粹答案。 我还需要添加
使用 Bot Framework SDK v-3,我能够根据关键字作为建议的操作/卡片获得匹配问题列表,如下所示 - Suggested actions cards in QnAMaker Dialo
我正在尝试在 QnAMaker 中使用后续提示,但对“后续提示”创建对话框中标记为“显示文本”的字段的用途感到困惑。 https://learn.microsoft.com/en-us/azure/c
针对查询 QnAMaker 实例的 Azure Web App Bot 服务执行的问题(西类牙语)的回答与直接针对该实例的特定 QnAMaker 服务执行的查询存在差异。 对于这个特定案例,我在机器人
目前,我正在开发一个聊天机器人项目,该项目基于以 PDF 形式上传到 QnAMaker 服务的知识库进行回答。不过,我了解到 Azure 使用深度学习功能从通过搜索认知服务排名的长答案段落中提取简短答
对于我当前的项目,我尝试使用仅上下文的后续提示。 我现在的问题是,后续提示中的一些问题是相同的。 在 qna ui 中,上下文的分离工作正常,但是当用户回答我在应用程序中实现的聊天中的问题时,qna
QnA 创客机器人易于实现并提供巨大值(value)。在某些情况下,我需要向 QnaMaker 机器人添加对话框。我正在努力寻找最好的方法来做到这一点。我尝试的示例均以非 QnAmaker 主对话框开
我正在尝试将 QnAmaker 知识库与 Azure 机器人服务集成。 我无法在 QnAMaker 门户上找到知识库 ID。 如何在QnAPortal中找到kbid? 最佳答案 知识库 ID 可以位于
因此,我尝试为 Microsoft Bot Framework 创建一个新的 QnA,但由于某种原因,我能够创建知识库,但它始终是空的。 这是 postman 的结果 然后我等待一段时间,让所有过程完
我使用了新推出的机器人框架虚拟助手模板并进行了部署,工作正常,但它确实为 Azure 搜索服务提供了我的场景所需的标准层。 由于无法选择升级 azure 搜索服务的定价层 - 我必须删除现有的搜索服务
是否可以在 QnAmaker 中设置触发器,以便在添加新问题后,一定数量的人会通过电子邮件收到通知? 为了提供背景信息,我们的网站上有一个聊天机器人,访问者可以在其中提问,我们还会记录每个问题,如果访
我是一名优秀的程序员,十分优秀!