💸

GeminiAPIを無料枠で使おうとしてうっかり課金された話

に公開

はじめに

GeminiAPIで何か始めてみようという方で、既にGoogleCloudに課金を有効にしたプロジェクトが存在する場合、要注意です。

私は無料枠は一定の使用量を超えたら使い切るイメージで勝手に思い込んでいた結果、gemini-2.5-flashモデルを10回もコールしていない状況で4円もかかってしまいました。
(むしろ4円の請求で気がつけて良かったと思っています)

もし初めてGeminiAPIを使う方がいて、たまたまこの記事を見ましたら
同じ失敗を決してして欲しくないという気持ちで書いております。

[Gemini Developer API の料金]
https://ai.google.dev/gemini-api/docs/pricing?hl=ja

結論、まずはここを確認する

まず、結論課金されるAPI Keyなのかどうかは、ここを確認すればOKです。
https://aistudio.google.com/apikey

プランに「Free」と表記されていれば、無料枠で使えると判断できます。
ai-studio-1

他にTier 1〜3と表記されていれば、私のように速攻課金対象になるでしょう。

では実際にどういう設定だとFreeと表記されるのかを解説します。

Google Cloudの設定確認

初めての方は、GeminiAPIを使用する目的専用のプロジェクトを作成すると良いでしょう。
ここでは仮で〇〇-gemini-labというプロジェクトを作成しました。

プロジェクトの準備が出来たら、まずはGoogle Cloudのコンソールから、「課金」のページを開きます。

サイドメニューの下部にある、「アカウント管理」を選択します。
gemini用のプロジェクトの横にある3点リーダーを選択し、「課金を無効にする」を選択します。
google-cloud-1

確認画面が出ますので、「課金を無効にする」を選択します。
※GeminiAPI専用プロジェクトの作成をおすすめしたのは、他のリソースの影響範囲を気にしないためです。
google-cloud-2

Google AI StudioでAPI Keyを作成

次に、Google AI StudioのAPI Key作成画面で、「API Keyを作成」を選択します。
ai-studio-2

先ほど課金を無効にしたプロジェクトを選択します。
ai-studio-3

作成したKeyが、冒頭で説明したように「Free」の表示であることを確認します。

試しにFreeのAPI Keyを使ってみる

AI Studioにサンプル表示されている通りにAPI Keyを使用してみます。

% GEMINI_API_KEY=XXXXXXXXXXXXXXXX
% curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent" \
  -H 'Content-Type: application/json' \
  -H "X-goog-api-key: $GEMINI_API_KEY" \
  -X POST \
  -d '{
    "contents": [
      {
        "parts": [
          {
            "text": "Explain how AI works in a few words"
          }
        ]
      }
    ]
  }'

{
  "candidates": [
    {
      "content": {
        "parts": [
          {
            "text": "AI learns patterns from data to make predictions or decisions.\n"
          }
        ],
        "role": "model"
      },
      "finishReason": "STOP",
      "avgLogprobs": -0.053760841488838196
    }
  ],
  "usageMetadata": {
    "promptTokenCount": 8,
    "candidatesTokenCount": 12,
    "totalTokenCount": 20,
    "promptTokensDetails": [
      {
        "modality": "TEXT",
        "tokenCount": 8
      }
    ],
    "candidatesTokensDetails": [
      {
        "modality": "TEXT",
        "tokenCount": 12
      }
    ]
  },
  "modelVersion": "gemini-2.0-flash",
  "responseId": "5wuQaMTuHPayxfcPzf-iWQ"
}

はい、無事レスポンスが返ってきました。

以下は上記含む2回ほどのcurlを実行した結果です。

ai-studio-4

おわりに

Gemini API Keyで何か始めるときは、必ずGoogle AI Studioでプランの表示がFreeかどうかを確認しましょう。

ここまで読んでいただきありがとうございました。

Discussion