第 1 步:创建 Lambda 函数 - Amazon Bedrock

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

第 1 步:创建 Lambda 函数

首先,创建一个 Lambda 函数,您的代理将调用函数来执行操作。在此过程中,您将创建一个 Python Lambda 函数,在调用该函数时将返回当前日期和时间。您使用基本权限设置该函数,添加必要的代码来处理 Amazon Bedrock 代理发出的请求,并部署该函数,以便它可以连接到您的代理。

有关更多信息,请参阅《AWS Lambda 开发人员指南》中的创建第一个 Lambda 函数

创建 Lambda 函数
  1. 登录 AWS 管理控制台,然后通过以下网址打开 Lambda 控制台:https://console.aws.amazon.com/lambda/

  2. 选择创建函数

  3. 选择从头开始编写

  4. Basic information (基本信息) 部分中:

    • 对于函数名称,输入函数的名称(例如 DateTimeFunction)。记下函数的名称,您在步骤 2:创建 Amazon Bedrock 代理的第 15 步中需要该名称。

    • 对于运行时,选择 Python 3.9(或您的首选版本)。

    • 对于架构,请保持不变。

    • 权限中,选择更改默认执行角色,然后选择创建具有基本 Lambda 权限的新角色

  5. 选择创建函数

  6. 函数概览中的函数 ARN 下,记下该函数的 Amazon 资源名称(ARN)。您在步骤 2:创建 Amazon Bedrock 代理的第 24 步中需要此名称。

  7. 代码选项卡中,使用以下内容替换现有代码:

    # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: Apache-2.0 import datetime import json def lambda_handler(event, context): now = datetime.datetime.now() response = {"date": now.strftime("%Y-%m-%d"), "time": now.strftime("%H:%M:%S")} response_body = {"application/json": {"body": json.dumps(response)}} action_response = { "actionGroup": event["actionGroup"], "apiPath": event["apiPath"], "httpMethod": event["httpMethod"], "httpStatusCode": 200, "responseBody": response_body, } session_attributes = event["sessionAttributes"] prompt_session_attributes = event["promptSessionAttributes"] return { "messageVersion": "1.0", "response": action_response, "sessionAttributes": session_attributes, "promptSessionAttributes": prompt_session_attributes, }
  8. 选择部署以部署您的函数。

  9. 选择配置选项卡。

  10. 选择权限

  11. 基于资源的策略声明下,选择添加权限

  12. 编辑策略声明中,执行以下操作:

    1. 选择 AWS 服务

    2. 服务中选择其他

    3. 对于声明 ID,输入唯一标识符(例如,AllowBedrockInvocation)。

    4. 对于主体,输入 bedrock.amazonaws.com

    5. 对于资源 ARN,输入 arn:aws:bedrock:region:AWS account ID:agent/*

      region 替换为您正在使用的 AWS 区域,例如 us-east-1。将 AWS account ID 替换为您的 AWS 账户 ID。

    6. 对于操作,选择 lambda:InvokeFunction

  13. 选择保存