我收到此角色无权执行此操作。当我尝试添加 Azure QnA 服务时。不确定如何解决它
所以,当谈到开发操作系统 AI 时,我很新,主要是使用 Microsoft Azure 的工具。我使用 Azure 的 QnA Maker Preview 来开发常见问题解答机器人。但就在今天,微软发布了一个 huuuuge 更新,使这个服务更加强大,与其他新功能一起添加了元数据的概念。我知道它应该让你的系统更强大、更快速和更智能,但我不明白它应该如何使用以及它究竟做了什么。谁能帮我理解这个新工具?谢谢!
artificial-intelligence machine-learning azure azure-qna-maker
我使用Microsoft bot框架制作了一个Bot,并使用Luis来匹配意图.一些意图将它引导到QNA,并且一些其他意图将它指向图形api.
我的问题是确定是否应该去qna搜索qna中的相关意图或者是否应该使用图形api来获取结果的最佳方法.
截至目前,我使用多个Luis Intents来匹配正确的意图,然后根据所需的意图功能(无论是将其引导到qna对话框还是图形api对话框)重定向它.
`[LuisModel("模型ID","密钥")]
[Serializable]
public class RootDialog : DispatchDialog
{
//this intent directs to graph api dialog
[LuisIntent(DialogMatches.GraphApiIntent)]
public async Task RunGraphapiIntent(IDialogContext context, IActivity activity)
{
UserMessage = (activity as IMessageActivity).Text;
await context.Forward(new GraphApiDailog(), EndDialog, context.Activity, CancellationToken.None);
}
//This intent directs to qna dialog
[LuisIntent(DialogMatches.BlogMatch)]
public async Task RunBlogDialogQna(IDialogContext context, LuisResult result)
{
var userQuestion = (context.Activity as Activity).Text;
(context.Activity as Activity).Text = DialogMatches.BlogMatch;
await context.Forward(new BasicQnAMakerDialog(), this.EndDialog, context.Activity, CancellationToken.None);
}
`
Run Code Online (Sandbox Code Playgroud)
但是这种方法要求我匹配每个意图使用 [LuisIntent("intentstring")]..因为我可以有50或100的意图,这对50个意图编写50个函数是不实际的.
我找到了一种方法来调用api来从 …
c# azure-ad-graph-api botframework azure-language-understanding azure-qna-maker
我正在尝试将 QnAmaker 知识库与 Azure 机器人服务集成。我无法在 QnAMaker 门户上找到知识库 ID。 如何在QnAPortal中找到kbid?
我们正在使用连接到Azure 机器人服务的QnA Maker。在知识库 (KB) 中,我们为每个问题添加了一个跟进提示:This did NOT answer my question
这意味着如果提供了错误的响应,最终用户可以指出,对话历史将如下所示:
我们要做的是重播对话历史,以便我们可以看到:
我们打开了Application Insights,因此我们可以通过以下查询从日志中看到这两个问题:
traces
| project timestamp,
itemId,
question = customDimensions.Question,
answer = customDimensions.Answer
| order by timestamp
Run Code Online (Sandbox Code Playgroud)
这将返回这两行:
但是,我们正在尝试找到可以关联这两个记录的唯一对话 ID 或会话 ID。请注意,itemId非常相似,但不完全相同:
53be8c14-702c-11ea-8c41-11c1c266dc55
53be8c13-702c-11ea-8c41-11c1c266dc55Run Code Online (Sandbox Code Playgroud)
一种解决方法是仅使用 的前 7 位数字itemID并基于该部分匹配进行连接,如下所示:
traces
| where customDimensions.Question contains "This did NOT answer my question"
| project itemId,
SessionID = extract("^[a-z0-9]{7}", 0, itemId),
timestamp …Run Code Online (Sandbox Code Playgroud) 我正在使用Microsoft Bot Framework和Node.js SDK开发聊天机器人。我已经集成了LUIS和QnA制造商,但我想尽可能创建这种情况。以以下链接为例,尤其是本节:
机器人可以通过几种方式实现LUIS和QnA Maker的混合:首先调用LUIS,如果没有意图满足特定阈值分数,即触发“无”意图,则调用QnA Maker。或者,为QnA Maker创建LUIS意向,为您的LUIS模型提供映射到“ QnAIntent”的示例QnA问题。
只是一个例子:我有一个QnA KB,其中有一对:“你是谁?” /“嗨,我是你的机器人!”。然后,我的Luis应用程序将这种意图称为“ common”。因此,如果我写信给我的机器人:“你是谁?” 它会回答“嗨,我是你的机器人!”, 相反,如果我写“告诉我你是谁”,它会识别与该问题有关的LUIS意图,但不会回答“嗨,我是你的机器人!”,就像我想象的那样。
所以我想像的是:我问一个问题“告诉我你是谁”->僵尸程序触发意图通用(LUIS)->然后,我希望该僵尸程序会回答我的QnA KB问题->“嗨,我是你的机器人!”
可能吗?谢谢
希望这段代码可以帮助您:
var intents = new builder.IntentDialog({ recognizers[luisRecognizer,qnarecognizer] });
bot.dialog('/', intents);
intents.matches('common_question', [
function (session, args, next) {
session.send('Intent common');
qnarecognizer.recognize(session, function (error, result) {
session.send('answerEntity.entity');
});
}
]);
Run Code Online (Sandbox Code Playgroud) node.js botframework azure-language-understanding azure-cognitive-services azure-qna-maker
我的 QnA Maker 服务当前正在根据我上传的 Excel 文件进行训练。如果我通过 QnA 制作者设置选项卡更新我的知识库并上传此 Excel 文件的新版本(删除旧版本),它会覆盖整个知识库吗?或者只是更改我在文件中编辑/添加的内容?
此外 - 我是否会丢失“坐在”Train API 中的 QnA 对(因为它仅在许多用户发送类似反馈后才会推送到知识库)?
由于使用 Azure 搜索的 QnA Maker 的结构发生了变化,我认识到为认知服务选择的唯一位置是“美国西部”。属于它的应用服务和搜索服务仍然可以位于任何地方。
这是否按预期工作?如果是,QnA Maker Service 的知识库是属于 QnA Maker Service 的地区(美国西部)还是属于 App / Search Service 的地区(例如西欧)。数据存储在哪里,哪些信息到达位于“美国西部”的服务?
提前感谢您的回复。
此致,
亚历山大
我使用QnAMaker、Azure Bot Service和JavaScript 中的Bot Framework Web Chat客户端创建了一个 Azure QnA Web Chat Bot 。
这是我如何使用 HTML + JS 初始化机器人的示例:
<script src="https://cdn.botframework.com/botframework-webchat/4.6.0/webchat-es5.js"></script>
<div id="projekt-webchat" role="main"></div>
Run Code Online (Sandbox Code Playgroud)
window.WebChat.renderWebChat(
{
directLine: window.WebChat.createDirectLine({
secret: 'SECRETHERE'
}),
userID: 'YOUR_USER_ID',
username: 'Web Chat User',
locale: 'en-US',
botAvatarInitials: 'WC',
userAvatarInitials: 'WW'
},
document.getElementById('projekt-webchat')
);
Run Code Online (Sandbox Code Playgroud)
我的机器人连接到来自 QnA Maker 的知识库,其中有一个QnA 对,如下所示:
问题:gimmenumber
答案:+49 5251 123456
某些浏览器会将其呈现为可点击的超链接,然后我选择拨打该号码。但是,其他浏览器没有将电话号码视为超链接,所以我无法点击它
使用 Microsoft 提供的精彩资源。\n按照https://learn.microsoft.com/en-us/composer/上的文档进行操作
\n\n另请注意,为了在欧洲实现此功能,使用我们的
\n\xe2\x80\x9c,\xe2\x80\x9d 而不是 \xe2\x80\x9c.\xe2\x80\x9d 作为十进制标记,阈值必须设置为\n\xe2\x80\x9cfloat(\xe2\x80\x980.3\xe2\x80\x99)\xe2\x80\x9d 才能被评估为浮点数。
A. 不再有任何问候语。
\n\nB. QnA …
azure-qna-maker ×10
botframework ×6
azure ×3
azure-language-understanding ×2
c# ×1
chatbot ×1
html ×1
kql ×1
node.js ×1
permissions ×1
tel ×1