

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# チュートリアル: 住宅ローン申請を処理するフローを作成する
<a name="getting-started-mortgage-flow"></a>

Amazon Bedrock リソースとその機能に慣れるために、 CloudFormation テンプレートを使用して、さまざまな Amazon Bedrock やその他の AWS リソースを組み合わせて住宅ローン申請プロセスを自動化する[フロー](flows.md)を設定します。

**注記**  
このチュートリアルでは、{{us-east-1}} リージョンを使用します。エージェント、フロー、ガードレール、ナレッジベース、プロンプト管理をサポートする任意のリージョンを使用できます。リージョン別の機能サポートの表については、「[Amazon Bedrock AWS リージョン での による機能サポート](features-regions.md)」を参照してください。使用するリージョンに Amazon S3、Amazon Bedrock、Lambda、DynamoDB リソースを作成するアクセス許可があることを確認してください。

このフローはデプロイ目的ではなく、Amazon Bedrock リソースを理解するためのチュートリアルとして使用することを意図しています。次の図は、 AWS マネジメントコンソールのフローの視覚的表現です。

![住宅ローン処理フロー。](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/images/cloudformation/mortgage-processing-flow.png)


このフローでは、Amazon Bedrock [エージェント](agents.md)、[プロンプト](prompt-management.md)、[Lambda 関数](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)を組み合わせて、顧客の財務情報を取得し、顧客にローンを受ける資格があるかどうかを処理する住宅ローン処理フローを作成します。Amazon Bedrock [ナレッジベース](knowledge-base.md)と[ガードレール](guardrails.md)もフローのエージェントにアタッチされて、レスポンスを強化し、保護を提供します。フローのコンポーネントの詳細については、「[住宅ローン処理フローの詳細](getting-started-mortgage-flow-details.md)」を参照してください。

**Topics**
+ [前提条件](#getting-started-mortgage-flow-prereqs)
+ [を使用して住宅ローン処理フローを作成する CloudFormation](#getting-started-mortgage-flow-create)
+ [住宅ローン処理フローをテストする](#getting-started-mortgage-flow-test)
+ [クリーンアップ: リソースの削除](#getting-started-mortgage-flow-delete)
+ [CloudFormation テンプレート](getting-started-mortgage-flow-template.md)
+ [住宅ローン処理フローの詳細](getting-started-mortgage-flow-details.md)

## 前提条件
<a name="getting-started-mortgage-flow-prereqs"></a>

このフローを作成するには、.zip ファイルをダウンロードし、手順に従って、リソースとテンプレートをセットアップするスクリプトを実行します。

**重要**  
作成した Amazon リソースは、削除するまで課金対象となります。

次に、以下の前提条件を満たします。

1. [cloudformation-mortgage-flow-setup.zip](samples/cloudformation-mortgage-flow-setup.zip) ファイルをダウンロードします。

1. ファイル を解凍します。内容の詳細については、「[CloudFormation テンプレート](getting-started-mortgage-flow-template.md)」を参照してください。

1. 以下を実行して、Amazon Bedrock 基盤モデルへのアクセスをリクエストします。

   1. Amazon Bedrock コンソールを使用するアクセス許可を持つ IAM ID AWS マネジメントコンソール を使用して にサインインします。Amazon Bedrock コンソール ([https://console.aws.amazon.com/bedrock](https://console.aws.amazon.com/bedrock)) を開きます。

   1. 右上隅にあるリージョンを確認して、**米国東部 (バージニア北部)** リージョンにいることを確かめます。そうでない場合は、リージョンを切り替えます。

   1. 左ナビゲーションペインの下部にある **[モデルアクセス]** を選択します。

   1. **[モデルアクセスを変更]** を選択します。

   1. 次のいずれかを行います。
      + すべてのモデルへのアクセスをリクエストするには、**[すべてのモデルを有効にする]** を選択します。移動先のページで、すべてのモデルの横にあるチェックボックスがオンになります。
      + 特定のモデルへのアクセスをリクエストするには、**[特定のモデルを有効にする]** を選択します。移動先のページで、次のオプションが表示されます。
        + プロバイダーからすべてのモデルへのアクセスをリクエストするには、プロバイダー名の横にあるチェックボックスをオンにします。
        + 1 つのモデルへのアクセスをリクエストするには、モデル名の横にあるチェックボックスをオンにします。

   1. 以下のチュートリアルでは、少なくとも **Titan Embeddings G1 - Text** モデルと **Claude Haiku 4.5** モデルへのアクセスをリクエストする必要があります。次いで、**[次へ]** を選択します。

   1. アクセスをリクエストするモデルと **[利用規約]** を確認します。準備ができたら、**[送信]** を選択してアクセスをリクエストします。

## を使用して住宅ローン処理フローを作成する CloudFormation
<a name="getting-started-mortgage-flow-create"></a>

住宅ローン処理フローとその関連リソースを作成するには、CloudFormation テンプレートを作成し、それを使用して Amazon Bedrock リソースを含むスタックを作成します。

**重要**  
作成した Amazon リソースは、削除するまで課金対象となります。

### リソースと CloudFormation テンプレートファイルを作成する
<a name="getting-started-mortgage-flow-file"></a>

まず、.zip ファイルのスクリプトを使用してリソースを S3 バケットにアップロードし、CloudFormation テンプレートを作成します。

1. ターミナルで、次のコマンドを実行してリソースを Amazon S3 バケットにコピーし、`main-stack.yaml` ファイルと `main-stack.json` ファイルにバケット名パラメータのデフォルト値として S3 バケット名を入力します。

   ```
   bash deploy.sh
   ```
**注記**  
スクリプトの使い方は `bash deploy.sh {{<region>}} {{<bucket-name>}}` となり、ここで、{{<region>}} と {{<bucket-name>}} はオプション引数です。これを指定しない場合、次のデフォルト値が使用されます。  
{{<region>}} – AWS 認証情報の設定で指定されたデフォルトの AWS リージョン。
{{<bucket-name>}} – バケットには {{mortgage-flow-deployment-<AccountId>-<Region>}} という名前が付けられます。ここで、{{<AccountId>}} は AWS アカウント ID であり、{{<Region>}} は指定した値または AWS 認証情報設定で指定されたデフォルトの AWS リージョンと一致します。

1. プロンプトを確認します。デプロイが完了したら、次のステップ用の完全な `main-stack.yaml` と `main-stack.json` のテンプレートが完成します。

**注記**  
スクリプトが失敗した場合、以下を実行してリソースを手動で準備できます。  
解凍した `cloudformation-mortgage-flow-setup` フォルダの*中身* (フォルダ自体は含めないでください) を、[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 内の Amazon S3 コンソールの米国東部 (バージニア北部) の S3 バケットにアップロードします。
`templates/json/main-stack-tmp.yaml` ファイルまたは `templates/json/main-stack-tmp.json` ファイルを見つけて、以下を実行します。  
`Q01pS3BucketName` パラメータの `Default` 値を {{MortgageFlowBucket}} から S3 バケット名に変更します。
`templates/json/main-stack.yaml` または `templates/json/main-stack.json` になるように、ファイル名から `-tmp` を削除します。

### CloudFormation コンソールを使用してスタックを作成する
<a name="getting-started-mortgage-flow-stack"></a>

次に、保存したテンプレートを使用して CloudFormation スタックをプロビジョニングします。

1. [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/) で CloudFormation コンソールを開きます。右上隅にあるリージョンを確認して、**米国東部 (バージニア北部)** リージョンにいることを確かめます。そうでない場合は、リージョンを切り替えます。

1. **[スタック]** ページの **[スタックの作成]** メニューで **[新しいリソースを使用 (標準)]** を選択します。

1. テンプレートを指定します。

   1. **[前提条件]** で、**[既存のテンプレートを選択]** を選択します。

   1. **[テンプレートの指定]** で、**[テンプレートファイルのアップロード]** を選択します。

   1. **[ファイルを選択]** を選択し、`main-stack.yaml` または `main-stack.json` テンプレートに移動して選択します。

   1. [**次へ**] を選択します。

1. スタックの詳細を指定します。

   1. **[スタック名]** フィールドにスタックの名前を入力します。

   1. **[パラメータ]** フィールドはデフォルト値のままにします。
**注記**  
`Q01pS3BucketName` 値は、このテンプレートのリソースをアップロードした S3 バケットの名前と一致する必要があります。残りの引数はナレッジベースの設定に関連しています。いずれかの引数を変更する場合は、設定が相互に互換性があるようにしてください。詳細については、「[ナレッジベース用に作成したベクトルストアを使用するための前提条件](knowledge-base-setup.md)」を参照してください。

   1. **[Next]** (次へ) を選択します。

1. スタックオプションを設定します。

   1. **[スタック障害オプション]** で、**[新しく作成されたリソースをすべて削除]** を選択します。
**注記**  
このオプションを選択すると、スタックの作成に失敗した場合でも削除ポリシーで保持するように指定されているリソースに対して、課金される可能性を防ぐことができます。詳細については、「*CloudFormation ユーザーガイド*」の「[`DeletionPolicy` 属性](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html)」を参照してください。

   1. **[機能]** では、チェックボックスをオンにして、CloudFormation によってアカウントに IAM リソースが作成される場合があることを承認します。

   1. [**次へ**] を選択します。

1. スタックの詳細を確認し、**Submit**. CloudFormation creates を選択します。作成には数分かかります。スタックの作成が完了したら、スタックの詳細ページの **[リソース]** タブを使用して、アカウントにプロビジョニングされたリソースを表示できます。

1. スタックの作成が完了したら、以下を実行してナレッジベースのデータソースを同期し、ナレッジベースをクエリできるようにします。

   1. Amazon Bedrock コンソールを使用するアクセス許可を持つ IAM ID AWS マネジメントコンソール を使用して にサインインします。Amazon Bedrock コンソール ([https://console.aws.amazon.com/bedrock](https://console.aws.amazon.com/bedrock)) を開きます。

   1. 左側のナビゲーションペインで **[ナレッジベース]** を選択し、次に `AWSDocsTutorial-MortgageKB` という名前で作成されたナレッジベースを選択します。

   1. **[データソース]** セクションで、`AWSDocsTutorial-MortgageKB-DS` という名前で作成されたデータソースの横にあるチェックボックスにチェックを入れます。

   1. **[同期]** を選択します。同期が完了したら、フローをテストできます。

## 住宅ローン処理フローをテストする
<a name="getting-started-mortgage-flow-test"></a>

住宅ローン処理フローが完成したら、Amazon Bedrock コンソールを使用してフローを確認、テスト、変更できます。フロー内の個々のリソースを確認、テスト、変更することもできます。

**フローをテストするには**

1. Amazon Bedrock コンソールを使用するアクセス許可を持つ IAM ID AWS マネジメントコンソール を使用して にサインインします。Amazon Bedrock コンソール ([https://console.aws.amazon.com/bedrock](https://console.aws.amazon.com/bedrock)) を開きます。

1. 左側のナビゲーションペインで **[フロー]** を選択します。右上隅にあるリージョンを確認して、**米国東部 (バージニア北部)** リージョンにいることを確かめます。そうでない場合は、リージョンを切り替えます。

1. **[フロー]** セクションで、CloudFormation テンプレートから作成されたフローを選択します。これは、`AWSDocsTutorial-MortgageFlow` になります。

1. **[フロービルダーで編集]** を選択します。フロー内の個々のノードをドラッグして、フローの視覚的表現を変更できます。

1. **[テストフロー]** ペインで、テキストフィールドに次のように入力し、**[実行]** を選択します。

   ```
   {
       "income": 80000, 
       "totalDebt": 5000, 
       "loanTerm": 30, 
       "loanAmount": 600000, 
       "creditScore": 750, 
       "mlsId": "MLS-5678"
   }
   ```

   ローン金額が、計算した支払可能な最大ローン額を上回るため、**incomeDebt** プロンプトがトリガーされ、フローは拒否レターを生成します。**[トレースを表示]** を選択して、フローで実行されたノードを表示できます。

1. 再度、**[テストフロー]** ペインで、テキストフィールドに次のように入力し、**[実行]** を選択します。

   ```
   {
       "income": 120000, 
       "totalDebt": 5000, 
       "loanTerm": 30, 
       "loanAmount": 200000, 
       "creditScore": 650, 
       "mlsId": "MLS-3456"
   }
   ```

   ローン金額が、計算した支払可能な最大ローン額を下回るため、**processApplication** プロンプトがトリガーされ、**mortgageProcessingAgent** に送信されます。このエージェントはアタッチされたナレッジベースを調べ、入力値に基づいて、顧客にローンを受ける資格があるかどうかを評価するレスポンスを生成します。

1. (オプション) JSON オブジェクトのフィールドに異なる値を使用してフローを実行してみてください。`mlsId` 値は、Multiple Listing Service にリストされているプロパティに対応しています。有効な `mlsId` 値を見つけるには、以下を実行します。

   1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/dynamodb/](https://console.aws.amazon.com/dynamodb/) で DynamoDB コンソールを開きます。

   1. 左側のナビゲーションペインで、**[テーブル]** を選択します。

   1. **AWSDocsTutorial-PropertyListing** というテーブルを選択します。

   1. **[テーブルアイテムの探索]** を選択します。

   1. フロー入力では **mls\_id** 列の任意の値を使用できます。

の**エージェント**、**ナレッジベース**、**ガードレール**、**プロンプト管理**ページに移動 AWS マネジメントコンソール して、フローで使用される各 Amazon Bedrock リソースを個別に調べることもできます。フローとコンポーネントの詳細については、「[住宅ローン処理フローの詳細](getting-started-mortgage-flow-details.md)」を参照してください。

## クリーンアップ: リソースの削除
<a name="getting-started-mortgage-flow-delete"></a>

リソースを調べ、さまざまな Amazon Bedrock リソースの機能を詳しく理解したら、スタックとそれに含まれるリソースを削除します。

**重要**  
作成した Amazon リソースは、削除するまで課金対象となります。

1. [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/) を開きます。

1. 左のナビゲーションメニューで、**[スタック]** を選択します。

1. テンプレートから作成したスタックを選択します。**[削除]** を選択し、**[削除]** を確定します。

   CloudFormation は、メインスタック、ネストされたすべてのスタック、およびスタックに含まれるすべてのリソースの削除を開始します。