View a markdown version of this page

部署独立的文本用例 - AWS 上的生成式人工智能应用程序构建者

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

部署独立的文本用例

按照本节中的 step-by-step说明配置解决方案并将其部署到您的账户。

部署时间:大约 10-30 分钟

  1. 登录 AWS 管理控制台并选择按钮启动要部署的 CloudFront 模板。

    BedrockChat。模板 Launch solution

    SageMakerChat。模板

    Launch solution

  2. 默认情况下,该模板在美国东部(弗吉尼亚州北部)区域启动。要在其他 AWS 区域启动解决方案,请使用控制台导航栏中的区域选择器。

    注意:此解决方案使用 Amazon Kendra 和 Amazon Bedrock,它们目前并非在所有 AWS 区域都可用。如果使用这些功能,则必须在提供这些服务的 AWS 地区启动此解决方案。有关各地区的最新可用性,请参阅 AWS 区域服务列表

  3. 创建堆栈*页面上,确认*Amazon S3 网址*文本框中是否有正确的模板 URL,然后选择* 下一步。

  4. 在*指定堆栈详细信息*页面上,为您的解决方案堆栈指定一个名称。有关命名字符限制的信息,请参阅 AWS Identity and A ccess Management 用户指南中的 IAM 和 STS 限制

  5. 参数下,检查该解决方案模板的参数,并根据需要进行修改。该解决方案使用以下默认值。

    UseCaseUUID

    <_Requires input_>

    长度 UUIDv4 为 36 个字符,用于标识应用程序中已部署的用例。

    UseCaseConfigRecordKey

    <_Requires input_>

    与包含聊天提供商 Lambda 在运行时所需的配置的记录对应的密钥。表中的记录必须具有与该值匹配的关键属性,以及包含所需配置的配置属性。此记录将由部署平台填充(如果正在使用)。对于此用例的独立部署,需要在中定义的表中手动创建的UseCaseConfigTableName条目。

    UseCaseConfigTableName

    <_Requires input_>

    堆栈将从表中读取配置,关键是这个名字 UseCaseConfigRecordKey

    ExistingRestApiId

    (可选输入)

    要使用的现有 API Gateway REST API ID。如果未提供,则将创建一个新的 API Gateway REST API。通常在从 “部署” 仪表板部署时提供。

    注意:使用现有 APIs 可以帮助减少资源重复,并简化 APIs 何时需要部署多个独立用例的管理。在 APIs 为独立用例提供现有路径时,您有责任确保 API 配置为具有预期模型的所需路由。必须配置所需的预先配置的 /details 路由(在聊天期间获取用例详细信息),也可以配置 /feedback 路由(如果设置FeedbackEnabledYes为启用收集 LLM 聊天响应的反馈)。此外 ExistingApiRootResourceIdExistingCognitoUserPoolId,还ExistingCognitoGroupPolicyTableName必须提供、。

    ExistingApiRootResourceId

    (可选输入)

    要使用的现有 API Gateway REST API 根资源 ID。REST API 根资源 ID 可以从 AWS 控制台获取,方法是在 API 的 “资源” 部分中选择根资源 (/)。然后,资源 ID 将显示在资源详细信息面板中。或者,您也可以在 REST API 上运行描述 API 调用以查找根资源 ID。

    FeedbackEnabled

    No

    如果设置为 “否”,则部署的用例堆栈将无法访问反馈功能。

    ExistingModelInfoTableName

    (可选输入)

    包含模型信息和默认值的表的 DynamoDB 表名。由部署平台使用。如果省略,则将根据房屋模型的默认值创建一个新表。

    DefaultUserEmail

    placeholder@example.com

    此用例的默认用户的电子邮件。已为该电子邮件创建一个 Amazon Cognito 用户来访问该用例。如果未提供,则不会创建 Cognito 群组和用户。您也可以使用placeholder@example.com创建群组,但不能使用创建用户。有关设置用户池的信息,请参阅手动用户池配置

    ExistingCognitoUserPoolId

    (可选输入)

    UserPoolId此用例将使用该用户池进行身份验证的现有 Amazon Cognito 用户池。通常在从 Deployment 控制面板部署时提供,但在独立部署此用例堆栈时可以省略。

    CognitoDomainPrefix

    (可选输入)

    如果要为 Cognito 用户池客户端提供域,请输入一个值。如果您不提供值,则部署将生成一个值。

    ExistingCognitoUserPoolClient

    (可选输入)

    提供用户池客户端(应用程序客户端)以使用现有的客户端。如果您不提供用户池客户端,则将创建一个新的用户池客户端。只有在提供了现有的用户池 ID 时,才能提供此参数。

    ExistingCognitoGroupPolicyTableName

    (可选输入)

    包含用户组策略的 DynamoDB 表的名称。这是由自定义授权方在用例的 API 上使用的。通常,您可以在从部署平台部署时提供输入,但在独立部署此用例堆栈时可以省略该用例堆栈。

    RAGEnabled

    true

    如果设置为 true,则部署的用例堆栈将使用为提供 RAG 功能而创建的 Amazon Kendra 索引。如果设置为false,则用户直接与 LLM 交互。

    KnowledgeBaseType

    Bedrock

    用于 RAG 的知识库类型。只有在为时 RAGEnabled 才设置true。可以是 Bedrock 或 Kendra。

    注意:只有在RAGEnabled为真时才相关。

    ExistingKendraIndexId

    (可选输入)

    用于该用例的现有 Kendra 索引的索引 ID。如果未提供任何索引,并且KnowledgeBaseType是 Kendra,则将为您创建一个新索引。

    注意:只有在 “是” trueRAGEnabledKnowledgeBaseType“是” 时才相关Kendra

    NewKendraIndexName

    (可选输入)

    要为此用例创建的新 Kendra 索引的名称。仅在未提供ExistingKendraIndexId时适用。

    注意:只有在RAGEnabled为真且KnowledgeBaseType是 Kendra 时才相关。

    NewKendraQueryCapacityUnits

    0

    将为此用例创建的新 Amazon Kendra 索引的其他查询容量单位。仅在未提供ExistingKendraIndexId时才适用,请参阅CapacityUnitsConfiguration

    注意:只有在 “是” trueRAGEnabledKnowledgeBaseType“是” 时才相关Kendra

    NewKendraStorageCapacityUnits

    0

    将为此用例创建新的 Amazon Kendra 索引的额外存储容量单位。仅在未提供ExistingKendraIndexId时才适用,请参阅CapacityUnitsConfiguration

    注意:只有在 “是” trueRAGEnabledKnowledgeBaseType“是” 时才相关Kendra

    NewKendraIndexEdition

    (可选输入)

    用于为此用例创建新的亚马逊 Kendra 索引的 Amazon Kendra 版本。仅在未提供时ExistingKendraIndexId适用,请参阅 Amazon Kendra 版本

    注意:只有在 “是” trueRAGEnabledKnowledgeBaseType“是” 时才相关Kendra

    BedrockKnowledgeBaseId

    (可选输入)

    要在 RAG 用例中使用的基础知识库的 ID。如果提供了ExistingKendraIndexId或,NewKendraIndexName则无法提供。

    注意:只有在 “是” trueRAGEnabledKnowledgeBaseType“是” 时才相关Bedrock

    VpcEnabled

    No

    堆栈资源是否应部署在 VPC 内。

    CreateNewVpc

    No

    如果您希望解决方案为您创建新 VPC 并用于此用例,请选择Yes

    注意:只有在VpcEnabled是的情况下才相关Yes

    IPAMPoolId

    (可选输入)

    如果您想使用 Amazon VPC IP 地址管理器分配 CIDR 范围,请提供要使用的 IPAM 池 ID。

    注意:只有在 “是” YesVpcEnabledCreateNewVpc“是” 时才相关No

    ExistingVpcId

    (可选输入)

    用于该用例的现有 VPC 的 VPC ID。

    注意:只有在 “是” YesVpcEnabledCreateNewVpc“是” 时才相关No

    ExistingPrivateSubnetIds

    (可选输入)

    用于部署 Lambda 函数 IDs 的现有私有子网的子网列表,以逗号分隔。

    注意:只有在 “是” YesVpcEnabledCreateNewVpc“是” 时才相关No

    ExistingSecurityGroupIds

    (可选输入)

    用于配置 Lambda 函数的现有 VPC 的安全组列表,以逗号分隔。

    注意:只有在 “是” YesVpcEnabledCreateNewVpc“是” 时才相关No

    VpcAzs

    (可选输入)

    以逗号分隔的列表,列出了 AZs 在哪些子网中创建的 VPCs

    注意:只有在 “是” YesVpcEnabledCreateNewVpc“是” 时才相关No

    UseInferenceProfile

    No

    如果配置的模型是 Bedrock,则可以指示是否使用基岩推理配置文件。这将确保在堆栈部署期间配置所需的 IAM 策略。有关更多详细信息,请参阅以下 https://docs.aws.amazon.com/bedrock/ latest/userguide/cross-region-inference.html

    部署用户界面

    选择用于部署此部署的前端 UI 的选项。选择 “否”,将仅创建用于托管的基础架构 APIs、身份验证和后端处理。 APIs

  6. 选择 Next(下一步)。

  7. 配置堆栈选项页面上,请选择下一步

  8. 审核页面上,审核并确认设置。选中确认模板将创建 AWS Identity and Access Management (IAM) 资源的复选框。

  9. 选择 Create stack(创建堆栈)以部署堆栈。

您可以在 AWS CloudFormation 控制台的 “状态” 列中查看堆栈的状态。您将在大约 10-30 分钟后收到 “创建完成” 状态。