本文にスキップ
AI News HubLIVE
サイト内リライト4 分で読了

スケールするトークノミクス:Jamf が Amazon Bedrock 向けにリアルタイム支出執行を構築した方法

記事の要約

生成 AI の採用が拡大するにつれ、コストガバナンスが最大の課題となっています。Jamf は、IAM カスタマー管理ポリシー、Amazon Athena コストビュー、サーバーレスの AWS Lambda 執行ループを使用して、アクティブなセッションを中断することなく、ほぼリアルタイムで段階的な支出制限を強制する本番グレードのシステムを構築しました。この記事では、アーキテクチャとデプロイ手順を詳しく説明します。

ソースAWS Machine Learning Blog著者: Arun Chandapillai
スケールするトークノミクス:Jamf が Amazon Bedrock 向けにリアルタイム支出執行を構築した方法
誤りを報告

訂正窓口はまだ利用できません。記事情報をコピーして保存できます。

訂正案内
本文へ

生成 AI の支出は、これまでのどのコスト項目とも異なる動作をします。従来のコンピューティングはプロビジョニングされた容量に応じてスケールします。AI の支出は行動に応じてスケールします。1 人のエンジニアがプレミアムモデルでエージェント型コーディングループを実行すると、数時間でチームが 1 週間で消費するよりも多くのトークンを消費する可能性があります。これがトークノミクスの問題です。使用量は請求書が届くまで見えず、コスト管理と投資収益率(ROI)の証明が困難になります。AI アクセスを拡大する前に、リーダーシップは 3 つの答えを求めます。1 人あたりの支出はいくらか?エンジニアの速度を落とさずに上限を設定できるか?生産性の向上はコストに見合うか?

Jamf は、76,000 以上の組織に Apple デバイスの管理と保護を提供しており、この課題に直接直面しました。AI 支援開発を加速するために、Jamf はエンジニアリング組織に Amazon Bedrock への広範なアクセスを提供しました。生産性は向上しましたが、AI FinOps の必要性も高まりました。ユーザーごとの可視性とコスト説明責任が必要になったのです。

Jamf は、個人レベルでこの問題を解決する本番システムを構築しました。この記事では、AWS IAM カスタマー管理ポリシー(CMP)、Amazon Athena ベースのコストビュー、サーバーレスの AWS Lambda 執行ループを使用してこのアーキテクチャを構築する方法を学びます。最後には、アクティブなセッションを中断することなく、ほぼリアルタイムで段階的な支出制限を強制する、実稼働でテスト済みのパターンを手に入れることができます。これが AI コストガバナンス機能です。

ソリューションの概要

Jamf のソリューションは、各エンジニアの毎日の Amazon Bedrock 支出を追跡し、予算に近づくにつれて段階的なモデル制限を適用します。たとえば、毎日の予算の 80% で Anthropic Claude Opus へのアクセスを拒否し、100% で Anthropic Claude Sonnet へのアクセスを拒否します。Anthropic Claude Haiku はブロックしないため、エンジニアは低コストのモデルを引き続き利用して作業を続けることができます。制限は数分で有効になり、再認証は不要で、毎日のリセット時に自動的に元に戻ります。正当により多くの上限を必要とするエンジニアには、文書化された例外プロセスにより、時間制限付きのより高い制限が付与されます。

アーキテクチャ

このアーキテクチャは、支出の測定、誰を制限して通知するかの決定、制限の執行という 3 つの懸念に対処します。それぞれが専用のサーバーレスコンポーネントによって処理されます。

エンドツーエンドのフローは次のとおりです。

測定

呼び出しとロギング: エンジニアが AWS IAM Identity Center のシングルサインオン(SSO)セッションを通じて Amazon Bedrock を呼び出すと、Amazon Bedrock は呼び出し(モデル ID、入力/出力トークン数、ユーザー ID を含む)を設定した Amazon S3 バケットにログ記録します。

決定と通知

コスト測定: Amazon Athena ビュー(bedrock_cost_today)がこれらのログを読み取り、トークン数に公開されたモデルレートを掛けて、ユーザーごとの毎日の支出を計算します。Athena は生のログをその場でクエリするため、別のデータパイプラインは不要です。

執行決定: AWS Lambda 執行ハンドラーが Amazon EventBridge スケジュールによってトリガーされ、15 分ごとに実行されます。Athena ビューから現在の支出を読み取り、個々のエンジニアに付与されたカスタムの時間制限付き制限を保持する Amazon DynamoDB 例外テーブルと照合します。

