AWS Certified Generative AI Developer - Professional 資格対策コース

トークン効率とコスト削減・コスト可視化(Bedrock / Cost Explorer / Cost Anomaly Detection)

生田 陸人
LuaGate エンジニア / 現役エンジニア
編集 LuaGate編集部

このレッスンで学ぶこと 対応試験ドメイン D4 タスク 4.1.1-4.1.2(コスト最適化・コスト可視化)。Amazon Bedrock のトークン課金の仕組みを踏まえ、トークン消費を抑える設計判断と、AWS Cost Explorer・AWS Cost Anomaly Detection を使ったコストの可視化・異常検知の使い分けを身につけます。

解説

Amazon Bedrock の生成 AI 利用料は、原則として入力トークン数と出力トークン数の従量課金です。つまりコスト削減の本質は「トークンを減らすこと」と「適正なモデルを選ぶこと」に集約されます。試験では「コストが急増した」「予算内に収めたい」というシナリオで、AWS のどの機能を使うかが問われます。

トークン課金の基本構造

Bedrock のオンデマンド課金は次の要素で決まります。

課金要素内容削減レバー
入力トークンプロンプト・コンテキスト・RAG で詰めた文書プロンプト圧縮・不要文脈の除去・チャンク削減
出力トークンモデルが生成した応答maxTokens 上限・簡潔な出力指示
モデル単価モデルごとの 1000 トークンあたり料金タスクに見合った軽量モデル選定

入力トークンは「自分が送った量」、出力トークンは「生成された量」で別単価です。RAG で大量の文書を毎回コンテキストに詰めると入力トークンが膨らむため、検索結果の件数やチャンクサイズの設計が直接コストに効きます。

トークンを減らす設計

  • 不要なシステムプロンプトや重複した文脈を削る
  • RAG では検索上位 k を絞り、リランキングで本当に必要なチャンクだけ渡す
  • 出力は maxTokens で上限を設け、冗長な生成を防ぐ
  • 大量バッチの単純タスクは軽量モデルへ寄せる(モデル選定はコストの支配要因)

コストの可視化と異常検知

トークンを削る設計とあわせて、実際にいくらかかっているかを見える化します。ここで AWS Cost Explorer と AWS Cost Anomaly Detection の役割が分かれます。

機能役割使う場面
AWS Cost Explorer過去〜現在のコストを可視化・分析・予測。サービス別・タグ別に内訳を見る「Bedrock に毎月いくら使っているか」を分析・予算計画
AWS Cost Anomaly Detection機械学習でコストの異常な急増を自動検知しアラート「ある日突然 Bedrock 料金が跳ねた」を早期に気づく
AWS Budgets予算閾値を設定し超過時に通知「月 10 万円を超えたら知らせて」

Cost Explorer は分析・可視化のダッシュボード、Cost Anomaly Detection は異常の自動検知、AWS Budgets は閾値ベースの予算アラートという棲み分けです。コスト配分タグ(cost allocation tags)を Bedrock を呼ぶリソースに付けておくと、アプリ別・チーム別の内訳を Cost Explorer で追えます。

コード例(出力トークンを制御する)

maxTokens と簡潔指示で出力トークンを抑えます。

Python

import boto3 client = boto3.client("bedrock-runtime", region_name="us-east-1") resp = client.converse( modelId="amazon.nova-lite-v1:0", messages=[{"role": "user", "content": [{"text": "結論だけ一文で答えて"}]}], inferenceConfig={"maxTokens": 128, "temperature": 0.0}, ) usage = resp["usage"] print(usage["inputTokens"], usage["outputTokens"]) # トークン消費を計測

usage フィールドで入出力トークンを実測でき、これを CloudWatch メトリクスやログに出してコスト傾向を追えます。

試験で問われるポイント

  • Cost Explorer と Cost Anomaly Detection の使い分けがひっかけになる。「過去の傾向を分析・予測したい」なら Cost Explorer、「想定外の急増を自動で検知したい」なら Cost Anomaly Detection。「閾値超過で通知」は AWS Budgets
  • コスト削減の本質はトークン削減とモデル選定。「常に最高性能モデルを使う」「コンテキストを最大限詰める」はコスト悪化のひっかけ選択肢
  • 入力トークンと出力トークンは別単価。RAG で文脈を盛りすぎると入力トークンが支配的になる
  • アプリ別・チーム別の按分にはコスト配分タグを付けて Cost Explorer で集計する。これは Bedrock 固有機能ではなく AWS 課金共通の仕組み

サービスの使い分け早見表

やりたいこと使うもの混同しやすいもの
コストを可視化・分析・予測AWS Cost ExplorerCost Anomaly Detection(異常検知専用)
コスト急増を自動検知してアラートAWS Cost Anomaly DetectionCost Explorer(分析ダッシュボード)
予算閾値を超えたら通知AWS BudgetsCost Anomaly Detection(閾値ではなく異常パターン検知)
トークン消費量を実測Bedrock の usage / CloudWatch メトリクスCost Explorer(金額単位の事後集計)

まとめ

Bedrock のコスト最適化は、入出力トークンを減らす設計タスクに見合ったモデル選定が土台です。そのうえで可視化は AWS Cost Explorer、異常な急増の自動検知は AWS Cost Anomaly Detection、予算閾値の通知は AWS Budgets と役割を分けて使います。試験ではこの三者の使い分けと「トークン削減こそコスト削減」という原則が繰り返し問われます。

次のステップ

次のクイズレッスンで、トークン削減の設計判断とコスト可視化サービスの使い分けを問うシナリオ問題に挑戦しましょう。

関連レッスン

  • プロンプトキャッシュ・セマンティックキャッシュ(pro-cost-cache)
  • レイテンシ・スループット最適化(pro-perf-latency)
  • オブザーバビリティとモニタリング(pro-observability)