【正解】C、D
【0からの解説】
この問題は「S3 に音声ファイルが置かれたら、自動で文字起こし→AI 分析する」イベント駆動アーキテクチャの設計問題です。登場するサービスを整理しましょう。
・Amazon Transcribe:音声をテキストに変換(文字起こし)するマネージドサービス。
・Amazon Bedrock:Claude などの基盤モデル(FM)を API で呼び出せるマネージドサービス。要約や感情分析が得意。
・AWS Step Functions:複数の処理ステップ(文字起こし→完了確認→AI 分析)を順序立てて実行するワークフローサービス。
・Amazon EventBridge:「S3 にファイルが作成された」などのイベントを受け取り、ルールに従って別サービスを起動するイベントバス。
処理の流れは「(D) S3 → EventBridge → Step Functions 起動」→「(C) Transcribe で文字起こし → Lambda がプロンプト(FM への指示文)を組み立てて Bedrock を呼び出し、構造化された要約・感情分析を生成」となります。
【C が正解の理由】
FM から「構造化された形式」の出力を確実に得るには、文字起こし結果をそのまま渡すのではなく、「以下の通話記録を要約し、感情を JSON 形式で出力してください」といったプロンプトを組み立てる工程が不可欠です。Lambda 関数でプロンプトを作成してから FM を呼び出す C は、この要件を最も直接的に満たします。
【D が正解の理由】
S3 のイベントを EventBridge に送信し、ルールで Step Functions をターゲットに指定するのは、「新しいファイルが作成されたらすぐに処理を開始する」ための AWS 標準パターンです。EventBridge は Step Functions ステートマシンをネイティブにターゲット指定できます。
【誤りの選択肢】
A:C と似ていますが「テキストを処理する」とあるだけで、構造化出力に必要なプロンプトの作成が含まれていません。要約と感情分析を所定の構造で得るにはプロンプト設計が必要なため、C のほうが要件に合致します。
B:Step Functions には Bedrock の最適化統合(InvokeModel)がありますが、ステート間で受け渡せるペイロードサイズには上限(256 KB)があり、20 MB の録音から生成される長大な文字起こしテキストを直接渡すと失敗する可能性があります。また、プロンプトを組み立てる工程がなく、構造化出力の品質を担保できません。
E:S3 のイベント通知(S3 Event Notifications)が直接送信できる宛先は SNS・SQS・Lambda のみで、Step Functions へ直接通知を送ることはできません。Step Functions を起動するには EventBridge を経由する必要があります。
【参考】
Amazon EventBridge を使用した Amazon S3 イベント通知AWS Step Functions とはAmazon Transcribe とは