LiteLLM(ライトエルエルエム)
Python製のオープンソースLLM統一ゲートウェイ。OpenAI APIフォーマットで100以上のLLMプロバイダー(Anthropic・Google・Azure・Cohere・Mistral等)を呼び出せるプロキシサーバー。コスト追跡・ロードバランシング・フォールバック・レート制限管理を一元提供する。
LiteLLM — 100+LLMプロバイダー対応の統一ゲートウェイ
LiteLLM は BerriAI が開発するオープンソースの LLM ゲートウェイです。OpenAI API フォーマットを共通インターフェースとして、Anthropic Claude・Google Gemini・Azure OpenAI・Cohere・Mistral・Together AI など100以上のプロバイダーを統一して呼び出せます。2024年末時点で GitHub Stars が25,000を超え、LLM インフラの標準ツールとして定着しています。
主要機能
1. 統一 API(OpenAI 互換)
import litellm
# Claude を OpenAI SDK 形式で呼び出す
response = litellm.completion(
model="claude-3-5-sonnet-20241022",
messages=[{"role": "user", "content": "Hello"}]
)
# Gemini も同じ形式
response = litellm.completion(
model="gemini/gemini-1.5-pro",
messages=[{"role": "user", "content": "Hello"}]
)
2. フォールバック設定
# プライマリモデルが失敗した場合の代替モデルチェーン
response = litellm.completion(
model="gpt-4o",
messages=[{"role": "user", "content": "Hello"}],
fallbacks=["claude-3-5-sonnet-20241022", "gemini/gemini-1.5-pro"]
)
3. ロードバランシング
# litellm_config.yaml
model_list:
- model_name: gpt-4
litellm_params:
model: azure/gpt-4
api_key: os.environ/AZURE_API_KEY_1
- model_name: gpt-4
litellm_params:
model: azure/gpt-4
api_key: os.environ/AZURE_API_KEY_2
router_settings:
routing_strategy: least-busy
Proxy Server モード
LiteLLM は Python SDK 単体での利用に加え、OpenAI 互換 REST API サーバーとして起動できます:
pip install 'litellm[proxy]'
litellm --model gpt-3.5-turbo # localhost:4000 で起動
これにより、OpenAI SDK を使う任意のアプリが BaseURL を変更するだけで100+プロバイダーに対応できます:
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:4000",
api_key="any-key"
)
コスト追跡とオブザーバビリティ
- コスト追跡: 全モデルのトークン使用量と推定コストをリアルタイム集計
- 予算管理: ユーザー/チームごとに月次予算上限を設定しアラート
- Prometheus メトリクス:
/metricsエンドポイントで Grafana ダッシュボード連携 - ログ統合: LangSmith・LangFuse・Helicone・Datadog への送信
対応プロバイダー(主要なもの)
| カテゴリ | プロバイダー |
|---|---|
| クラウド大手 | OpenAI, Anthropic, Google (Gemini/Vertex), Azure, AWS Bedrock |
| オープンソース系 | Together AI, Groq, Fireworks, Perplexity |
| ヨーロッパ系 | Mistral AI, Cohere |
| ローカル | Ollama, vLLM, LM Studio, Jan AI |
| 特化型 | Replicate, Hugging Face TGI, Anyscale |
セキュリティと認証
チーム環境では仮想キー(Virtual Keys)機能で各チームメンバーに異なるキーを発行し、使用量・コストを個別に管理できます。
curl -X POST http://localhost:4000/key/generate \
-H "Authorization: Bearer admin-key" \
-d '{"models": ["gpt-4o"], "max_budget": 100, "user_id": "dev-team-1"}'
2025年の動向
2025年初頭のアップデートでは OpenAI Responses API・Computer Use API 対応、Gemini 2.0 Flash の即時対応、RouteLLM との公式インテグレーションが追加されました。エンタープライズ向け LiteLLM Enterprise では SSO・監査ログ・高可用性クラスター構成が提供されています。
よくある質問
Q1: LiteLLM と OpenRouter の違いは? A: OpenRouter はクラウドサービス(API キーが OpenRouter 経由)、LiteLLM はセルフホスト型ゲートウェイ(自社インフラに API キーを保管)。データプライバシー要件がある場合は LiteLLM が適します。
Q2: ストリーミングは対応しているか?
A: はい。stream=True パラメータで全プロバイダーのストリーミングレスポンスを OpenAI 互換形式に変換します。
Q3: レート制限はどう扱うか?
A: max_retries と retry_delay 設定でプロバイダーのレート制限エラーを自動リトライ。複数のAPIキーをロードバランシングしてスループットを向上させる構成もサポートします。