AWS

Amazon Bedrockの使い方|APIキー発行からPython呼び出し・東京で使えるモデルと料金【2026年10月】

Amazon Bedrockの使い方|APIキー発行からPython呼び出し・東京で使えるモデルと料金【2026年10月】

Amazon Bedrockは、Anthropic・Amazon・OpenAI・Metaなどの基盤モデルを、AWSの認証のまま1つのエンドポイントから呼び出せるサービスです。2026年10月時点の始め方は、以前の解説記事とかなり違います。モデルごとの利用申請画面は廃止され、初回呼び出しで自動的に有効化されます。認証もIAMのアクセスキーではなく、コンソールで発行する「Bedrock APIキー」から始めるのがAWS公式の手順です。この記事では、アカウント準備からPythonで最初の応答を得るまでと、東京リージョンで使えるモデルID・料金・つまずきやすいエラーを、AWSの公式ドキュメントと価格データで確かめた内容に絞って説明します。

まとめ:Amazon Bedrockを使い始める手順の要点

  • 始め方:AWSアカウント作成 → IAM権限の付与 → コンソールで短期APIキーを発行 → pip install boto3(1.39.0以上)→ Converse APIで呼び出し。モデルの利用申請は不要です。
  • Claudeだけ追加手順がある:bedrock-runtime経由で使う場合、アカウントにつき1回、用途を書くフォーム(First Time Use)の提出が必要です。未提出だとFTUFormNotFilledで失敗します。
  • 東京で国内処理に留めるならjp.のID:Claude Haiku 5.5・Opus 5.5・Haiku 4.5、Nova 2 Liteはjp.プロファイルで東京・大阪内に処理が留まります。Claude Sonnet 5.5は東京からglobal.でしか呼べません。
  • 料金:Bedrock自体に無料枠はなく、入出力トークンの従量課金です。東京からClaude Haiku 5.5をjp.で呼ぶと100万トークンあたり入力0.11ドル・出力0.55ドル(global.なら0.10ドル・0.50ドル)です。
  • 2026年に変わった点:画像生成のNova Canvasは2026年9月30日で提供終了、Claude 5世代はtemperatureなどのサンプリング引数を外します。古い記事のコードはそのままでは動きません。

Amazon Bedrockとは:100以上の基盤モデルをAWSの認証で呼ぶサービス

Bedrockは、モデルの実体をAWS側がホストし、利用者はAPIを呼ぶだけで生成AIを組み込める従量課金のサービスです。AWS公式のクイックスタートは対応モデルを「100以上」としており、2026年10月時点のモデル一覧にはClaude 5.x、Amazon Nova 2、OpenAIのGPT-6とgpt-oss、Gemma 4、Llama 4、Mistral、Qwen3、DeepSeekなどが並びます。GPUの調達や推論サーバーの運用はいりません。

推論APIのほかに、社内文書を検索して答えさせるKnowledge Bases、出力を制限するGuardrails、ワークフローを組むFlowsが同じコンソールにあります。RAGの組み方はAmazon BedrockでRAGを実装する手順|Managed Knowledge Baseのboto3実装と東京リージョンの制約で扱っています。エージェントは、旧来のBedrock Agents(Agents Classic)が2026年7月30日から新規顧客の受け付けを止めたため、これまでAgents Classicを使っていないアカウントではBedrock AgentCoreハーネスが前提になります。

Amazon SageMaker AIとの主な違いは、学習環境や推論基盤をどこまで自分で制御するかです。Bedrockにも対応モデルのファインチューニングやカスタムモデルの取り込み機能がありますが、インスタンスの種類や推論サーバーの構成はAWS任せです。それらを自分で選んで独自モデルを運用したいならSageMaker AIを使います。SageMaker側の手順はAmazon SageMaker JumpStartの使い方|SDK v3移行とデプロイ費用を参照してください。

Amazon Bedrockを使い始める準備:アカウント・IAM権限・モデルアクセス

AWSアカウントとIAM権限の付与

AWSアカウントに有効な支払い方法を登録し、操作するIAMユーザーかロールにBedrockの権限を付けます。試すだけならAWS管理ポリシーのAmazonBedrockLimitedAccessで足ります。AWS Marketplaceの商品IDを持つモデル(Claudeなど)をそのアカウントで最初に呼ぶ人には、AWS Marketplaceのaws-marketplace:Subscribe・Unsubscribe・ViewSubscriptionsが要ります。一度有効になれば、同じアカウントのほかの利用者はMarketplace権限なしで呼び出せます。

モデルアクセスの自動有効化とClaudeの初回フォーム

