选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

为你的机器人创建 AWS Lambda 函数

聚焦模式
为你的机器人创建 AWS Lambda 函数 - Amazon Lex

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

要为您的 Amazon Lex V2 机器人创建 Lambda 函数,请 AWS Lambda 从您的访问 AWS Management Console 并创建一个新函数。您可以参阅AWS Lambda 开发者指南,了解有关的更多详细信息 AWS Lambda。

  1. 登录 AWS Management Console 并打开 AWS Lambda 控制台,网址为https://console.aws.amazon.com/lambda/

  2. 在左侧边栏中选择函数

  3. 选择创建函数

  4. 您可以选择从头开始创作以最少的代码开始,选择使用蓝图以从列表中选择常见用例的示例代码,或者选择容器镜像为您的函数选择要部署的容器镜像。如果您选择从头开始创作,请继续执行以下步骤:

    1. 给您的函数起一个有意义的函数名称来描述它的作用。

    2. 运行时下拉菜单中选择一种语言来编写函数。

    3. 为您的函数选择一个指令集架构

    4. 默认情况下,Lambda 创建具有基本权限的新角色。要使用现有角色或使用 AWS 策略模板创建角色,请展开更改默认执行角色菜单并选择一个选项。

    5. 展开高级设置菜单以配置更多选项。

  5. 选择创建函数

从头开始创建新函数时所看到的内容如下图所示。

新的 Lambda 函数。

Lambda 处理程序函数因您使用的语言而异。它至少需要一个 event JSON 对象作为参数。您可以进入 AWS Lambda Lex V2 的输入事件格式 查看 Amazon Lex V2 提供的 event 中包含的字段。修改处理程序函数,最终返回与 AWS Lambda Lex V2 的响应格式 中所述格式相匹配的 response JSON 对象。

  • 编写完函数后,选择部署以允许使用该函数。

请记住,您最多可以将每个机器人别名与一个 Lambda 函数相关联。但是,您可以在 Lambda 代码中为机器人定义任意数量的函数,然后在 Lambda 处理程序函数中调用这些函数。例如,虽然同一个机器人别名中的所有意图都必须调用相同的 Lambda 函数,但您可以创建一个路由器函数来为每个意图激活单独的函数。可以为应用程序使用或修改的路由器函数示例如下所示:

import os import json import boto3 # reuse client connection as global client = boto3.client('lambda') def router(event): intent_name = event['sessionState']['intent']['name'] fn_name = os.environ.get(intent_name) print(f"Intent: {intent_name} -> Lambda: {fn_name}") if (fn_name): # invoke lambda and return result invoke_response = client.invoke(FunctionName=fn_name, Payload = json.dumps(event)) print(invoke_response) payload = json.load(invoke_response['Payload']) return payload raise Exception('No environment variable for intent: ' + intent_name) def lambda_handler(event, context): print(event) response = router(event) return response

何时在机器人对话中使用 AWS Lambda 功能

在与用户的对话中,您可以在以下时间使用 Lambda 函数:

  • 在识别意图后的初始响应中,例如,在用户说要订购披萨之后。

  • 从用户引发槽位值后,例如,在用户告诉机器人他们要订购的披萨大小之后。

  • 在每次重试之间引发一个槽位时,例如,客户没有使用公认的披萨尺寸时。

  • 确认意图时,例如,在确认披萨订单时。

  • 要履行意图时,例如,要订购披萨时。

  • 在履行意图之后以及机器人结束对话之前。例如,切换到点饮料的意图时。

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。