终止支持通知:2025年9月15日, AWS 我们将停止对Amazon Lex V1的支持。2025 年 9 月 15 日之后,您将无法再访问亚马逊 Lex V1 主机或 Amazon Lex V1 资源。如果您使用的是 Amazon Lex V2,请改为参阅 Amazon Lex V2 指南。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
步骤 1:查看本练习中使用的蓝图
机器人蓝图概述 (BookTrip)
您用于创建自动程序的蓝图 (BookTrip) 提供以下预配置:
-
槽类型 – 两种自定义槽类型:
-
RoomTypes
,使用枚举值king
、queen
和deluxe
,用于BookHotel
目的。 -
CarTypes
,使用枚举值economy
、standard
、midsize
、full size
、luxury
和minivan
,用于BookCar
目的。
-
-
意图 1 (BookHotel) — 其预配置如下:
-
预配置的槽
-
RoomType
,属于RoomTypes
自定义槽类型 -
Location
,属于AMAZON.US_CITY
内置槽类型 -
CheckInDate
,属于AMAZON.DATE
内置槽类型 -
Nights
,属于AMAZON.NUMBER
内置槽类型
-
-
预配置的表达
-
“预订酒店”
-
“我想预订酒店”
-
“在 {Location} 预订 {Nights} 晚”
如果用户表达出上述任意一种说法,Amazon Lex 就会确定用户的意图是
BookHotel
,然后提示用户提供插槽数据。 -
-
预配置的提示
-
针对
Location
槽的提示 –“您要住在哪个城市?” -
针对
CheckInDate
槽的提示 –“您想要在哪天入住?” -
针对
Nights
槽的提示 –“您要住几天?” -
针对
RoomType
槽的提示 –“您想预订哪种类型的房间,双人床房、大床房还是豪华大床房?” -
确认声明 — “好吧,我让你在 {Location} 住一晚 {Nights} 晚,从 {CheckInDate} 开始。是否要预订?”
-
拒绝 –“好的,已经取消了正在进行的预订。”
-
-
-
意图 2 (BookCar) — 其预配置如下:
-
预配置的槽
-
PickUpCity
,属于AMAZON.US_CITY
内置类型 -
PickUpDate
,属于AMAZON.DATE
内置类型 -
ReturnDate
,属于AMAZON.DATE
内置类型 -
DriverAge
,属于AMAZON.NUMBER
内置类型 -
CarType
,属于CarTypes
自定义类型
-
-
预配置的表达
-
“预订汽车”
-
“订一辆车”
-
“办理汽车预订”
如果用户说出其中任何一个,Amazon Lex 就会确定 BookCar 其意图,然后提示用户输入槽位数据。
-
-
预配置的提示
-
针对
PickUpCity
槽的提示 –“您需要在哪座城市租赁汽车?” -
针对
PickUpDate
槽的提示 –“您想从哪天开始租赁汽车?” -
针对
ReturnDate
槽的提示 –“您想在哪天归还汽车?” -
针对
DriverAge
槽的提示 –“驾驶此次所租汽车的司机多大年龄?” -
针对
CarType
插槽的提示 —“您想要租哪种类型的汽车? 我们最受欢迎的车型是经济型、中型和豪华型汽车” -
确认声明 — “好吧,我让你在 {CarType} 到 {PickUpCity} 租一套 {ReturnDate}。PickUpDate是否要预订?”
-
拒绝 –“好的,已经取消了正在进行的预订。”
-
-
Lambda 函数蓝图概述 () lex-book-trip-python
除了机器人蓝图外,还 AWS Lambda 提供了一个蓝图 (lex-book-trip-python),您可以将其用作机器人蓝图的代码挂钩。关于机器人蓝图和相应 Lambda 函数蓝图的列表,请参阅Amazon Lex 和 AWS Lambda 蓝图。
使用 BookTrip 蓝图创建机器人时,您可以通过将此 Lambda 函数添加为用于初始化/验证用户数据输入BookCar 和实现意图的代码挂钩来更新意图(和 BookHotel)的配置。
提供的本 Lambda 函数展示了动态会话,该会话使用之前了解的用户信息 (保存在会话属性中) 来初始化目的的槽值。有关更多信息,请参阅 管理对话上下文。