以前の記事にある「Model access画面で使いたいモデルを申請する」手順は、現在は不要です。AWSのモデルアクセスのページによると、Marketplace権限があれば、モデルカタログからプレイグラウンドで開くか、APIで呼び出した時点で裏側のサブスクリプションが始まります。完了までは最大15分かかり、その間の呼び出しは一時的に成功することがあります。前提が欠けていると、あとからの呼び出しがAccessDeniedExceptionに変わります。

この記事で使うbedrock-runtime経由のAnthropicモデルは、呼び出す前に用途を記入するFirst Time Useフォームの提出が必要です。bedrock-mantle経由では、このフォームは不要です。提出はアカウントごとに1回で、組織の管理アカウントで出していれば配下のアカウントは不要です。フォームでは用途の説明とWebサイトのURLを求められます。個人開発者や学生は、GitHubのプロフィールやポートフォリオのURLで構いません。Amazon Novaは追加の手続きなしで使えます。

注意点がひとつあります。同じページには、Marketplaceの購読やフォーム提出を済ませても付与されない「アカウント単位の追加アクセス」が必要なモデルがあると書かれています。手順を満たし、そのリージョンで提供されていると確認してもAccessDeniedExceptionが続くなら、AWSの営業窓口への問い合わせが案内されています。

プレイグラウンドでのモデル比較

コンソールの「モデルカタログ」からモデルを選んでプレイグラウンドで開くと、コードを書かずに応答・速度・消費トークンを確認できます。業務の実データを数件流して、精度に対して十分安いモデルを先に決めておくと、API実装後の作り直しが減ります。ClaudeとNova、OpenAIのモデルをどの基準で選び分けるかはAWS Bedrockのモデル選定|Claude・Nova・OpenAI・Gemmaの選び分けと切替判断で整理しています。

Bedrock APIキーの発行:短期キーと長期キーの違い

プログラムから呼ぶ認証は、IAMの認証情報(SigV4署名)とBedrock APIキー(Bearerトークン)の2通りです。2026年10月の公式クイックスタートは、まずコンソールで短期APIキーを発行する手順から始まります。APIキーのページに書かれた2種類の違いは次のとおりです。

項目 短期APIキー 長期APIキー
有効期間 最大12時間(コンソールのセッションが先に切れればそこまで) 発行時に決めた期限まで
権限 発行したIAMの権限を引き継ぐ IAMユーザーが作られ、そこにポリシーが付く
公式の推奨用途 本番でも可 検証(exploration)のみ
発行場所 コンソールの「API keys」か token generator コンソールの「API keys」かIAM API

短期キー・長期キーともに、発行したリージョンでしか使えません。別リージョンのエンドポイントに送ると、モデルIDが正しくてもCredential should be scoped to a valid regionで失敗します。本番の常駐プログラムでは、APIキーではなくIAMロールの一時認証情報を使うよう公式は勧めています。なおAPIキーが使えるAPIの一覧によると、Agents ClassicとBedrock Data AutomationのAPIはAPIキーに対応していません。

まずコンソールのリージョンを東京(ap-northeast-1)にし、「API keys」→「Short-term API keys」→「Generate short-term API keys」の順に選びます。発行したキーを環境変数AWS_BEARER_TOKEN_BEDROCKに入れます。boto3がこの変数を読むのはバージョン1.39.0以降で、それより古いと変数を無視してUnable to locate credentialsで落ちます。

pip install --upgrade boto3
export AWS_BEARER_TOKEN_BEDROCK="(コンソールで発行したAPIキー)"

PythonでBedrockを呼ぶ:Converse APIの最小コード

boto3ではbedrock-runtimeクライアントのconverseを使います。Converse APIはモデルが違っても同じメッセージ形式で送れるので、モデルIDを差し替えるだけで切り替えられます。次の例は東京リージョンから、国内(東京・大阪)だけで処理されるjp.プロファイル経由でClaude Haiku 5.5を呼びます。

import boto3
from botocore.exceptions import ClientError

client = boto3.client("bedrock-runtime", region_name="ap-northeast-1")

try:
    response = client.converse(
        modelId="jp.anthropic.claude-haiku-5-5",
        messages=[{"role": "user", "content": [{"text": "Amazon Bedrockを一文で説明して"}]}],
        inferenceConfig={"maxTokens": 512},
    )
    answer = "".join(block["text"] for block in response["output"]["message"]["content"] if "text" in block)
    print(answer or f"テキスト出力なし: {response.get('stopReason')}")
    print(response["usage"])  # inputTokens・outputTokens・totalTokens
except ClientError as e:
    print(e.response["Error"]["Code"], e.response["Error"]["Message"])

temperatureを入れていないのは意図的です。AnthropicのClaude Haiku 5.5移行ガイドは、temperature・top_p・top_kを外し、出力の調整はプロンプトで行うよう指示しています。2025年以前の記事にある「temperature 0.5、topP 0.9」付きのコードをClaude 5世代に流用しないでください。指定できるパラメータはモデルごとに違うため、ほかのモデルでもモデルカードで確かめてから付けます。

応答を少しずつ表示したいチャット画面ではconverse_streamを使います。Claude Haiku 5.5は推論(adaptive thinking)が既定で有効で、推論に使ったトークンもmaxTokensに含まれます。応答の先頭が推論ブロックになることもあるため、上のコードはtextを持つブロックだけを取り出しています。回答が途中で切れてstopReasonがmax_tokensになる場合は、maxTokensを増やしてください。

stream = client.converse_stream(
    modelId="jp.anthropic.claude-haiku-5-5",
    messages=[{"role": "user", "content": [{"text": "Bedrockの料金の決まり方を3行で"}]}],
    inferenceConfig={"maxTokens": 512},
)
for event in stream["stream"]:
    if "contentBlockDelta" in event:
        delta = event["contentBlockDelta"]["delta"]
        if "text" in delta:
            print(delta["text"], end="", flush=True)

ツール呼び出し・構造化出力・ストリーミング途中のエラー処理など、Converse APIを本番で使うための書き方はAmazon Bedrock Converse APIの使い方|boto3実装・ConverseStream・Tool Use・IAM権限で詳しく扱っています。

Bedrockで使える5つのAPIの選び方

2026年10月時点で、推奨エンドポイントのbedrock-runtimeは5種類のAPIを受け付けます。既存のコードがどのSDKで書かれているかで選ぶのが早道です。

API 使うSDK 向いている場面
Converse boto3など各AWS SDK 新規実装・モデルの切り替え
InvokeModel boto3など各AWS SDK 画像生成などモデル固有の形式
Messages Anthropic SDK Claude APIからの移行
Chat Completions OpenAI SDK OpenAI向けコードの流用
Responses OpenAI SDK 会話状態をサーバー側に保存

OpenAI SDKのコードは、ベースURLとAPIキーを差し替えるだけでBedrockに向けられます。実行前にpip install --upgrade openaiでOpenAI SDKをインストールしてください。次の例は、東京リージョン内で処理が完結するgpt-oss-120bをChat Completionsで呼びます。bedrock-runtimeはOpenAI互換のGET /modelsを実装していないため、client.models.list()は使えません。

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://bedrock-runtime.ap-northeast-1.amazonaws.com/openai/v1",
    api_key=os.environ["AWS_BEARER_TOKEN_BEDROCK"],
)
response = client.chat.completions.create(
    model="openai.gpt-oss-120b-1:0",
    messages=[{"role": "user", "content": "Bedrockの特徴を教えて"}],
)
print(response.choices[0].message.content)

もう1つのエンドポイントbedrock-mantleは、Web検索などのサーバー側ツール、非同期の長時間推論、Projects・Workspacesが必要なときだけ使います。エンドポイント比較の表では、bedrock-mantleはConverseとInvokeModelに対応せず、jp.やglobal.のクロスリージョン推論も使えません。迷ったらbedrock-runtimeを選んでください。Claudeに絞ったMessages APIとInvokeModelの書き方はBedrock Claudeの使い方:Messages API・InvokeModel・Claude Codeの設定にまとめています。

東京リージョンで使えるモデルとモデルIDの書き方

Bedrockは東京(ap-northeast-1)で使えますが、新しいモデルほど「東京単体」では動かず、推論プロファイルという接頭辞付きのIDで呼ぶ形になります。接頭辞で処理される場所が変わります。

  • jp.:東京と大阪の間だけでルーティングする。データの処理を国内に留めたいときの選択肢。
  • global.:世界中の商用リージョンへ振り分ける。jp.などの地域指定は、global.の単価に1割上乗せされる。
  • 接頭辞なし(In-Region):東京リージョン内だけで処理する。対応するモデルは限られる。

各モデルのAWSモデルカードで確認した、東京から呼ぶときのIDは次のとおりです(2026年10月27日時点)。

