theopenco/llmgateway

Route, manage, and analyze your LLM requests across multiple providers with a unified API interface.

LLM Gateway – 何であるか

LLM Gateway は、アプリケーションと複数の大規模言語モデル(LLM)プロバイダー(OpenAI、Anthropic、Google Vertex AI など)の間にあるオープンソースのAPIゲートウェイです。単一の OpenAI 互換エンドポイントを提供し、さまざまなプロバイダーのキーを一か所に保管でき、使用状況データを記録して、どれだけのトークンを消費したか、各リクエストのコストがいくらかを確認できます。


コア機能(READMEに記載)

  • 統合API – リクエストは OpenAI の /v1/chat/completions 形式に従うため、クライアントコードを変更せずにプロバイダーを切り替えることができます。
  • マルチプロバイダー経路 – 各リクエストに対してどのバックエンドモデルを呼び出すかを設定でき、ゲートウェイが適切なプロバイダーにリクエストを転送します。
  • キー管理 – 複数のプロバイダーのAPIキーを一元管理でき、起動時に設定したシークレットで保護されます。
  • 使用状況分析 – リクエスト数、トークン使用量、応答遅延、コストをログに記録し、支出を監視・最適化できます。
  • パフォーマンス監視 – 同じダッシュボードからモデル・プロバイダー間の遅延と価格を比較できます。
  • セルフホストまたはSaaSllmgateway.io でホストされたサービスを利用したり、自前でスタックを構築できます。

実行方法

ホスト済みオプション

  1. llmgateway.io でサインアップします。
  2. APIキーを取得し、https://api.llmgateway.io/v1/... にリクエストを送信します。

セルフホスト(Docker第一)

  1. 2つのシークレットを生成します:
    export LLM_GATEWAY_SECRET=$(openssl rand -base64 32 | tr -d '\n')
    export GATEWAY_API_KEY_HASH_SECRET=$(openssl rand -base64 32 | tr -d '\n')
    
  2. PostgreSQL と Redis のボリュームを作成し、統合コンテナを起動するスクリプトを実行するか、名前付きボリュームでコンテナを手動で起動します(詳細はREADME参照)。
  3. コンテナはUI、API、内部サービス用に複数のポート(3002–3007、4001–4002)を公開します。
  4. 起動後、OpenAI APIと同様にゲートウェイを呼び出せます。例:
    curl -X POST https://api.llmgateway.io/v1/chat/completions \
         -H "Content-Type: application/json" \
         -H "Authorization: Bearer $LLM_GATEWAY_API_KEY" \
         -d '{"model":"gpt-4o","messages":[{"role":"user","content":"Hello, how are you?"}]}'
    

開発ワークフロー

  • 依存関係pnpm で管理。pnpm i && pnpm run setup を実行してパッケージをインストール、Dockerサービスを起動、DBスキーマを同期、データをシードします。
  • 開発サーバーpnpm dev で、フロントエンドダッシュボード、API、ゲートウェイなどすべてのアプリをウォッチモードで起動します。
  • 本番ビルドpnpm build でデプロイ用の最適化されたバンドルを作成します。
  • モノレポ構造 – Next.jsアプリ(uiplaygroundcodeairsidedocs)と共有パッケージ(dbmodelsshared)を含むモノレポです。実際のルーティングロジックは apps/gateway(Honoバックエンド)にあります。

ライセンス

  • オープンソースコア – AGPL-v3(LICENSE を参照)。
  • エンタープライズ拡張機能ee/ ディレクトリには、高度な請求、無制限のデータ保持、マルチ組織管理などの商用機能が含まれており、別途エンタープライズライセンスの対象です。詳細は contact@llmgateway.io までお問い合わせください。

どんな人が使うか?

  • 複数のLLMプロバイダーを切り替えたり組み合わせたりする必要があるが、クライアントコードを再書き換えしたくないチーム。
  • トークン使用量とコストを一か所で監査したい組織。
  • データプライバシーまたはコンプライアンスの理由でセルフホストを好む開発者。

まとめ

LLM Gateway は、LLM API間の違いを抽象化し、分析機能を追加し、SaaSとセルフホストの両方のデプロイパスを提供する実用的で本番環境対応のミドルウェアです。TypeScriptのモノレポとして構築され、Docker対応で、UI、API、ゲートウェイのコンポーネント間の明確な分離がなされています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト