アルファテックブログ

利用者皆で把握するAIコスト可視化ダッシュボード

カバー

はじめに

こんにちは。経営企画本部AI推進室の福田です。 AIを用いたソフトウェア開発では、素早く大量のコードを生成することで効率化できたと考えがちです。しかし、その裏では同じく大量のコストが消費されてしまっているかもしれません。

この記事では、AIサービスのコスト・利用管理における課題と、それを解決するために構築したダッシュボードの設計思想について紹介します。

社内で利用しているAIサービスのコストの可視化や管理の仕組みづくりを検討している方、運用しているエンジニアの方に向けた内容となっています。

AIサービスのコスト・利用管理における課題

従来、ソフトウェア開発のコストの多くは、開発者の稼働時間に応じた人件費でした。そのため、チームを管理するマネージャーがメンバーの稼働を管理することで、コストの把握・管理もできていました。一方、AIを用いた開発では、各開発者のAI利用がコストと生産性に直結します。開発者自身がAIという部下・ビジネスパートナーを管理する必要が生まれたことで、マネージャーだけでなく、AIを実際に使う開発者自身もコストを意識し、利用をコントロールする必要が高まっています。

さらに、複数のAIサービスを利用することで、コスト管理は複雑になります。当社でも複数のAIサービスが導入され、サービスごとに管理画面が異なるため、個人単位の月次総額や組織単位のコストをサービス横断で集計することが課題となっていました。

対応すべき課題を表に整理しました。

観点課題狙い
予算管理月次予算に対する利用状況や着地見込みを、組織単位で把握しにくい予算超過の可能性を早期に判断できる状態にする
コスト最適化利用の少ないライセンスや、高単価モデルの利用妥当性を判断しにくい不要なコストを削減できる状態にする
活用推進組織ごとの利用状況を比較できず、支援が必要な組織を判断しにくい支援の優先度を根拠を持って判断できる状態にする
ガバナンスとリスク管理利用情報が、業務上必要な範囲を超えて閲覧されるおそれがある不要な情報の閲覧を防止できる状態にする
費用対効果生産性などの効果と比較するために必要なコスト実績を横断的に把握しにくいAIサービスの継続・拡大を検討するための判断材料を得られる状態にする

解決策と要件

これらの課題を解決するために、AIコストを確認できるダッシュボードを構築しました。各観点において、必要な機能を表に整理しました。

観点機能
予算管理月次総額と当月の着地見込みの表示
コスト最適化サービスごとのアカウント別利用量・利用額のソート表示、モデル別のコスト構成比
活用推進組織単位の利用状況の比較
ガバナンスとリスク管理権限に応じた閲覧範囲の制御
費用対効果サービス間・モデル間のコスト比較

ダッシュボードの設計

AIコストデータの統合

まずは、AIコストデータの統合について検討します。 主要な2つのサービスを対象としました。 1つ目は、社内基盤であるAIゲートウェイ(以下、AIGW)です。AIGWは、複数のクラウドが提供するAIモデルを共通の窓口から利用できるよう、オープンソースのLiteLLMをベースに構築しています。2つ目は、コーディングエージェントのGitHub Copilotです。

AIGWとGitHub Copilotの一元管理

サービスを横断して比較するには、サービスごとに異なる列名を揃える必要があります。そこで、両サービスのCSVを共通スキーマへ変換する処理を用意しました。 共通スキーマには、month(対象月)、account(利用者)、source(対象サービス)、model(利用モデル)、cost(利用料)、usage(利用量※)の6項目を定義しました。これにより、「いつ、誰が、どのサービスで、どのモデルを、いくら使い、どれだけ消費したか」を同じ形式で扱うことができます。

サービス間の比較には、共通の単位である cost を使います。

※ usage はサービスごとの利用実績を表す値です。AIGWではトークン数、GitHub CopilotではGitHub AI Credits(Copilot独自の利用量単位)を表します。単位が異なりサービス間で直接比較できないため、各サービスの利用傾向を確認する参考情報として単位を付けて表示します。