モデル 東京から呼ぶID 処理の場所
Claude Haiku 5.5 jp.anthropic.claude-haiku-5-5 東京・大阪
Claude Opus 5.5 jp.anthropic.claude-opus-5-5 東京・大阪
Claude Sonnet 5.5 global.anthropic.claude-sonnet-5-5 世界(jp.なし)
Claude Haiku 4.5 jp.anthropic.claude-haiku-4-5-20251001-v1:0 東京・大阪
Amazon Nova 2 Lite jp.amazon.nova-2-lite-v1:0 東京・大阪
gpt-oss-120b openai.gpt-oss-120b-1:0 東京のみ

社内規程で「生成AIへの入力は国内で処理すること」と決まっているなら、Sonnet 5.5は候補から外れます。精度を優先するならOpus 5.5、量をさばくならHaiku 5.5をjp.で使う組み合わせになります。Sonnet系が必要なら、1世代前のSonnet 4.6(jp.anthropic.claude-sonnet-4-6)とSonnet 4.5にはjp.プロファイルがあります。Claude Haiku 4.5のように、接頭辞なしのIDではオンデマンド呼び出しに対応しないモデルもあるため、IDはモデルカードからそのまま写すのが確実です。ClaudeをBedrockで使うかClaude Platform on AWSで使うかの比較はAWSでClaudeを使う方法|BedrockとClaude Platform on AWSの違いと選び方にあります。

Amazon Bedrockの料金と東京リージョンの単価

Bedrock自体に無料枠はなく、モデルごとの入出力トークン量で課金されます。AWS Price List APIの東京リージョンの価格ファイル(Claudeは「AmazonBedrockFoundationModels」、Novaは「AmazonBedrock」、2026年10月27日取得)から、100万トークンあたりの標準単価を示します。表の「jp.」列は東京リージョンの標準(Standard)単価、「global.」列はGlobal区分の単価です。Claude Haiku 5.5の掲載単価は、1リクエストの入力が100,000トークン以下の場合です。100,000トークンを超えると、入力・出力・キャッシュに別の長文料金が適用されます。最新の金額はAWS公式の料金ページで確認してください。

モデル 入力(jp.) 出力(jp.) 入力(global.) 出力(global.)
Claude Haiku 5.5 $0.11 $0.55 $0.10 $0.50
Claude Opus 5.5 $4.40 $22.00 $4.00 $20.00
Amazon Nova 2 Lite $0.396 $3.311 $0.36 $3.01

同じモデルでも、国内に処理を留めるjp.はglobal.の単価に1割上乗せされます。AWSのGlobalクロスリージョン推論の説明も、地域指定より入出力とも約10%低いとしています。データの所在要件がなければglobal.、要件があれば1割の上乗せを見込んでjp.、という判断です。

費用を抑える手段は、用途に対して過剰なモデルを避けること、即時応答の要らない一括処理をバッチ推論に回すこと、毎回同じ長い前置きを送るならプロンプトキャッシュを使うことです。この順に適用条件を確認し、実際の削減額は利用量とキャッシュの再利用率から比較してください。キャッシュの設定はAmazon Bedrockのプロンプトキャッシュとは、課金方式ごとの月額の試算はAWS Bedrockの料金はいくら?課金方式4種と月額試算・費用を下げる順番で扱っています。

Amazon Bedrockの画像生成:Nova Canvas終了後の選択肢

多くの解説記事で画像生成の例に使われてきたAmazon Nova Canvasは、2026年9月30日に提供を終えました。Nova Canvasのモデルカードによると、呼び出すとResourceNotFoundExceptionが返ります。2026年10月時点でBedrockから使えるテキストから画像の生成モデルは、Stability AIのStable Image Ultra・Stable Image Core・Stable Diffusion 3.5 Largeです。

Stable Image Coreのモデルカードでは、提供リージョンはオレゴン(us-west-2)だけで、東京からは呼べません。このモデルはConverseではなくinvoke_modelにモデル固有のJSONを渡します。実行前にオレゴン(us-west-2)でAPIキーを発行し、環境変数AWS_BEARER_TOKEN_BEDROCKをそのキーで更新してください。

import base64, json
import boto3

client = boto3.client("bedrock-runtime", region_name="us-west-2")
response = client.invoke_model(
    modelId="stability.stable-image-core-v1:1",
    body=json.dumps({"prompt": "A watercolor illustration of a robot reading a book"}),
)
body = json.loads(response["body"].read())
with open("image.png", "wb") as f:
    f.write(base64.b64decode(body["images"][0]))

Bedrockの初回呼び出しでつまずくエラーと直し方

最初の呼び出しで止まる原因は、性能ではなく権限・ID・リージョンの組み合わせです。AWSのエラーコード一覧とAPIキー・モデルカードのページから、入門時に出やすいものをまとめました。

