無限ノック › AIP 練習問題一覧 › 問題
AIP生成AIアプリケーションの運用効率と最適化

eコマース企業がAmazon BedrockとAnthropic Claude 3.5 Sonnetを使用したリアルタイムチャットアプリケーションを構築しています。現在のアーキテクチャはAmazon API Gateway REST API → AWS Lambda → Amazon Bedrockで構成されており、以下の問題が発生しています。 ・複雑なクエリで29秒のAPI Gatewayタイムアウトが発生し、レスポンスが途中で切れる ・ユーザーはレスポンスが完全に生成されるまで画面が更新されず不満を持っている コード変更を最小限に抑えながらトークンレベルのストリーミングを実現する最も適切な変更はどれですか?

A
API Gateway REST APIをAPI Gateway WebSocket APIに置き換え、Lambdaが生成した各トークンをAmazon DynamoDB Streamsに書き込み、別のLambdaがクライアントへプッシュする
DynamoDB経由の非同期パターンは遅延が増加し実装が複雑です。
B
API Gateway REST APIをLambda Function URL(RESPONSE_STREAMモード)に置き換え、BedrockのInvokeModelWithResponseStream APIを使用してトークンをストリーミングする
✓ 正解
API Gateway REST APIをLambda Function URL(RESPONSE_STREAMモード)に置き換え、BedrockのInvokeModelWithResponseStream APIを使用してトークンをストリーミングする。 Lambda Function URLはRESPONSE_STREAMモードで応答ストリーミングをサポートしており、BedrockのInvokeModelWithResponseStream APIと組み合わせることでトークンレベルのストリーミングを実現できます。API Gateway REST APIはレスポンスストリーミングに非対応なため置き換えが必要ですが、Lambdaコードの変更はAPIクライアントをInvokeModelからInvokeModelWithResponseStreamに切り替えるだけで最小限です。
C
Amazon EC2インスタンス上にFlaskサーバーをデプロイしてBedrockへのリクエストをプロキシし、ネイティブのSSE(Server-Sent Events)でストリーミングを実装する
EC2はサーバー管理負荷が発生します。
D
API GatewayのタイムアウトをLambdaの最大実行時間である15分に延長し、Lambdaが完全なレスポンスを取得してから一括返却する
API Gatewayの統合タイムアウトは最大29秒に固定されており、Lambdaの最大実行時間(15分)まで延長することは不可能なため、前提が誤りであり、かつトークンストリーミングも実現できません。

解説

API Gateway REST APIをLambda Function URL(RESPONSE_STREAMモード)に置き換え、BedrockのInvokeModelWithResponseStream APIを使用してトークンをストリーミングする。 Lambda Function URLはRESPONSE_STREAMモードで応答ストリーミングをサポートしており、BedrockのInvokeModelWithResponseStream APIと組み合わせることでトークンレベルのストリーミングを実現できます。API Gateway REST APIはレスポンスストリーミングに非対応なため置き換えが必要ですが、Lambdaコードの変更はAPIクライアントをInvokeModelからInvokeModelWithResponseStreamに切り替えるだけで最小限です。 選択肢Aは、DynamoDB経由の非同期パターンは遅延が増加し実装が複雑です。 選択肢Cは、EC2はサーバー管理負荷が発生します。 選択肢Dは、API Gatewayの統合タイムアウトは最大29秒に固定されており、Lambdaの最大実行時間(15分)まで延長することは不可能なため、前提が誤りであり、かつトークンストリーミングも実現できません。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでAIPを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← AIP の問題一覧に戻る