问题标签 [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.
botframework - 如何将 LUIS 操作集成到我的机器人中,提示用户提供更多信息?
我正在使用LuisDialog
,我想知道如何使用LuisResult
来检测动作、参数并提示用户输入缺少的参数。我知道LuisResult
已经包含操作和参数,但是我不知道提示用户的最佳方式是什么,或者如何使用contextId
. 我无法在 BotBuilder SDK 或一般网络上找到有关此主题的任何示例。
botframework - 如何使用 Bot Framework 在单个机器人上实现多个 LUIS 对话框?
由于每个 LUIS 模型仅限于 20 个意图和 10 个实体,而且每个模型都必须具有明确定义的范围/域,我想知道如果我希望我的机器人在单个机器人应用程序中实现多个对话框的最佳方法是能够覆盖多个领域,例如获取财务信息和天气信息。
我知道理想情况下我会有两个不同的机器人,但在这种情况下,我需要用一个机器人来做到这一点。我阅读了关于 Dialogs(和其他几个部分)的 Bot Framework 文档和 LUIS 帮助页面,但我找不到任何关于如何实现这一点的信息。我也看了一下例子,没有发现,有没有办法做到这一点?
botframework - 使用 Microsoft Bot Framework 启用操作绑定
我试图在发布 LUIS 应用程序时找到“使用 Microsoft Bot Framework 启用操作绑定”选项,但是它不存在,因为它在文档中显示
有人知道如何解锁这个功能吗?
c# - LUIS Bot 框架不会从外部调用中调用 Intent
我为我的 BOT 实现了外部登录。当外部站点调用 Bot CallBack 方法时,我需要在其中设置令牌和用户名,PrivateConversationData
然后使用类似"Welcome back [username]!"
.
为了显示此消息,我发送了一个MessageActivity
但此活动从未连接到我的聊天并且不会触发适当的[LuisIntent("UserIsAuthenticated")]
.
登录流程之外的其他意图按预期工作。
这是回调方法:
这是控制器:
这就是我注册组件的方式:
这是对话框:
我想念什么?
更新
还尝试使用ResumeAsync
回调方法:
但它给了我错误Operation is not valid due to the current state of the object.
更新 2
按照Ezequiel的想法,我以这种方式更改了我的代码:
resumptionCookie
似乎没问题:
但await Conversation.ResumeAsync(resumptionCookie, message);
继续给我错误Operation is not valid due to the current state of the object.
microsoft-cognitive - 无法使用 LUIS API 创建实体层次结构
我们想使用 LUIS api 创建实体层次结构。根据API 文档,我们需要使用 JSON 正文创建一个到 Create Entity Extractor 端点的 POST:
但是,当我们运行此请求时,LUIS 只有一个名为“EntityName”的新实体,没有任何子实体。就好像孩子数组被忽略了。关于发生了什么的任何想法?
microsoft-cognitive - 训练 LUIS 识别工作票号
我正在尝试训练 LUIS 识别工作票状态更新的请求(类似于 JIRA/GitHub 问题 ID)。作业单号的格式为 [字母 S 或 s][一位或多位数字]。例如:
“S344的那个状态是什么?”
意图:状态更新
实体:票证 = S344
在标记了许多话语之后,LUIS 可以以高可信度识别意图,但永远无法识别票证实体,即使我使用我在标记话语中标记为实体的确切票证编号。
我也尝试过添加 Regex 功能[sS]{1}\d+
,但这似乎没有任何区别。
我需要做一些特别的事情来完成这项工作,还是我只需要坚持添加更多的训练话语?
c# - 带有 LUIS 的 Microsoft Bot 框架
伙计,我有这个问题。我正在尝试在 Luis 的帮助下创建一个简单的机器人。我设法创建了一个机器人并将其托管在 azure 上,我还在LUIS 和entity中创建了一个意图。我已经创建了一些话语,并且那方面工作正常。
然后我由LuisDialog在 c# 中创建。我必须在 Azure 中创建认知服务 API订阅,并将它复制到我的LuisDialog中生成的 2 个密钥。
我的对话框如下所示:
当我运行该项目并使用Bot 模拟器来获取我的响应时,它总是没有命中。即使我写的信息和话语完全一样。现在我认为这是因为我自己搞糊涂了。我相信在通过认知服务帐户获取密钥以将其链接到LUIS端点之后还有另一个步骤,有人知道我接下来应该做什么吗?
更新
我正在使用Alarm bot 示例来创建我的 bot,但这让我感到困惑(主要是因为我以前从未使用过 Autofac),所以我改用了Simple Alarm bot 示例。我需要做的改变是使用 Global.asax:
并将LuisModel数据注释添加到PiiiCKLuisDialog中,如下所示:
当我运行我的应用程序时,我没有收到任何错误,当我使用带有 MicrosoftAppId 和 Secret 的Microsoft Bot Emulator时,我可以输入一条消息,但它仍然和以前一样。它总是去无路易斯意图,而不是“选择类别”之一。值得注意的是LuisResult始终为空...
有任何想法吗?
c# - Microsoft Bot Framework、LUIS 和操作参数
我正在尝试使用 LUIS 构建一个机器人,但它比我想象的要困难得多。到目前为止,我已经成功地创建了我的 LUIS 应用程序并创建了一个Intent和一个实体,并且我创建了一些似乎可以正常工作的话语。
然后我创建了我的机器人并将其连接到 Luis。当我测试我的机器人时,它按预期工作。现在是有趣的部分。我想处理参数。在 Luis 上,我在Intent中添加了一个动作:
如您所见,我添加了一个提示。我的机器人中的代码目前如下所示:
我想你可以猜到我要去哪里。如果用户输入Help me buy a camera,它将进入选择类别Intent 并选择正确的实体。但是如果他们输入Help me buy,它仍然会转到正确的 Intent ,但不会有选定的Entity。我希望我的机器人看到并使用我在 LUIS 中创建的提示中的文本,当用户选择他们的实体时,我希望它使用该参数返回 LUIS。
我不知道该怎么做,也找不到任何教程。任何帮助将不胜感激(甚至链接!)
c# - Microsoft Bot 框架、LUIS 和瀑布流
我正在尝试构建一个机器人。起初我使用的是Node.js,但因为显然 c# 更适合我的客户,所以我开始在 c# 中创建 Bot。我还创建了一个 LUIS 应用程序。
现在,这个 Bot 背后的想法是,它会在最后结合您的结果并根据您的答案挑选解决方案之前询问您一系列问题。我遇到的问题是我不知道如何设置机器人来做到这一点。在节点中,它谈到了瀑布,但我在 c# 版本中看不到类似的东西。另外,我不确定它是否应该在我应该集中注意力的 LUIS 中。
例如,假设我希望用户选择一个对象,然后根据该对象提出 3 个问题,例如:
- 是不是很小?
- 它轻吗?
- 你喜欢什么颜色?
最后说“你想要一台黑色、小巧、轻便的相机。” 我似乎无法让它发挥作用。我知道你们中的一些人会说使用 FormFlow,但问题是动态的,对象也是动态的,这就是我使用 LUIS 的原因。
有谁知道我在哪里可以找到一篇关于如何使用 LUIS 创建类似流程的好文章?
c# - 将 LUIS 与 FormFlow 集成
我创建了一个机器人,里面有一个 FormFlow。现在,如果您键入我想启动一个产品,LUIS 将告诉它必须转到哪个对话框:
现在,一旦它进入对话框,它会要求用户选择数字:
请选择号码:
- 天蓝色
- 视窗
现在,如果我回复 1,2。Luis 将其作为 None 意图返回,因此我的消息不会转到相应的对话框。它总是去无情况。
对话框的代码是:
程序和产品的枚举:
进入此对话框后,它要求我选择用于选择程序的编号。现在,如果我选择 1,2。Luis 将其返回为 None 意图。所以案例“无”被执行。
我想要的是,将控件重定向到同一个对话框。我也有类似的编辑产品对话框。这就是为什么我无法训练我的 luis 应用程序将数字理解为产品意图。否则,每当我为编辑产品选择编号时,它将转到不同的情况。
早些时候它以某种方式识别正确的意图,但今天我重新发布了我的 luis 应用程序,它停止识别。