AWS Certified Solutions Architect - Professional 無料問題 6 / 10 ・ 分野3: コストを最適化したアーキテクチャの設計
Amazon Bedrock を Chat Completions API で使っているチームがある。複数のチームが共有するロールで呼び出しており、呼び出しのコードは変えられない。ロールとチーム別に Bedrock のコストを Cost Explorer で見たい。運用担当は少人数で、新しいリソースの管理は増やしたくない。方法はどれか。
- リクエストごとの費用が Cost Explorer にそのまま表示されるので、プロンプトごとのコストをチーム別に集計する
- ロールのタグよりセッションタグの優先度は低いため、共有ロールではセッションタグは使わず、ロールのタグだけにする
- IAM プリンシパル属性を使う。呼び出し元の ID が記録され、ロールにタグを付ければタグ別にも集計できる
- アプリケーション推論プロファイルを作り、Chat Completions API の推論対象にそのプロファイルを指定する
正解と解説を見る
正解: C
正解の理由
IAM プリンシパル属性は、Bedrock が推論リクエストごとに IAM ユーザーやロールの ID を自動で記録し、Cost Explorer と CUR 2.0 でフィルターやグループ化ができる機能である。API の呼び出しの変更は要らず、Responses や Chat Completions にも使える。ロールにタグを付ければ、チームやコストセンターの軸も足せる。共有ロールでは、セッションタグを渡して、利用者の属性を軸にもできる。
違う選択肢
「アプリケーション推論プロファイルを作り、Chat Completions API の推論対象にそのプロファイルを指定する」… アプリケーション推論プロファイルは、Chat Completions の API では推論対象に指定できず、400 エラーになる。指定する形では、呼び出しのコードも変わる。
「リクエストごとの費用が Cost Explorer にそのまま表示されるので、プロンプトごとのコストをチーム別に集計する」… 粒度は使用タイプ単位で1日ごとの集計までで、リクエスト単位のコストは出ない。プロンプトごとの詳細には、リクエストのメタデータタグ付けやログを使う。
「ロールのタグよりセッションタグの優先度は低いため、共有ロールではセッションタグは使わず、ロールのタグだけにする」… 同じキーのタグは、セッションタグの値がロールのタグの値より優先される。共有ロールで利用者別の属性を渡す用途に、セッションタグが使える。
押さえどころ
呼び出しのコードを変えずに、ロールやチーム別のコストを見るなら IAM プリンシパル属性。粒度は1日単位で、リクエスト単位ではない。
AWS Certified Solutions Architect - Professionalの演習アプリ(無料10問・全問は購入で)へ