

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

# 部署解决方案
<a name="deploy-the-solution"></a>

该解决方案使用 [AWS CloudFormation 模板和堆栈](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-whatis-concepts.html)来自动部署。该 CloudFormation 模板指定了此解决方案中包含的 AWS 资源及其属性。 CloudFormation 堆栈预置模板中描述的资源。

## 部署流程概述
<a name="deployment-process-overview"></a>

在启动解决方案之前，请查看本指南中讨论[的成本](cost.md)、[架构](architecture-overview.md)、[安全性](security-1.md)和其他注意事项。

**重要**  
如果您计划使用 Amazon Bedrock，则必须在模型可供使用之前申请访问权限。有关更多详细信息，请参阅 *Amazon Bedrock 用户指南*中的[模型访问权限](https://docs.aws.amazon.com/bedrock/latest/userguide/model-access.html)。

 **部署时间：**大约 10 分钟

 [步骤 1：启动部署仪表板堆栈](step-1-launch-the-deployment-dashboard-stack.md) 

 [步骤 2：部署用例](step-2-deploy-use-case.md) 

 [步骤 3：使用部署仪表板向导部署用例](step-3-deploy-a-use-case-using-deployment-dashboard-wizard.md) 

 [步骤 4：部署后配置](step-4-post-deployment-configuration.md) 

或者，如果您不想使用部署仪表板用户界面或，则可以将用例与解决方案分开部署 APIs。
+  [部署独立的文本用例](deploying-the-text-use-case-stack-separately.md) 
+  [部署独立的 Bedrock Agent 用例](deploying-a-standalone-agent-use-case.md) 

您也可以[提供 DynamoDB 聊天配置](#supplying-a-dynamo-db-chat-configuration)。

**重要**  
此解决方案向 AWS 发送有关该解决方案使用情况的运营指标（“数据”）。我们使用这些数据来更好地了解客户如何使用此解决方案以及相关服务和产品。AWS 对这些数据的收集受 [AWS 隐私政策](https://aws.amazon.com/privacy/)的约束。

## 提供 DynamoDB 聊天配置
<a name="supplying-a-dynamo-db-chat-configuration"></a>

部署用例时，**UseCaseConfigRecordKey**和**UseCaseConfigTableName**是必填 CloudFormation 参数，通常由部署仪表板填充。部署仪表板堆栈处理此表的创建和配置，而对部署 API 的调用则会触发参数的填充。

执行独立部署时，必须执行以下操作：

1. **使用哈希键为密钥创建一个 DynamoDB 表。**

1. 在包含用例配置的表中创建一条记录作为格式记录：`{key: some_use_case_key, config: {your_configuration}.`

1. 部署时，将选定的**UseCaseConfigTableName**和 **UseCaseConfigRecordKey**（在本示例`some_use_case_key`中）参数传递给用例堆栈。

要为独立部署创建合适的配置，您可以从 Deployment 控制面板创建所需的用例，然后从配置表中复制记录。否则，您可以根据以下 Bedrock 部署示例制作自己的配置：

```
{
 "UseCaseName": "SampleUseCase",
 "ConversationMemoryParams": {
 "ConversationMemoryType": "DynamoDB",
 "HumanPrefix": "H",
 "AiPrefix": "A",
 "ChatHistoryLength": 20
 },
 "KnowledgeBaseParams": {
 "KnowledgeBaseType": "Bedrock",
 "NumberOfDocs": 2,
 "ScoreThreshold": 0,
 "ReturnSourceDocs": false,
 "BedrockKnowledgeBaseParams": {
 "BedrockKnowledgeBaseId": "SOME_ID",
 "OverrideSearchType": null
 }
 },
 "LlmParams": {
 "ModelProvider": "Bedrock",
 "BedrockLlmParams": { "ModelId": "anthropic.claude-v2" },
 "PromptParams": {
 "PromptTemplate": "some prompt",
 "MaxPromptTemplateLength": 187500,
 "MaxInputTextLength": 187500,
 "UserPromptEditingEnabled": true,
 "DisambiguationEnabled": true,
 "DisambiguationPromptTemplate": "some prompt"
 },
 "ModelParams": {},
 "Temperature": 1,
 "RAGEnabled": true,
 "Streaming": true,
 "Verbose": false
 }
}
```