通知: 同じ執行ハンドラーが DynamoDB 状態テーブルから各ユーザーの以前の状態を読み取り、支出が新しいしきい値を超えたときに、その階層についてエンジニアに 1 回限りの Slack ダイレクトメッセージを送信し、制限が予期しないものにならないようにします。

執行

執行アクション: 各エンジニアがしきい値を超えると、Lambda は iam:CreatePolicyVersion を使用して適切な CMP の新しいバージョンを発行します。ポリシーは saml:sub 条件キーを通じて特定のユーザーを対象にします。

ライブ評価: CMP は IAM 権限セットにアタッチされます。エンジニアが次回 Amazon Bedrock を呼び出すと、IAM は更新されたポリシーを評価し、再認証を必要とせずに要求を許可または拒否します。

前提条件

このソリューションをデプロイするには、以下が必要です。

  • IAM ロール、カスタマー管理ポリシー、AWS Lambda 関数、Amazon Athena ワークグループ、Amazon S3 バケット、Amazon DynamoDB テーブルを作成する権限を持つ AWS アカウント。
  • 設定してユーザーに割り当てる AWS IAM Identity Center の権限セット。
  • ログを Amazon S3 バケットに配信するように Amazon Bedrock モデル呼び出しロギングを設定していること。
  • 適切な認証情報で設定された AWS コマンドラインインターフェイス(AWS CLI)。
  • スラッシュコマンド、インタラクティブ、ボットメッセージ用に設定されたアプリを備えた Slack ワークスペース。

デプロイ手順

この記事のコードは、https://github.com/aws-samples/sample-bedrock-spend-enforcement で入手できます。デプロイ手順の概要は次のとおりです。

ステップ 1: Amazon Athena コストビューを作成する

Amazon Bedrock の呼び出しログは、JSON として Amazon S3 に保存されます。まず、ログの場所に Athena テーブルを作成し、トークン数をドルに変換するビューを作成します。ビューは、入力トークンと出力トークンに各モデルの公開済みレートを掛け、ユーザー ID と現在の日付でグループ化します。

レート定数を、リージョンの現在の Amazon Bedrock 料金に置き換えます。各モデルファミリには明示的な価格分岐が必要です。マップされていないモデルは、執行を回避できないように、最高ティア(0 ドルではない)で価格設定されます。関連するアラートを監視し、モデルの実際のレートをすぐに追加してください。

ステップ 2: カスタマー管理ポリシーを作成する

特定のユーザー(saml:sub 値で識別)に対してモデルファミリを拒否する執行ポリシーを作成します。最初は空のユーザーリストから始めます。Lambda は実行時に新しいポリシーバージョンを発行してリストを設定します。ポリシーを IAM 権限セットにアタッチします。iam:CreatePolicyVersion を使用してこれらのカスタマー管理ポリシーを更新すると、再プロビジョニングせずに変更がすぐに有効になります。

ステップ 3: 執行 Lambda とスケジューラをデプロイする

コードリポジトリから Lambda 関数と EventBridge ルールをデプロイします。Lambda は次のタスクを実行します。Athena ビューをクエリして現在の支出を取得します。DynamoDB 例外テーブルを確認します。DynamoDB 状態テーブルを更新します。Slack 通知を送信します。しきい値を超えたユーザーに対してモデルアクセスを拒否する新しいポリシーバージョンを作成します。

ステップ 4: テストとモニタリング

制限が期待どおりに機能することを確認するためにシステムをテストします。Lambda ログと Amazon CloudWatch メトリクスを監視して、執行を検証し、問題を特定します。異常なアクティビティや障害を検出するためのアラートを設定します。

結論

Jamf が構築したソリューションは、Amazon Bedrock でリアルタイムのコストガバナンスを実現する方法を示しています。IAM CMP、Athena、Lambda を組み合わせることで、エンジニアの生産性を犠牲にすることなく AI コストを制御できます。このパターンは、さまざまな予算構造、モデルカタログ、組織規模に適応できます。エンジニアに低コストのモデルを提供し、明確な例外プロセスを実装することで、イノベーションと財務責任のバランスを取ることができます。

要点と分析を開く

記事インテリジェンス

エンジニア中級

要点

  • 生成 AI の支出は予測不可能であり、新しいコストガバナンス手法が必要です。
  • Jamf は、IAM カスタマー管理ポリシー、Athena、Lambda を使用してユーザーごとの支出制限を強制しています。
  • このシステムは、予算の 80% と 100% のしきい値でモデルアクセスを制限し、生産性を維持するための低コストモデルは保持します。
  • 制限は数分で有効になり、再認証は不要で、毎日リセット時に自動的に元に戻ります。

要点と分析は自動生成され、誤りを含む場合があります。原典をご確認ください。