エラー 主な原因 直し方
Unable to locate credentials boto3が1.39.0未満 boto3を更新
FTUFormNotFilled(404) Claudeの初回フォーム未提出 コンソールでフォームを提出
AccessDeniedException(403) IAM・Marketplace権限の不足 権限と支払い方法を確認
Credential should be scoped… APIキーを別リージョンで使用 キーを発行したリージョンで呼ぶ
on-demand throughput isn’t supported 接頭辞なしのIDで呼んだ jp.かglobal.のIDに変える
ResourceNotFoundException IDの誤りか提供終了モデル モデルカードでIDと状態を確認
ThrottlingException(429) アカウントのクォータ超過 間隔を空けて再試行

ネットの記事からモデルIDをコピーした場合は、提供終了や推論プロファイルの接頭辞違いを確認してください。モデルの状態は数か月単位で変わります。Claude 4.5以前のモデルの一部はすでにLegacy(新規利用の終了予告)に入っているので、コードに書くIDは公式のモデルカードで確認してから使ってください。

社内でBedrockを使った問い合わせ対応や文書検索を形にしたい場合は、モデル選定と権限設計から一緒に進める生成AI導入支援も用意しています。

よくある質問

Amazon Bedrockは無料で使えますか?

Bedrockには無料枠がなく、使ったトークン量の従量課金です。ただし単価は小さく、Claude Haiku 5.5をjp.で呼ぶ場合、入力1,000トークン・出力500トークンのやり取りを100回しても約0.04ドルです。新規に作ったAWSアカウントは、AWSの無料プランで最大200ドルのクレジット(最長6か月)を受け取れ、追加クレジットを得る課題の1つに「Bedrockのプレイグラウンドでモデルにプロンプトを送る」があります。この課題で発生した利用料はクレジットから差し引かれます。

Amazon Bedrockは個人でも使えますか?

使えます。個人のAWSアカウントでも手順は同じで、Claudeの初回フォームに会社のWebサイトが無い場合は、GitHubのプロフィールやポートフォリオのURLを書けば提出できるとAWSの手順書に明記されています。料金も個人・法人で変わりません。

Bedrockの読み方と名前の意味は?

「ベッドロック」と読みます。英語のbedrockは「岩盤」「基盤」を意味し、サービス名は、基盤モデルをアプリケーションの土台として使うイメージで理解すると分かりやすくなります。

Amazon RedshiftのデータをBedrockで分析できますか?

できます。Amazon Redshift MLとAmazon Bedrockの統合では、CREATE EXTERNAL MODELにMODEL_TYPE BEDROCKとモデルIDを指定すると推論用の関数が作られ、SQLの中でテーブルの文章を要約・分類できます。Redshift ML側の追加料金はかかりませんが、行数分のBedrockのトークン料金が積み上がる点に注意してください。

どのモデルから試せばよいですか?

最初の1本はClaude Haiku 5.5を勧めます。東京でjp.が使え、表のとおり単価が最も低い部類だからです。同じ評価用データで正答率と1件あたりの費用を測り、Haiku 5.5で精度が足りない処理はOpus 5.5と比較してください。Nova 2 Liteとの比較でも、単価だけでなく入出力トークン数と再試行回数を含めて費用を判断します。Haiku 5.5の料金の条件と旧版からの移行はClaude Haiku 5.5とは?料金9割減の条件と10万トークンの境目、Novaの比較はAmazon Novaの性能と料金:Nova 2 Lite・Pro・2.5 Sonicのベンチマーク比較と選び方で解説しています。

関連記事

お気に入りに入れた記事の一覧

この記事は以下の記事からリンクされています

ほか 14 件の記事からもリンクされています。

資料請求

今日のトレンド記事 直近 24 時間で、いつもより多く読まれている記事

  1. 2026.10.27 テックブログ Brotli 脆弱性:CVE-2026-111497の影響確認とNode.js・Python・.NETの更新手順
  2. 2026.10.28 テックブログ リンツ不正アクセス:314万件の対象確認とパスワード強制リセット後の対処
  3. 2026.10.27 テックブログ Joshin(ジョーシン)不正アクセス:最大600万件の対象とサブスク初期パスワードの対処
  4. 2026.10.23 テックブログ Renta!はいつ再開?不正アクセスでメールアドレス等が流出したおそれ・再開時のパスワード再設定と運営側の対応
  5. 2026.10.28 テックブログ 楽天トラベル不正アクセス:最大約260万件の対象確認とカード下4桁の詐欺対策

RELATED POSTS 関連記事

目次