ブログに戻る
コラム

OpenAI互換APIとは?仕組みと使い方を解説

FastMetal

OpenAI互換APIとは、OpenAIのChat Completions APIと同じリクエスト形式・レスポンス形式を受け付けるAPIのことです。OpenAI向けに書いたコードの「接続先(エンドポイント)」と「APIキー」を変えるだけで、他のプロバイダーやモデルをほぼそのまま利用できます。この記事では、その仕組みとメリット、FastMetalでの具体的な使い方を解説します。

この記事でわかること

  • OpenAI互換APIの意味と仕組み
  • 「互換」であることの実務的なメリット
  • FastMetalでOpenAI互換APIを使う手順(コード例つき)
  • 利用時に気をつけたいポイント

OpenAI互換APIとは

OpenAI互換APIとは、OpenAIが公開しているChat Completions APIと同じインターフェースを採用したAPIです。具体的には、POST /v1/chat/completions というエンドポイントに、messages 配列と model を含むJSONを送り、同じ形のレスポンスを受け取ります。認証も Authorization: Bearer <APIキー> で共通です。

このため、OpenAIのSDKやサンプルコードを使っている場合、接続先のURLとAPIキーを差し替えるだけで、他のサービスやモデルに移行できます。

なぜ「互換」が重要なのか

「互換」であることには、開発の現場で効く具体的なメリットがあります。

  • 既存コードの資産を活かせる — OpenAI向けに書いた実装を書き直さずに使えます。
  • ベンダーロックインを避けられる — 1社のAPIに固定されず、必要に応じて乗り換えられます。
  • モデルを柔軟に切り替えられるmodel の値を変えるだけで、用途に合ったモデルを選べます。

ポイント:互換APIゲートウェイ(FastMetalは内部でLiteLLMを利用しています)を挟むと、フロンティアモデルからオープンモデルまでを、一つの窓口でまとめて扱えます。

仕組み:エンドポイントとAPIキー

OpenAI互換APIは、おおまかに次の要素で成り立っています。

要素内容
エンドポイントhttps://api.fastmetal.ai/v1/chat/completions
認証Authorization: Bearer <APIキー>
リクエストmodelmessages を含むJSON
レスポンスOpenAIと同じ choices[].message 形式

クライアント側はOpenAIに接続しているかのように扱え、実際にはゲートウェイが適切なモデルへリクエストを振り分けます。

FastMetalでOpenAI互換APIを使う

FastMetalはOpenAI互換のエンドポイントを提供しています。APIキーを取得したら、次のように呼び出せます。

curl https://api.fastmetal.ai/v1/chat/completions \
  -H "Authorization: Bearer $FASTMETAL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic-claude-haiku-4-5",
    "messages": [{"role": "user", "content": "こんにちは"}]
  }'

OpenAIのPython SDKをそのまま使う場合は、base_url を差し替えるだけです。

from openai import OpenAI

client = OpenAI(
    api_key="<FASTMETAL_API_KEY>",
    base_url="https://api.fastmetal.ai/v1",
)

resp = client.chat.completions.create(
    model="anthropic-claude-haiku-4-5",
    messages=[{"role": "user", "content": "こんにちは"}],
)
print(resp.choices[0].message.content)

FastMetalでは、1つのAPIキーでフロンティアモデルからオープンモデルまでを利用でき、料金は円建てのプリペイドです。チャージした残高の範囲でのみ課金されるため、想定外の請求が発生しません。利用できるモデルはモデルカタログ、価格は料金ページで確認できます。

使うときの注意点

  • モデルごとに挙動が異なる — 互換APIでも、出力の品質や対応機能はモデルごとに違います。用途に合わせて選びましょう。
  • 対応機能に差がある場合がある — ツール呼び出しやストリーミングなど、一部機能はモデル依存です。
  • 課金はトークン単位 — 入力・出力のトークン数に応じて残高から差し引かれます。日本語はトークンを多く消費しやすい点に注意してください。

よくある質問

OpenAI互換APIとは一言で何ですか?

OpenAIのChat Completions APIと同じ形式で呼び出せるAPIのことです。リクエストとレスポンスの形が共通なので、接続先とAPIキーを変えるだけで、別のモデルやサービスを利用できます。

OpenAI向けのコードはそのまま使えますか?

多くの場合、base_url とAPIキーの差し替えだけで動作します。ただしモデル固有の機能を使っている場合は、対応状況の確認が必要です。

料金はOpenAIとどう違いますか?

FastMetalは円建てのプリペイド方式で、チャージした残高の範囲で課金されます。モデルごとの単価は料金ページをご確認ください。

まとめ

OpenAI互換APIを使えば、既存のコードを活かしながら、複数のLLMを一つのAPIキーで柔軟に扱えます。FastMetalなら、円建てのプリペイドで想定外の請求を避けつつ、フロンティアからオープンモデルまでをまとめて試せます。まずはAPIキーを取得して、最初のリクエストを送ってみてください。