Machine Learning

Amazon Bedrock

複数ベンダーの基盤モデルを、1つのAPIとIAMの下で借りて使うためのマネージドサービス。AIP-C01では全ドメインの土台になります。

  • A|GenAIの核
  • D1 FM統合・データ・コンプラ
  • D2 実装と統合
  • D3 安全性・セキュリティ・ガバナンス
  • D4 運用効率と最適化
  • D5 テスト・検証・トラブルシュート

ひとことで言うと

他社が作った基盤モデル(FM)を、自分のAWSアカウントの中から、1つのAPIとIAMの下で呼び出せるようにしたサービスです。モデルを学習させる場所ではなく、できあがったモデルを借りて使う場所です。

要するに、電力会社です。自前で発電所(GPUクラスタ)を建てて燃料(学習データ)を焚かなくても、コンセントに挿せば電気が来ます。しかも Anthropic 製・Amazon 製・OpenAI 製と、発電所の持ち主が違ってもコンセントの形は同じ(Converse API)。だから「今月は安い電気に切り替える」がコードを書き直さずにできます。
一方 SageMaker AI は発電所を自分で建てるための土地と重機です。この対比が、試験でも実務でも効いてきます。

なぜ生まれたか

時期何が起きたか
2023-04-13AWS が Amazon Bedrock を発表(限定プレビュー)。AI21 Labs / Anthropic / Stability AI などのモデルをAPIで提供する構想
2023-09-28一般提供(GA)開始。 AI21 Labs・Anthropic・Cohere・Meta・Stability AI・Amazon の6社のモデルを、まず米国2リージョンで提供
その後Knowledge Bases・Agents・Guardrails・Prompt Management などが順に追加され、「モデルのAPI」から「GenAIアプリの土台」へ
現在100を超えるモデルを扱う。Amazon Nova、Claude、DeepSeek、OpenAI など提供元も増えた

2023年当時、生成AIを業務で使おうとした企業がぶつかった壁は「モデルが賢いかどうか」ではなく、**「そのモデルに社内データを送っていいのか」**でした。外部のSaaSにプロンプトを投げると、そこにデータが出ていきます。

Bedrock はこの問題を、モデルを自社のクラウド境界の内側に持ち込むという形で解きました。呼び出しは自分のAWSアカウントのIAM・VPCエンドポイント・CloudTrail の下で起き、モデル提供元との契約はAWSがまとめて引き受ける。「賢いモデルが欲しい」ではなく「監査に耐える形で賢いモデルが欲しい」という要求から生まれたサービスです。

AIP-C01 が D3(安全性・セキュリティ・ガバナンス)に20%も配点しているのは、この出自を反映しています。

何に使うか

用途使い方関連する試験ドメイン
チャット・文章生成Converse / ConverseStream でメッセージをやり取りするD2
RAG(社内文書に基づく回答)Knowledge Bases に文書を食わせ、検索結果を添えて生成させるD1・D3
エージェントツール呼び出し(function calling)と組み合わせ、モデルに手足を持たせるD2
安全フィルタGuardrails で入出力を検閲するD3
モデル比較・評価Model Evaluations で複数モデルを同じ物差しで測るD5
埋め込み生成Titan Embeddings などでベクトル化し、ベクトルストアに入れるD1
モデルのカスタマイズfine-tuning・継続事前学習・蒸留D1

試験でどう問われるか

Bedrock 単体の知識は、ほぼ問われません。「どのサービスを選ぶか」の分岐点として出ます。長文シナリオを読んで、Bedrock で足りるのか、SageMaker まで降りる必要があるのかを判断させる形が中心です。

