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

ある SaaS 企業が Amazon Bedrock の Claude モデルでドキュメント分類パイプラインを運用しています。1日あたり約80万件のドキュメントをバッチで処理しますが、結果は翌朝までに揃えばよく、リアルタイム応答は不要です。現在はオンデマンドの InvokeModel をループ実行しており、スループット上限(リクエスト/分のクォータ)に頻繁に達してスロットリングが発生し、処理が深夜帯を超過しています。運用負荷とコストを抑えつつ大量処理を完了させる最適な方法はどれですか。

A
Bedrock のバッチ推論(batch inference)ジョブを使用し、入力レコードを S3 に JSONL で配置して非同期に一括処理する
✓ 正解
Bedrock バッチ推論は S3 の JSONL を非同期で一括処理するマネージドジョブで、オンデマンドのリクエスト/分クォータとは別枠で大量レコードをさばけ、割引価格も適用されます。翌朝までに揃えばよいという非同期要件に合致し、ループやスロットリング制御も不要になるため最適です。
B
プロビジョンドスループットを購入してモデルユニットを確保し、オンデマンドの InvokeModel ループをそのまま継続する
プロビジョンドスループットはモデルユニットを時間単位で確保するため安定処理は可能ですが、夜間のバッチ処理のためだけに確保すると時間課金が高額になり、結果を急がない本要件ではコスト最適ではありません。
C
Step Functions の分散マップで InvokeModel を最大同時実行数まで並列化し、指数バックオフでリトライする
Step Functions 分散マップで並列化しても、各 InvokeModel 呼び出しはオンデマンドのリクエスト/分クォータに律速されるため、スロットリングの根本原因は解消されません。リトライ実装の運用負荷も残り最適とは言えません。
D
Application Auto Scaling を Bedrock の推論エンドポイントに設定し、リクエスト量に応じてスループットを自動拡張する
Application Auto Scaling は SageMaker リアルタイムエンドポイントなどのスケーリングに使う仕組みで、Bedrock のオンデマンドモデル呼び出しのスループットを自動拡張する機能ではないため、本シナリオの解決策になりません。

解説

Amazon Bedrock のバッチ推論は、S3 上の JSONL 入力に対してモデル呼び出しを非同期で一括処理するマネージドジョブで、レイテンシー要件のない大量処理に最適化されています。オンデマンドのリクエスト/分クォータとは別枠で大量レコードを処理でき、出力も S3 に書き出されるため、ループ実装やスロットリング制御が不要になります。さらにバッチ推論はオンデマンド比で割引価格が適用され、結果が翌朝までに揃えばよいという要件に合致します。 選択肢Bのプロビジョンドスループットは安定したスループットを確保できますが、モデルユニットの時間課金が高額で、夜間のバッチ用途には過剰投資となりコスト最適ではありません。 選択肢Cの Step Functions 分散マップでの並列化は、結局オンデマンドのリクエスト/分クォータに律速されるため根本的なスロットリングを解消できず、リトライ制御の運用負荷も残ります。 選択肢Dの Application Auto Scaling は SageMaker のリアルタイムエンドポイント等に適用する仕組みで、Bedrock のオンデマンドモデル呼び出しのスループットを自動拡張するものではありません。

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

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

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