ドキュメント/ はじめに

クイックスタート

空のマシンから最初のリクエストの結果が返るまで、約10分かかります。概念を理解する必要はなく、手順に従えば大丈夫です。

始める前に§

次の2つを用意します:

  • DockerDocker Composeをインストール済みのマシン
  • 1つのアップストリームサービスの API キー — OpenAI、Anthropic、Gemini、DeepSeek など、利用できるアップストリームサービスの APIキーを用意します。

データベースの準備は不要で、デフォルトでは組み込みの SQLite を使用します。管理画面は同じプログラムに組み込まれているため、フロントエンドを別途デプロイする必要もありません。

1 · サービスを起動§

サービスを起動
git clone --depth 1 --branch v2 \
  https://github.com/tbphp/gpt-load.git
cd gpt-load

cp .env.example .env
docker compose up -d

サービスが起動したことを確認:

curl --fail http://127.0.0.1:3001/health

正常な応答が返れば、サービスは稼働しています。デフォルトではローカルホストだけをリッスンするため、インターネットからはアクセスできません。これは意図した設定です。安全なリモートアクセスはセキュリティと本番運用を参照してください。

2 · 管理画面にログイン§

初回起動時に管理キーが自動生成されます。次のコマンドで確認します:

docker compose exec gpt-load \
  sh -c 'cat /app/data/auth.key'

http://127.0.0.1:3001を開き、このキーを入力します。

FIG. 1 — ログイン管理キーを入力
別の方法

自動生成の管理キーを使わない場合は、起動前に.envAUTH_KEYを設定します。ENCRYPTION_KEYはアップストリーム認証情報の暗号化に使われるため、データベースと一緒にバックアップしてください。失うと認証情報を復号できません。

3 · Groupを作成§

Groupは、アップストリームサービスとその認証情報をまとめたものです。Group → チャネル認証情報のインポート → 新規Group作成を開き、最初にチャネルを選択します:

FIG. 2 — チャネル選択チャネルはGroup作成時に選択

よく使うチャネルはボタンで表示され、それ以外は「その他のチャネル」から選択します。

チャネルを選んだら、APIキーを認証情報欄に貼り付け、このGroupで公開するモデルを追加します:

FIG. 3 — 入力済みのGroupチャネル・認証情報・モデル

1つのGroupに複数のキーを登録できます。ゲートウェイはキーを順番に使い、無効なキーを自動的に避けるため、他のキーには影響しません。

保存するとGroupを利用できます。各項目の意味はGroupとチャネルを参照してください。

4 · AccessKeyを作成§

Groupはアップストリームを管理し、AccessKeyは各アプリケーションが利用できる範囲を定義します。AccessKey → 新規作成を開き、作成したGroupと許可するプロトコルを選んで保存します。

生成されたキーをアプリケーションに渡します。アプリケーションは、その背後にあるGroupやアップストリームキーの数を知る必要はありません。

5 · 最初のリクエストを送信§

以下のキーとモデル名を自分のものに置き換えてください:

cURL
export GPT_LOAD_KEY="あなたのAccessKey"

curl http://127.0.0.1:3001/v1/chat/completions \
  -H "Authorization: Bearer ${GPT_LOAD_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"model": "あなたのモデル名", "messages": [{"role": "user", "content": "こんにちは"}]}'

応答が返れば、経路全体が動作しています。既存のクライアントでも通常は2か所を変更するだけです:

Python — OpenAI SDK
client = OpenAI(
    base_url="http://127.0.0.1:3001/v1",   # この行を変更
    api_key="あなたのAccessKey",          # この行を変更
)

管理画面ではクライアントごとの接続設定を生成できるため、手作業で組み立てる必要はありません:

FIG. 4 — ワンクリック接続キーとクライアントを選択すると、パラメータが自動生成されます

AccessKeyと対象クライアントを選ぶとパラメータが生成され、そのままコピーできます。

次のステップ§

クイックスタート - GPT-Load