クライアント接続
ほとんどのクライアントでは、エンドポイントを GPT-Load に向け、プロバイダーのキーをAccessKeyに置き換えるだけです。
一般的なルール§
どのクライアントでも、変更するのは次の2項目です:
- エンドポイント URL —
http://127.0.0.1:3001に変更します。/v1を付けるかどうかはクライアントによって異なるため、以下の例を参照してください。 - キー — アップストリームプロバイダーのキーではなく、管理画面で作成したAccessKeyを使います。
認証方式はクライアント本来の方式をそのまま使います。ゲートウェイはAuthorization: Bearer、x-api-key、x-goog-api-key、Gemini のkeyクエリパラメーターを受け付けます。
リクエストするモデルは、このAccessKeyに認可されたGroupで公開されている必要があります。モデルが存在しない場合はGroupの「モデル」タブを確認してください。詳細はGroupとチャネルを参照してください。
管理画面に設定を生成させる§
管理画面ではクライアントごとの接続設定を生成できる。AccessKeyと対象クライアントを選び、生成された設定をコピーしてください。
Claude Code、Codex、Gemini CLI、Cherry Studio、Cline、NextChat、Open WebUI、CC Switch、New API、curl に対応しています。生成された設定にはそのクライアントが必要とするプロトコルが示されるため、その通りにチェックすれば間違いありません。
OpenAI SDK§
公式 SDK では2か所だけ変更します:
from openai import OpenAI client = OpenAI( base_url="http://127.0.0.1:3001/v1", # この行を変更 api_key="あなたのAccessKey", # この行を変更 ) resp = client.chat.completions.create( model="あなたのモデル名", messages=[{"role": "user", "content": "こんにちは"}], )
import OpenAI from "openai"; const client = new OpenAI({ baseURL: "http://127.0.0.1:3001/v1", apiKey: "あなたのAccessKey", });
環境変数を使う場合はOPENAI_BASE_URLとOPENAI_API_KEYを設定すれば、コードの変更は不要です。
Anthropic SDK§
from anthropic import Anthropic client = Anthropic( base_url="http://127.0.0.1:3001", # 注意:/v1 は付けない api_key="あなたのAccessKey", )
Anthropic クライアントは/v1/messagesを使います。SDK がこのパスを付加するため、base_urlにはサーバーのルートを設定します。
Claude Code§
環境変数でゲートウェイを指定します:
export ANTHROPIC_BASE_URL="http://127.0.0.1:3001" export ANTHROPIC_AUTH_TOKEN="あなたのAccessKey" export ANTHROPIC_MODEL="YOUR_MODEL" export ANTHROPIC_CUSTOM_MODEL_OPTION="$ANTHROPIC_MODEL" export CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY="1" claude
YOUR_MODELをこのAccessKeyで利用できるモデルIDに置き換え、同じシェルでClaude Codeを起動または再起動してください。このモデルは起動時に選択され、/modelのカスタム項目にも追加されます。自動検出で追加表示されるのは、IDにclaudeまたはanthropicを含むモデルだけです(大文字・小文字は区別しません)。
永続化するにはシェルの設定ファイルへ追加します。このAccessKeyではAnthropic Messagesプロトコルを有効にしてください。
Codex CLI§
管理画面のホームで Codex を選ぶと、設定ファイルと環境変数が生成されます。モデル検出で返すのは、現在のアクセスキーで利用可能かつ Responses 生成ルートを持つモデルだけです。以下はテキスト接続の例です。
model = "YOUR_MODEL" model_provider = "gpt-load" [model_providers.gpt-load] name = "OpenAI" base_url = "http://127.0.0.1:3001/v1" model_catalog_url = "http://127.0.0.1:3001/v1/models" env_key = "GPT_LOAD_API_KEY" wire_api = "responses" supports_websockets = true [features] api_key_model_discovery = true
export GPT_LOAD_API_KEY="YOUR_ACCESS_KEY"
YOUR_MODEL を公開済みのモデルに置き換え、設定を統合してクライアントを再起動します。モデル検出の設定はクライアント側の対応が必要です。現在の管理画面が生成する設定を基準にしてください。
モデルページで Codex に表示するモデルと順序を選べます。操作手順はCodex モデルカタログを参照してください。
この機能に対応する Codex CLI では、以下のコマンドでセッション内の思考レベル更新を有効にできます。選択したモデルも configuration_update に対応する必要があります。GPT-Load は更新と既存のキャッシュ動作を維持しますが、キャッシュヒットは上流に依存します。
codex --enable reasoning_effort_override
このスイッチの対応状況はクライアントのバージョンによります。カタログに思考レベルが表示されても、セッション内の更新に対応するとは限りません。
Codex リアルタイム音声:クライアント設定、直接接続、中継デプロイ →
この AccessKey では OpenAI Responses プロトコルにチェックが必要です。Codex は Responses API を使うため、Chat Completions だけを選ぶとリクエストは拒否されます。ルーティングチェックでは protocol_filtered が表示されます。
ここではCodex クライアントをゲートウェイへ接続する手順を説明しています。Codex のサブスクリプションアカウントをアップストリームとして使う手順は別です。サブスクリプションアカウントを参照してください。
Gemini CLI§
export GOOGLE_GEMINI_BASE_URL="http://127.0.0.1:3001" export GEMINI_API_KEY="あなたのAccessKey"
Gemini クライアントは/v1beta/models/…を使います。AccessKeyでGeminiプロトコルを有効にしてください。
デスクトップクライアント§
Cherry Studio、NextChat、Open WebUI、Cline などの GUI クライアントには、通常「カスタム API アドレス」と「API Key」の入力欄があります。次のように設定します:
- APIアドレス:
http://127.0.0.1:3001/v1 - API Key:AccessKey
- モデル:Groupが公開しているモデル名を入力します。一部のクライアントは「モデル一覧を取得」で自動取得できます。
特定クライアントのスクリーンショット手順は、管理画面のワンクリック生成の方が速い——そのクライアントに対応する正確なフィールドが表示されます。
CC Switch の残高照会では、汎用テンプレートとアクセスキーを使い、Base URL にゲートウェイのルートまたは /v1 を指定できます。返されるのはアクセスキーの総コスト上限に基づく米ドルの推定残高で、上流アカウントの残高ではありません。期間上限は含まず、総上限がなければ total と balance は両方 0 になります。
接続できない場合§
次の順序で確認してください。多くの問題は最初の2手順で特定できます:
- まず curl でゲートウェイ自体を検証 — ゲートウェイ自体とクライアント設定の問題を切り分けます:
curl http://127.0.0.1:3001/v1/chat/completions \ -H "Authorization: Bearer あなたのAccessKey" \ -H "Content-Type: application/json" \ -d '{"model":"あなたのモデル名","messages":[{"role":"user","content":"hi"}]}'
- curl は通るがクライアントは通らない — 多くの場合、エンドポイント末尾の
/v1が余分または不足しているか、AccessKeyでプロトコルが有効になっていません。 - モデルが存在しないことを示す — Groupの「モデル」タブで、そのモデルが公開されていることを確認します。
- リクエストは送信されたが失敗した — 監視とトラブルシュートのリクエストログで具体的な原因を確認します。ルートチェックでは候補Groupと利用可能な認証情報数を確認できます。