

# ソリューションをデプロイする
<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 ユーザーガイド*」の「[Model access](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) 

必要に応じて、デプロイダッシュボードの UI または API を使用しない場合は、ユースケースをソリューションとは別にデプロイできます。
+  [スタンドアロンの Text ユースケースのデプロイ](deploying-the-text-use-case-stack-separately.md) 
+  [スタンドアロンの Bedrock エージェントユースケースのデプロイ](deploying-a-standalone-agent-use-case.md) 

[DynamoDB チャット設定を指定](#supplying-a-dynamo-db-chat-configuration)することもできます。

**重要**  
このソリューションは、このソリューションの使用に関するオペレーションメトリクスを AWS (「データ」) に送信します。AWS ではこのデータを使用して、ユーザーがこのソリューション、関連サービスおよび製品をどのように使用しているかをよりよく理解し、提供するサービスや製品の改善に役立てます。AWS によるこのデータの収集には、[AWS プライバシーポリシー](https://aws.amazon.com/privacy/)が適用されます。

## DynamoDB チャット設定の指定
<a name="supplying-a-dynamo-db-chat-configuration"></a>

ユースケースをデプロイする場合、**UseCaseConfigRecordKey** と **UseCaseConfigTableName** は必須の CloudFormation パラメータです。これらのパラメータは通常、デプロイダッシュボードによって自動的に設定されます。デプロイダッシュボードのスタックは、このテーブルの作成と設定を処理し、デプロイ API への呼び出しによってパラメータが自動入力されます。

スタンドアロンでデプロイする場合は、次の作業を行う必要があります。

1. **key** のハッシュキーを持つ DynamoDB テーブルを作成します。

1. ユースケースの設定情報を含むレコードを、`{key: some_use_case_key, config: {your_configuration}.` の形式でテーブルに作成します。

1. デプロイ時に、選択した **UseCaseConfigTableName** パラメータおよび **UseCaseConfigRecordKey** (この例では `some_use_case_key`) パラメータをユースケーススタックに渡します。

スタンドアロンデプロイに適した設定を作成するには、デプロイダッシュボードから必要なユースケースを作成し、設定テーブルからレコードをコピーします。それ以外の場合は、以下の 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
 }
}
```