JA ▾
API キーを取得

GetAiApiKey本番環境向けAI APIチェックリスト

AI API キーテスター:30秒でキーを確認

AI APIキーテスターとしてWebサイトは不要です。curl呼び出し1回、またはPythonの6行で、キーが有効か、モデルが応答するか、残高がどれだけ残っているかがわかります。

更新日:

3つの緑色のインジケーターライトが点灯したコンソールに挿入されたキー(APIキーのチェックを表す)

主要ポイント

  1. まずGET /v1/modelsを呼び出します:これはトークンを消費せずに、キーとBase URLが有効であることを証明します。
  2. 1トークンのチャット呼び出しでモデルが動作することを確認し、X-Balance-USDで残高を確認できます。
  3. ライブキーを不明なオンラインチェッカーに貼り付けないでください。ローカルでテストしてください。
  4. 一般的な失敗の原因は、Base URLの誤り、Bearerプレフィックスの欠落、または制限です。

Webページではなくローカルでテストする理由

AI API キーテスターを検索すると、キーを貼り付けてボタンを押すだけのページが多数表示されます。それらを避けてください。キーはあなたのクレジットを消費するパスワードであり、そのようなページがキーをどのように扱うかはわかりません。以下のテストは30秒ほどかかり、あなたのマシン上で実行され、キーはあなたが使用したい API のみに送信されます。

必要なものは3つです:キー、Base URL https://api.getaiapikey.com/v1、およびモデルID uncensoredです。キーを環境変数に設定して、シェル履歴やコミットされるファイルに残らないようにしてください。

export API_KEY="paste-your-key-here"

キーはAPI キーページから取得します。まだお持ちでない場合は、新規ユーザーはサインアップ後にワンクリックで$0.50のトライアルクレジットを付与できます。これはこの記事のすべてのテストを何度も実行するのに十分な額です。

チェック1:curlでモデルをリスト表示

最もコストの低いテストはモデルリストです。有効なキーと正しいBase URLが必要ですが、テキストは生成されません。

curl -i https://api.getaiapikey.com/v1/models \
  -H "Authorization: Bearer $API_KEY"

-iフラグはレスポンスヘッダーを出力します。正常な応答はHTTP/2 200で始まり、モデルIDuncensoredを含むJSONボディを返します。代わりに認証エラー(通常はステータス401)が表示される場合は、APIキーが間違っている、末尾にスペースが含まれてコピーされた、またはヘッダーにBearerの単語が不足しているためです。404はURLが間違っていることを意味し、最も多いのは/v1の欠落または重複です。

チェック2:実際のcompletionを実行

キーは有効でも、実際のリクエストで失敗する場合があります(例:残高が空の場合)。そのため、小さなチャット呼び出しを送信し、出力を制限してコストをほぼゼロに保ちます:

curl -i https://api.getaiapikey.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"uncensored","max_tokens":5,"messages":[{"role":"user","content":"Say ok."}]}'

ボディの前にヘッダーを確認してください。X-Request-Idは呼び出しを識別し、サポートが求める情報です。X-Balance-USDは残っているクレジットの額を示します。X-RateLimit-Limit-RequestsとX-RateLimit-Limit-Concurrencyはキーの制限を明らかにします:フルキーの場合は300と8、トライアルキーの場合は60と2です。この1回の呼び出しで、認証、モデル、残高、キーの種類を確認できます。

テストのコストは無視できるほど小さいです。約10トークンのプロンプトと5トークンの返信には、10 x $0.15 / 1M + 5 x $0.50 / 1Mがかかり、約$0.000004です。失敗または拒否されたリクエストには一切課金されません。

チェック3:Pythonでの同じテスト

実際のコードでPythonを使用している場合は、コードが実行される方法でテストしてください。このスクリプトは公式のopenaiパッケージを使用しているため、ここでパスすればアプリケーションのセットアップも機能していることを意味します:

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.getaiapikey.com/v1",
    api_key=os.environ["API_KEY"],
)

raw = client.chat.completions.with_raw_response.create(
    model="uncensored",
    max_tokens=5,
    messages=[{"role": "user", "content": "Say ok."}],
)
print("status:", raw.status_code)
print("balance:", raw.headers.get("X-Balance-USD"))
print("req/min limit:", raw.headers.get("X-RateLimit-Limit-Requests"))
print("concurrency limit:", raw.headers.get("X-RateLimit-Limit-Concurrency"))
print("reply:", raw.parse().choices[0].message.content)

with_raw_responseラッパーはヘッダーにアクセスでき、parse()は通常のレスポンスオブジェクトを返します。Pythonのセットアップ自体は、インポートに失敗した場合はPythonでLLMクライアントをインストールする方法でカバーされています。

completionなしで残高を確認

テキストを生成せずに残高を読み取るには、balanceエンドポイントのいずれかを呼び出します。OpenAIスタイルのものと短いものがあります:

curl https://api.getaiapikey.com/v1/balance \
  -H "Authorization: Bearer $API_KEY"

