问题标签 [azure-language-understanding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
201 浏览

botframework - 使用 dialog.matches 定义对话框的 replaceDialog()

我已将 LUIS 与我的聊天机器人集成在一起,并且几乎所有的对话都是使用 dialog.matches() 定义的。问题是某些对话框需要被重定向到其他对话框,但replaceDialog或者beginDialog似乎不适用于使用 dialog.matches 定义的对话框。示例:考虑以下对话框

我如何从其他对话框手动调用它?session.replaceDialog('startActivity')引发错误。

在 githib 上参考这个问题

0 投票
1 回答
1978 浏览

c# - 如何从 IDialogContext 获取活动信息

我正在使用 LuisDialog,我得到的回调返回的是 IDialogContext 和 LuisResult。有没有办法从原始活动中获取信息,例如频道、名称等?

0 投票
1 回答
1192 浏览

artificial-intelligence - 是否可以使用 API 自动训练 Microsoft LUIS?

上次我尝试从微软了解 LUIS,我发现了一些关于火车 LUIS 的有趣部分。

是否可以在不登录 LUIS 仪表板的情况下使用 API 训练 Microsoft LUIS?

0 投票
1 回答
495 浏览

nlp - LUIS 实体以小写形式返回

我有LUIS帮助我从我发送的文本中提取意图和/或实体。问题是,当它检测到一个实体时,它会以小写形式将其发回。

有没有办法配置或解决这个问题?

0 投票
3 回答
10710 浏览

c# - 如何在 Microsoft Bot Framework 中避免“抱歉,我的机器人代码有问题”

我有一个在 Azure + Bot Framework + LUIS 上运行的机器人(通过 LuisDialog)。

如果用户碰巧连续快速发送两条消息(在机器人有机会回答之前),他们会在 Facebook Messenger 或网络嵌入中看到以下错误消息:

抱歉,我的机器人代码有问题。

通过机器人通道模拟器调试时,我看到错误是这样的:

“文本”:“错误:响应状态代码不指示成功:429(请求过多)。在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务)在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) Microsoft.Bot.Builder.Luis.LuisService.d__4.MoveNext()

堆栈跟踪的末尾显示错误源自我的 MessageController.cs 中的这一行:

这很奇怪,因为我使用的是付费版本的 LUIS,每秒最多允许 10 个调用。

无论如何,我尝试将 MessageController.cs 中的整个代码包装到一个try/catch块中,并返回这个值而不考虑异常:

尽管如此,用户仍会看到错误消息“对不起,我的机器人代码有问题”,这基本上意味着存在未处理的异常。

如何防止此消息显示给用户,或捕获异常?

0 投票
3 回答
1934 浏览

c# - LUIS 响应引发错误请求错误

我已经开始将 Luis 集成到我的 BOT 中。LUIS 查询在浏览器中运行良好,但通过代码调用时,来自 LUIS GetResult 的响应会引发错误。

LUIS 查询在这里

对话框源代码:

消息控制器源代码:

尝试调试时,我的 BOT 模拟器中出现以下错误(仅限部分提取):

0 投票
1 回答
222 浏览

c# - BOT 在第二步询问实体

构建一个简单的客户服务 BOT,设计了 LUIS 模型,并且在订单号时效果很好。是在第一步本身中提供的。例如。我的订单 ABC0898787 的状态如何?其中意图被正确检测并且 ABC0898787 被识别为实体。

但是,需要调整机器人以进行如下对话:

用户:我的订单状态如何

Bot:请提供订单号

用户:(ABC0986767)或(ABC0986767)

机器人应该能够将数字映射到实体并处理请求。

意图方法的代码,在不设置 LUIS 模型以将单个单词作为实体的情况下集成第二步的最佳方法是什么?

0 投票
1 回答
133 浏览

bots - 将 LUIS 对话框连接到窗体对话框并映射内置字段

我有一个类似的问题:Connecting LUIS dialog to form dialog and mapping the right fields

除了我在 LUIS 中使用内置实体,例如 builtin.number,我在 LUIS 中给了它一个名称,例如 Amount,但映射似乎只在表单类中的字段类型和 LUIS JSON 中的实体类型之间。显然我不能有一个名为 builtin.number 的字段。

我将如何使用表单字段映射内置的 LUIS 实体?

0 投票
2 回答
810 浏览

botframework - 如何将实体与 LUIS 中定义的单词列表匹配

我正在使用LUISCognitive Services Emotion API一起工作,该 API对 8 种情绪(愤怒、轻蔑、厌恶、恐惧、幸福、中性、悲伤、惊讶)的图像进行排名。

在我的 LUIS 模型中,我将“情感”定义为一个实体并训练了模型。

LUIS 正确识别了情感实体,但我坚持如何将其映射到情感 API 使用的 8 个已定义词(愤怒、蔑视、厌恶、恐惧、幸福、中立、悲伤、惊讶)。

例如,如果我发送“谁是这里最悲伤的人”,它将返回这个

但是如何使用 LUIS 或任何其他 API 将“最悲伤”映射到“悲伤”?

0 投票
2 回答
2436 浏览

c# - 如何在 LUIS 对话框中调用 LUIS 对话框?

我的机器人有带有几个意图的 LUIS 对话框。我从我的 MessageController 调用 LUIS 对话框。如果检测到意图,我会启动一个子对话框。子对话框完成后,我调用context.Done("response from user").了该ChlildDialogDone任务之后。

ChildDialogDone任务内部,我想再次调用 LUIS 对话框来检测用户消息的意图(涉及到 ChildDialogDone)。现在在里面ChildDialogDone我有context.Wait(MessageReceived).当这行代码执行时,什么都没有发生,我的机器人正在等待用户的下一条消息。

这是代码:

所以在 EmailDialogDone 里面我有一些来自用户的消息,我想再次用这个消息执行 DefiningIntent 对话框。我该怎么做?