AIGWとGitHub Copilotの比較

コスト情報の閲覧権限について

データを揃えたことで、複数サービスを横断した集計が可能になりました。次に、その集計結果を誰がどこまで見られるようにするかを設計します。役割によって、業務上必要な情報の範囲は異なります。また、ガバナンスの観点から、社内の利用データは、業務上必要な範囲で適切な権限を持つ人が閲覧できるようにする必要があります。そこで、閲覧範囲を3段階に分けました。

権限閲覧範囲目的
権限A全社全社の動向を把握し、予算配分と投資判断を行う
権限B所属する組織階層内組織内の利用状況を把握し、利用促進やコスト最適化の対応を検討する
権限C自分のデータのみ自身の利用状況を把握し、利用方法やコストを見直す

各画面に表示するデータは、この権限に応じて絞り込みます。権限AとBでは、組織単位の集計に加えて、許可された組織の範囲内でアカウント単位の内訳を確認できます。

※図中の金額・組織名・個人名等のデータはすべてサンプルです。(以下同様)

アカウント別集計のイメージ(仮想データ)

権限は、当社の統合認証基盤であるActive Directory フェデレーション サービス(AD FS)から連携される所属・役割情報に基づいて決定しています。

アクセス制御は、APIとフロントエンドの2層で行います。フロントエンドでは権限に応じて表示を制御し、APIでは直接呼び出された場合でも権限外のデータにアクセスできないよう認可します。

権限制御の流れ

画面の構成

閲覧範囲の制御に続き、前述の他4つの機能に応えるため、全体表示、組織別表示、モデル別表示、マイページ、サービス別表示の5画面を用意しました。 以下の画像には仮想データを使用しています。実際に表示されるデータの範囲は、前述の権限によって異なります。

全体表示

サービスを横断したAI利用コストの総額を1画面にまとめました。予算超過などを速やかに把握するため、月次の総額に加えて当月の着地見込みを表示します。

全体表示のイメージ(仮想データ)

組織別表示

組織階層を単位に集計します。組織ごとの利用状況を比較することで、利用額が業務量に見合っているか、活用の支援が必要かを検討できます。

組織別表示のイメージ(仮想データ)

モデル別表示

AIモデルによって利用単価は異なります。モデルごとの利用額を確認することで、高単価なモデルの選択が用途に見合っていたかを検証できます。利用額や利用量の急増も把握できるため、予期しない利用の早期発見にも役立ちます。

モデル別表示のイメージ(仮想データ)

マイページ

自分の利用データだけを確認できる画面です。今月の利用額やモデルごとの内訳を確認し、自分の使い方を見直すことができます。

マイページのイメージ(仮想データ)

サービス別表示

サービスごとの利用料に切り替えて見ることができます。今後のサービスごとの予算配分や利用拡大を判断する材料になります。

サービス別表示のイメージ(仮想データ)

まとめ

AIコスト可視化ダッシュボードの設計を行いました。

大きく分けて、以下の3項目を設計しました。

  1. サービスごとに異なる利用データを共通化すること
  2. 役割に応じて閲覧範囲を制御すること
  3. 利用者ごとの判断につながる画面を用意すること

これらに共通する設計思想は、AIコストの可視化を単なる利用額の集計にとどめず、利用者の意思決定につなげることです。利用者がそれぞれの立場で利用状況を把握し、予算配分やサービスの選択、モデルの使い分けなど、必要な判断を行える状態をつくることを重視しました。

同じように、AIサービスのコスト・利用管理において課題を感じている方の参考になれば幸いです。

記事の執筆にあたっては情報の正確性に努めておりますが、掲載されている文章やソースコード、設定ファイル等の内容について、完全な正確性や安全性を保証するものではありません。活用される際は、必ず公式ドキュメント等をご自身で確認のうえご判断ください。

▲
TOP
アルファロゴ株式会社アルファシステムズは、ITサービス事業を展開しています。このブログでは、技術的な取り組みを紹介しています。X(旧Twitter)で更新通知をしています。
X @techblogalpha