问题标签 [amazon-lex]

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 回答
3297 浏览

amazon-web-services - 带有适用于 Amazon Lex 的 AWS Lambda 挂钩的自定义插槽类型

Amazon Lex 聊天机器人框架提供使用自定义槽类型。但是,该机制是提供一组将被验证的值。但我想要一个自定义验证器,例如检查输入是否在数据库中。

理想情况下,我想开发一个 AWS lambda 挂钩,它接收输入参数,然后执行一些程序,该程序返回格式正确的插槽类型或在输入无效时给出错误。任何人的想法?

0 投票
1 回答
474 浏览

aws-lambda - AWS Lex 和 Lambda:使用不在插槽中的变量向 API 请求

如果您提供项目 ID,我有一个 Python 编码的后端,它提供了一个用于“获取项目的所有任务”的 API。

我想使用 AWS 在线工具中的 Lex 和 Lambda 来完成这个请求,所以我在想一些简单的事情,比如:“给我项目 145 的任务”然后 lambda 用变量“145”调用 API 并显示任务给用户。

我做了 PizzaOrder 教程,一切都很清楚,但现在我想用我的项目做这个基本的事情,我遇到了一个问题:我的项目不在插槽中,因为显然用户可以创建和删除项目。所以“145”不在插槽中。

那么如何处理这样的情况呢?Lex 可以识别不在槽中的单词然后像变量一样使用它吗?

0 投票
2 回答
10097 浏览

amazon-web-services - 如何解决此 AWS lambda 错误 - 发生错误:收到来自 Lambda 的错误响应:未处理?

我是 AWS 新手。我正在使用 aws lex 和 aws lambda c# 构建聊天机器人。我正在使用示例 aws lambda C# 程序

我在 aws lex 中创建了一个插槽来映射第一个参数input。但我总是收到此错误发生错误:收到来自 Lambda 的错误响应:未处理

在 Chrome 网络选项卡中,我可以看到与身份验证相关的Error-424 Failed Dependency

请帮助如何解决 aws lex 使用的 AWS lambda C# 错误。我遇到了 cloudwatch,但我不确定。

谢谢!

0 投票
2 回答
559 浏览

c# - 如何从 AWS lex 到 AWS lambda c# 进行通信?

我正在尝试使用 AWS lex 和 AWS lambda C# 构建我的聊天机器人。为了实现意图,我无法与 AWS lambda 进行通信。我在这里问了一个相关的问题

我不确定从 aws-lex 与 aws lambda 通信的序列过程是什么

请解释一下。我猜这可能是由于一些身份验证问题。所以如果你解释我应该使用哪些身份验证角色来实现这一点并且我不确定我应该使用什么事件映射来进行 lex 和 lambda 通信,那将会很有帮助。

注意:AWS lex 和 AWS lambda 可以独立工作,但不能相互通信。

0 投票
1 回答
197 浏览

amazon-lex - 是否可以编辑意图超过 7 次?

我发现在 Amazon Lex 中编辑意图的唯一方法是在意图名称旁边的下拉菜单中选择最新。然后,每次单击Build,版本号都会增加。当它达到版本 7 时,最新选项消失,我无法再编辑意图。这是否意味着我只能编辑一个意图 7 次?或者有没有其他方法可以编辑意图?

编辑意图 dorp 下拉菜单

谢谢

0 投票
1 回答
3844 浏览

node.js - AWS Lex lambda 函数 引出槽

我现在正在构建 AWS Lex 聊天机器人,并在 lambda 函数设置上遇到了一些问题。根据示例代码,它在对话结束时使用了这个 lambda 函数。这就是为什么代码是这样的:function close(.....)

但是我想做的是使用 DialogCodeHook 而不是这个 FulfillmentCodeHook。

Lex 内部最简单的逻辑是问问题 1-->得到答案 1-->问问题 2-->得到答案 2-->问问题 2-->得到答案 3;我想做的是问问题1-允许的响应值是1.1、1.2如果响应值=值1.1问问题2如果响应值=值1.2问问题3问问题4-值4.1、值4.2 ..等等

在 AWS 论坛上,一个答案是这样的:是的,您可以使用 Lambda 来实现决策树。Lambda 允许您设置特定消息并使用“dialogAction”引出一个槽。

对于这个特定的对话流程

同样,您可以定义条件来询问问题 3、4 等。

但我不确定我应该把这个 If..... 放在哪里以及如何使用这个 ElicitSlot 函数。

close 函数的完整版示例代码为:

希望有人能帮忙!太感谢了!!!!!!!!!!!!!!!!!!!!!

0 投票
0 回答
319 浏览

node.js - 带有 React 和 Node 的 AWS Lex

我正在探索使用 AWS Lex 将语音识别添加到 React / Node Web 应用程序。谁能指出我可以看的例子?

一个主要问题似乎是 Safari 和 IE 中缺乏对 MediaRecorder 的支持,所以我也在寻找可以让我的应用程序麦克风访问的插件。

0 投票
1 回答
811 浏览

amazon-web-services - 在 AWS LEX 中为槽值强制执行自定义枚举

我希望能够为 LEX 尝试逼近的插槽指定有效选项的自定义列表,或者在无法逼近有效选项的情况下拒绝无效响应。

起初我试图通过自定义插槽类型来做到这一点。尽管他们的例子可能会让你相信这些是枚举,但事实并非如此。用户仍然可以输入他们喜欢的任何值。

他们的文档有这样的说法:https ://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/migrating-to-the-improved-built-in-and-custom-slot-types #文字

自定义槽类型不等同于枚举。如果被口语理解系统识别,列表之外的值仍可能返回。尽管自定义槽类型的输入根据列表中的值加权,但它不仅限于列表中的项目。使用槽值时,您的代码仍需要包含验证和错误检查。

我知道我可以在他们完成完整提交后通过 lambda 验证他们的提交,但到那时为时已晚。用户已提交完整的意图消息。我无法中途捕捉并纠正它们。

我是否缺少一些输入槽选项或自定义槽类型的配置选项的方法?有什么方法可以为插槽强制执行自定义选项列表?(类似于意图的话语,或内置的槽类型,如果没有匹配,它将再次询问相同的问题。)

谢谢!

0 投票
0 回答
209 浏览

node.js - lex 响应中的 inputTranscript 错误

我正在尝试为 lex 测试用于音频输入和输出的 amazon web node api sdk 并成功配置它,但是当我测试它时,它向我发送垃圾输入脚本(如“是”、“哦不”、“嗯”等.) 作为回应。

请求参数如下,

我得到的回应如下,

对于录音,我使用我的笔记本电脑内置麦克风和 RecordRTC api,

录制的语音被编码成base64并发送到节点服务器,在那里它被解码并以缓冲区格式发送到lex api。

0 投票
2 回答
1356 浏览

amazon-web-services - 如何将 Amazon Lex 聊天机器人发布为 Web 服务

我能够创建 Amazon lex 聊天机器人。我也可以在 Facebook Messenger 中发布相同的内容。我还找到了适用于 iOS 和 Android 的 sdk。

我想要的是将 lex bot 发布为可以从任何休息客户端调用的 web 服务,以便它可以通过休息调用集成到任何用户界面。

我听说过将 lex 机器人作为服务发布的 Javascript sdk,但我找不到任何合适的文档。