curl https://api.getaiapikey.com/v1/dashboard/billing/credit_grants \
  -H "Authorization: Bearer $API_KEY"

すでに OpenAI のクレジット付与形式を想定しているツールは、2番目のパスをそのまま使用できます。監視スクリプトにこのような呼び出しを追加すると、本番環境のボットがクレジットを使い切る前に警告を受け取ることができます。チャージは $20 から開始され、クレジットは期限切れにならないため、十分な残高を保つことに対するペナルティはありません。金額とボーナスは価格ページに記載されています。

テストをヘルスチェックに変える

キーが動作したら、テストを継続してください。スケジュールで実行される小さなスクリプトは、デプロイの失敗、シークレットの有効期限切れ、残高の不足をユーザーよりも早く教えてくれます。ここでは組み込みのfetchを使用したNodeバージョンを示します(Node 18以降):

const base = "https://api.getaiapikey.com/v1";

async function check() {
  const res = await fetch(`${base}/chat/completions`, {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      model: "uncensored",
      max_tokens: 5,
      messages: [{ role: "user", content: "Say ok." }],
    }),
  });
  const balance = Number(res.headers.get("X-Balance-USD"));
  console.log(res.status, "balance:", balance);
  if (res.status >= 400 || balance < 5) process.exitCode = 1;
}

check();

呼び出しが失敗したり、残高が $5 を下回ったりすると、スクリプトはゼロ以外のコードで終了するため、cron ジョブや CI ステップでアラートを設定できます。しきい値はあなたの消費率に応じて選択してください:1日あたり $2 の場合、$5 は 2 日以上の警告時間を提供します。

合格テストが証明しないもの

緑のチェックは、その瞬間、低負荷で認証、ルーティング、モデルが動作することを示しますが、20ユーザーが同時にアクセスした際のアプリケーションの動作は示しません。それには制限を覚えておいてください:フルキーは同時に8リクエストを実行でき、ストリーミングリクエストはストリームが終了するまでスロットを保持します。起動前に、同時呼び出しの制限付きで自分のコードを負荷テストしてください。

失敗の読み取り

表示される内容最も可能性の高い理由取るべき行動
認証エラー(通常は401)キーの誤り、余分な空白、Bearerプレフィックスなしキーを再コピーし、ヘッダー文字列を確認
404またはJSONではなくHTML誤った Base URL正確にhttps://api.getaiapikey.com/v1を使用してください
モデルが見つからないリクエスト内の異なるモデルIDmodelをuncensoredに設定
429 ステータスコードで rate_limited または concurrency エラー1分あたりのリクエスト数または同時実行数が多すぎる待機し、遅延を設けて再試行
429 と Retry-After: 5一時的な過負荷5秒待機して再試行
接続またはタイムアウトエラーネットワーク、プロキシまたはファイアウォール別のネットワークでテストし、プロキシ変数を確認

8 MBを超えるリクエストは拒否されるため、大きな呼び出しのみが失敗する場合はボディサイズを確認してください。ドキュメントにはすべてのエラーコードとヘッダーがリストされています。

キーを扱うための良い習慣

  • キーを環境変数またはシークレットストアに保持し、クライアント側のコード、公開リポジトリ、またはスクリーンショットには入れないでください。
  • 可能な限り、アプリケーションごとに1つのキーを使用してください。そうすれば、リークが容易に追跡および置換できます。
  • キーがリークした可能性がある場合は、置き換えてから残高を確認し、予期せぬ支出がないか確認してください。
  • 複数のプログラム間でトライアルキーを共有しないでください:同時 2 リクエストでは制限にすぐに達してしまいます。

サインアップする前に無料オプションが存在するかどうかだけを確認したい場合は、無料 LLM API キーに関する記事が利用可能な内容を示しています。それ以外の場合、上記の 3 つのチェックはキーのテストにすべて必要です。

質問と回答

公式のオンラインキーテスターはありますか?

不要です。GET /v1/models と 1 つの軽量なチャット呼び出しをあなたのマシンから実行するだけで、キーを第三者に公開することなく、キー、モデル、残高を確認できます。

キーのテストには料金がかかりますか?

max_tokens を 5 に設定した短い呼び出しには数マイクロドルがかかります。失敗または拒否されたリクエストには課金されません。

トライアルキーとフルキーをどう見分けますか?

X-RateLimit-Limit-Requests および X-RateLimit-Limit-Concurrency ヘッダーを読み取ってください。トライアルキーは 60 と 2 を返し、フルキーは 300 と 8 を返します。

curl では動作するが、アプリでは動作しないのはなぜですか?

アプリ内のベースURL、モデル ID、Authorization ヘッダーを curl コマンドと比較してください。よくある原因は、/v1 の欠落、キーの末尾の空白、古い環境変数です。

キーはフォーム 1 つで手に入ります

アカウントを作成し、キーをコピーし、ベースURLを変更します。これでセットアップは完了です。