ある大手証券会社が、Amazon Bedrock Agentsを使って市場分析と取引推奨エージェントを構築しています。エージェントは市場データを分析して具体的な取引指示を生成しますが、セキュリティポリシー上、実際の発注処理はオンプレミスのHSM(Hardware Security Module:暗号鍵を安全に管理する専用ハードウェア)が管理する取引システムのみが実行できます。このオンプレミスシステムにはLambda関数から直接アクセスできません。エージェントが決定したアクションをオンプレミスの取引アプリケーションに安全に渡し、取引アプリケーションが発注を実行してその結果をエージェントに返す設計として、最も適切なアーキテクチャはどれですか?
Amazon Bedrock Agentsの「Return of Control(ROC)」機能は、エージェントが実行したいアクションをLambdaを介さずに呼び出し元アプリケーションに委譲する仕組みです。アクショングループのexecutorTypeをRETURN_CONTROLに設定すると、エージェントはツールを自律実行する代わりに、InvokeAgent APIのレスポンス内にReturnControlPayloadとして関数名・引数を含めて返します。呼び出し元アプリケーションはこの情報を使って独自の処理(この場合はオンプレミス発注)を実行し、次のInvokeAgent呼び出しのsessionState.returnControlInvocationResultsに実行結果を含めることで、エージェントがオーケストレーションを継続できます。Lambda不要でクライアント側でアクションを完結させられるため、今回のようなオンプレミス統合に最適です。 選択肢Bは VPN構築が必要で複雑性が増し、Lambda経由の接続は社内セキュリティポリシーに反する可能性があります。 選択肢Cは 応答テキストのパースは脆弱で壊れやすく、エージェントのオーケストレーションフローが機能せず結果を適切に受け取れません。 選択肢Dは EventBridge経由の非同期連携は、エージェントが同期的に結果を待つ必要があるオーケストレーションには不適切で、エージェントが応答を受け取れません。