Repolode
yym68686

yym68686/uni-api

複数のLLMプロバイダーを、ロードバランシング対応の単一のOpenAI互換APIとして公開するセルフホスト型ゲートウェイ。

代替できる製品:OpenRouter

スター
1,270
フォーク
158
未解決の Issue
15
最終コミット
3 日前

これは何?

uni-apiは、LLM API向けのセルフホスト型ゲートウェイです。OpenAI、Anthropic、Gemini、Vertex、Azure、AWS、xAI、Cohere、Groq、Cloudflare、OpenRouterなど複数のバックエンドプロバイダーを、OpenAI形式に対応した単一のエンドポイントから呼び出せます。プロバイダーとAPIキーはWebコンソールではなくYAML設定ファイルで定義し、モデル名の変更やグループ化によって、クライアントからシンプルな名前で利用できるようにします。

複数のAPIキーやプロバイダーを運用する際の課題にも対応します。チャネル間、およびチャネル内のキー間で、重み付け、ラウンドロビンなどのスケジューリング方式を利用できます。失敗時には次のチャネルへ再試行し、失敗したチャネルは指定した時間だけクールダウンします。キーごとのワイルドカード付き権限、レート制限、モデルごとのタイムアウト、任意のメッセージモデレーションも同じ設定ファイルで構成できます。

チャット補完に加え、responses、画像、埋め込み、音声の文字起こしと生成、モデレーション、モデル一覧の各エンドポイントをOpenAI形式で提供します。Rustで実装されており、Dockerイメージから実行できます。データベースはデフォルトでSQLiteを使用し、PostgreSQLにも対応しています。

主な機能

  • 01OpenAI、Anthropic、Gemini、Vertex、Azureなど複数のプロバイダーを、単一のOpenAI互換APIから利用できます。
  • 02Webフロントエンドは不要で、すべてYAMLファイルで設定できます。
  • 03チャネル単位の重み付け・ラウンドロビンによるロードバランシングと、チャネル内のキー単位のローテーションに対応します。
  • 04次のチャネルへの自動再試行と、失敗したチャネルのクールダウンに対応します。
  • 05ワイルドカード付きのキーごとのモデル権限、レート制限、モデルごとのタイムアウトを設定できます。
  • 06チャット、responses、画像、埋め込み、音声、モデレーション、モデル一覧の各エンドポイントに対応します。

ユースケース

  • 複数のLLMプロバイダーに単一のキーでルーティングする、個人または小規模チーム向けのAPIエンドポイントを運用する。
  • 複数のAPIキーやアカウントにトラフィックを分散し、レート制限エラーを減らす。
  • 既存のOpenAI互換クライアントから、コードを変更せずにClaudeやGeminiのモデルを利用する。
  • ユーザーごとのキー、利用枠、モデレーションを備えた共有ゲートウェイをホストする。

クイックスタート

  1. 1

    provider の base_url と API key を記載した api.yaml 設定ファイルを作成します

  2. 2

    README の説明に従い、設定ファイルを api.yaml としてマウントするか CONFIG_URL で指定して uni-api を起動します

使う前に知っておきたいこと

  • uni-api を起動する前に、YAML 設定ファイルを作成する必要があります。

収録されている特集

トピック

よくある質問

uni-api とは?
複数のLLMプロバイダーを、ロードバランシング対応の単一のOpenAI互換APIとして公開するセルフホスト型ゲートウェイ。 uni-apiは、LLM API向けのセルフホスト型ゲートウェイです。OpenAI、Anthropic、Gemini、Vertex、Azure、AWS、xAI、Cohere、Groq、Cloudflare、OpenRouterなど複数のバックエンドプロバイダーを、OpenAI形式に対応した単一のエンドポイントから呼び出せます。プロバイダーとAPIキーはWebコンソールではなくYAML設定ファイルで定義し、モデル名の変更やグループ化によって、クライアントからシンプルな名前で利用できるようにします。
uni-api は無料で使えますか?ライセンスは?
uni-api は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
uni-api は今もメンテナンスされていますか?
活発にメンテナンス中。uni-api の最終コミットは 2026年11月4日 です。
uni-api は何に使えますか?
複数のLLMプロバイダーに単一のキーでルーティングする、個人または小規模チーム向けのAPIエンドポイントを運用する。 複数のAPIキーやアカウントにトラフィックを分散し、レート制限エラーを減らす。 既存のOpenAI互換クライアントから、コードを変更せずにClaudeやGeminiのモデルを利用する。 ユーザーごとのキー、利用枠、モデレーションを備えた共有ゲートウェイをホストする。
uni-api のインストール方法は?
provider の base_url と API key を記載した api.yaml 設定ファイルを作成します README の説明に従い、設定ファイルを api.yaml としてマウントするか CONFIG_URL で指定して uni-api を起動します
uni-api はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/yym68686/uni-api

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト