

# エージェントビルダー
<a name="agent-builder-1"></a>

エージェントビルダーは、Amazon Bedrock AgentCore で本稼働対応の AI エージェントを作成、デプロイ、管理するためのプラットフォームを提供します。このセクションでは、技術的なコンポーネントと実装の詳細について説明します。

## AgentCore 統合
<a name="agentcore-integration"></a>

エージェントビルダーは、事前構築されたエージェントイメージで設定ベースのデプロイアプローチを使用して、高速で安全でスケーラブルなエージェントデプロイを可能にします。

 **構築済みのエージェントイメージ** 

エージェントコンテナイメージは、CI/CD パイプライン中に GAAB チームによって構築され、パブリック ECR リポジトリに公開されます。各イメージバージョンは、GAAB ソリューションバージョン (v4.0.0 → gaab-strands-agent:v4.0.0 など) に関連付けられています。イメージは Strands SDK に基づいており、以下が含まれます。
+ エージェントランタイム環境
+ MCP クライアント統合
+ メモリ管理機能
+ OpenTelemetry 計装

 **ECR プルスルーキャッシュ** 

このソリューションでは、ECR プルスルーキャッシュを使用して、エージェントイメージをパブリック ECR リポジトリからお客様のプライベート ECR に自動的に配布します。この AWS マネージドサービスは、以下を実行します。
+ 初回プル時にイメージをキャッシュ (2～5 分の遅延)
+ カスタムイメージコピーロジックを不要化
+ 後続デプロイ向けにローカルイメージを利用可能に
+ デプロイごとに一意のキャッシュルールを作成し、競合を回避

 **ストレージの設定** 

エージェント設定は、既存のユースケース設定とともに DynamoDB に保存されます。それぞれの設定には以下が含まれます。
+ システムプロンプトテンプレート
+ モデルプロバイダーとモデル ID
+ モデルパラメータ (温度、max\$1tokens)
+ MCP サーバーのリファレンスとエンドポイント
+ メモリ設定 (長期メモリ切り替え)
+ デプロイメタデータ

 **イメージバージョンレジストリ** 

DynamoDB テーブルは、使用可能なエージェントイメージのバージョンとそのキャッシュ URI を追跡し、バージョン管理と下位互換性を可能にします。

## エージェントの設定
<a name="agent-configuration"></a>

 **システムプロンプト** 

システムプロンプトは、エージェントの動作、パーソナリティ、機能を定義します。管理者ユーザーは、次のことができます。
+ エージェントビルダー UI を使用してデフォルトのテンプレートを編集する
+ ツールの使用方法とレスポンスのフォーマットに関する手順を含める
+ いつでもデフォルトテンプレートにリセットする

 **モデルの選択** 

エージェントビルダーは v4.0.0 で Amazon Bedrock モデルをサポートしています。
+ モデルプロバイダー: Amazon Bedrock (v4.0.0 のオプションのみ)
+ モデルの選択: Claude、Nova、およびその他の Bedrock モデル
+ モデルパラメータ: 温度、max\$1tokens、top\$1p、モデル固有の設定

 **MCP サーバー統合** 

モデルコンテキストプロトコルサーバーは、エージェントにエンタープライズツールとデータへのアクセスを提供します。
+ GET /mcp API エンドポイントによるサーバー検出
+ コードを変更しない動的設定
+ 認証とエンドポイント管理
+ エージェントへのツール機能の露出

## ストリーミングと処理
<a name="streaming-and-processing"></a>

 **リアルタイムストリーミング** 

エージェントビルダーは、リアルタイムのレスポンスストリーミングに AgentCore ブリッジから WebSocket へのサーバー送信イベント (SSE) を使用します。
+ Lambda 関数が AgentCore Runtime への SSE 接続を確立する
+ ストリームは API Gateway WebSocket にブリッジされる
+ クライアントへのトークンごとのレスポンス配信を有効にする
+ 長時間実行されるリクエストの接続を維持する

 **処理の制約** 

v4.0.0 でのエージェント処理は、Lambda 実行タイムアウトに制限されています。
+ 最大処理時間: 15 分
+ 同期処理モデル
+ 会話エージェントと中程度のワークフローに最適
+ v4.1 以降で予定されている非同期サポートの拡張

## メモリ管理
<a name="memory-management"></a>

 **短期メモリ** 

カスタム MemoryHookProvider を使用するすべてのエージェントに対してデフォルトで有効になっています。
+ Strands コールバックハンドラーを介して会話イベントをキャプチャ
+ コンテキスト分離のために actorId と sessionId で整理する
+ セッション内の会話コンテキストを維持する
+ AgentCore Memory との自動統合

 **長期メモリ** 

strands\$1tools の AgentCore Memory Tool を使用するオプション機能:
+ エージェントビルダー UI の簡単な切り替え
+ デフォルト設定のセマンティックメモリ戦略
+ 自然ツール呼び出しによるエージェント制御アクセス
+ 抽出されたインサイトをセッション間で保存する
+ conversationId を sessionId として使用する

## オブザーバビリティ
<a name="observability"></a>

 **AWS OpenTelemetry Distro (ADOT)** 

エージェントはコンテナビルド中に自動的に計測されます。
+ エージェントオペレーションの自動トレース生成
+ サービス境界間の分散トレース
+ 相関 ID を使用した構造化ログ記録
+ CloudWatch トランザクション検索との統合

 **認証フロー** 

ユーザーは、ユーザーグループに基づいて DynamoDB から IAM ポリシーを取得するカスタム Lambda オーソライザーによって検証された JWT トークンを使用して Amazon Cognito を介して認証します。

## ワークフロービルダー
<a name="workflow-builder-1"></a>

ワークフロービルダーは、エージェントをツールとして委任するパターンを使用して複数のエージェントビルダーのエージェントをオーケストレーションするスーパーバイザーエージェントを作成することで、マルチエージェントオーケストレーションを有効にします。

### ワークフローアーキテクチャ
<a name="workflow-architecture"></a>

 **主要コンポーネント**: 
+  **スーパーバイザーエージェント**: ユーザーリクエストを受け取り、専門エージェントに委任するエントリポイントエージェント
+  **専門エージェント**: スーパーバイザーのツールとして登録されたエージェントビルダーのユースケース
+  **エージェントレジストリ**: エージェント設定とメタデータを保存する DynamoDB テーブル
+  **オーケストレーションレイヤー**: Agents as Tools パターンの Strands SDK 実装

### エージェントのインスタンス化
<a name="agent-instantiation"></a>

 **ローカルエージェントの作成** 

すべての専門エージェントは、同じ AgentCore Runtime 内でローカルにインスタンス化されます。

1. DynamoDB からエージェント設定を取得

1. 各エージェントビルダーのエージェントのローカルインスタンスを作成

1. 各エージェントは独自の MCP サーバー接続を維持

1. スーパーバイザーエージェントが専門エージェントをツールとして登録

1. Strands SDK がエージェントの選択と委任を管理