問われ方正解に寄る条件引っかけの選択肢
Bedrock か SageMaker AI か既存FMをAPIで使えば済む/運用工数を減らしたい → Bedrock「独自モデルを一から学習」と書いてあれば SageMaker
オンデマンドかプロビジョンドスループットかスループット保証が要る/カスタムモデルを使う → プロビジョンドスループット「コスト最小」だけを見て常にオンデマンドを選ぶ
モデル切替をどう実装するかコード変更なしで切り替えたい → AppConfig 等の外部設定+Converse APIモデルIDをコードに直書きしてデプロイし直す案
リージョン制約への対処特定モデルが自リージョンに無い → Cross-Region Inference「別リージョンにアプリ全体を移設」
障害時の継続一部モデルの障害 → フォールバック・グレースフルデグラデーション全面停止してリトライし続ける案

覚えておくと1問拾える: モデルをカスタマイズしたら、それを使うにはプロビジョンドスループットの購入が必須です(公式ドキュメント明記)。「fine-tuning したモデルをオンデマンドで安く使う」という選択肢は、値段の話ではなく仕組みとして成立しません。

実務でどう使うか

  • まず Converse API で書く。 InvokeModel はモデルごとにリクエストの形が違いますが、Converse はメッセージ対応の全モデルで同じ形になります。モデル固有パラメータは専用フィールドに逃がせる設計なので、「後でモデルを差し替える」が現実的な選択肢として残ります
  • プロビジョンドスループットのコミットは慎重に。 課金は時間単位で、コミットは「なし/1か月/6か月」から選びます。1か月・6か月はコミット期間が終わるまで削除できません。 検証段階で6か月を踏むと、使っていない容量に払い続けることになります
  • モデル呼び出しログは最初に有効化する。 後から「あの時どんなプロンプトが飛んだのか」を追う場面が必ず来ます。D4(監視)で問われる論点でもあり、実務では障害対応の生命線です
  • コストはトークンで効いてくる。 入力の長さがそのまま金額です。RAG で検索結果を無造作に全部詰めると、精度は上がらないのに請求だけ伸びます

ハマりどころ: モデルはリージョンごとに使えるものが違い、しかもアカウントでモデルアクセスの有効化をしないと呼べません。「コードは正しいのに AccessDenied」の大半はこれです。

取り違えやすいもの

迷う相手切り分けの一言
SageMaker AIBedrock=借りる(サーバーレスAPI)。SageMaker=建てる(エンドポイント・インスタンス・学習)
SageMaker JumpStartJumpStart は既製モデルを自分のエンドポイントに配置する。Bedrock はエンドポイントを持たない
Amazon Q BusinessQ は完成品のアプリ(社内検索アシスタント)。Bedrock は部品。「すぐ使えるものを」なら Q、「作り込む」なら Bedrock
Amazon TitanTitan は Bedrock で提供されるAmazon 製モデルの名前。サービスではない

想起チェック

Q1. Bedrock と SageMaker AI を分ける一番の基準は?

既存の基盤モデルをAPIで使えば要件を満たせるかです。満たせるなら Bedrock(インフラ管理なし)。モデルの学習・独自アーキテクチャ・エンドポイントの細かい制御が要るなら SageMaker AI。試験のシナリオは「運用工数を最小化したい」「MLの専門家がいない」といった言葉でこの分岐を示してきます。

Q2. カスタマイズしたモデルを使うために必須のものは?

プロビジョンドスループットの購入です。コミットは「なし/1か月/6か月」から選べ、期間が長いほど時間単価は下がりますが、1か月・6か月は途中解約できません。

Q3. `InvokeModel` ではなく `Converse` を使う理由を1文で。

メッセージ対応の全モデルで同じAPIの形になるので、コードを書き直さずにモデルを差し替えられるためです。モデル固有パラメータは専用の構造で渡せます。

Q4. 「自リージョンで使いたいモデルが提供されていない」ときの定石は?

Cross-Region Inference です。アプリ全体を別リージョンへ移すのではなく、推論だけを他リージョンの容量に逃がします。D1(1.2 レジリエンス)で問われる論点です。

出典(AWS公式)