logo

ルーティング、課金とエラー

LLMoxy はリクエストを利用可能な上流プロバイダーにルーティングし、上流が一時的に故障した場合に自動的に再試行します。ユーザーはモデルを指定するだけで、残りはゲートウェイが処理します。

ルーティング

リクエストを送信する際に呼び出したい model を指定すると、LLMoxy は以下を行います:

  1. そのモデルをサポートする健全なプロバイダーを選んでリクエストを送信します。
  2. 一時的なエラー(例:5xx、一部の 429、タイムアウト)が発生した場合、別のプロバイダーに自動的に切り替えて再試行します。
  3. すべてのプロバイダーが失敗した場合、最後のエラーを OpenAI スタイルで返します。

ルーティングルールを設定する必要も、現在のリクエストがどのプロバイダーに落ちたかを知る必要もありません。

リクエスト形式

同じキーで異なる形式のエンドポイントを通じてモデルを呼び出せます。アプリケーションが既に使用しているものを選んでください:

形式ルート
OpenAI ChatPOST /v1/chat/completions
OpenAI ResponsesPOST /v1/responses
Anthropic MessagesPOST /v1/messages
GeminiPOST /v1beta/models/{model}:generateContent
EmbeddingsPOST /v1/embeddings
RerankPOST /v1/rerank
OpenAI VideoPOST /v1/videos

課金

リクエスト完了後、LLMoxy は上流が返したトークン使用量に基づいて課金します。これにはプロンプト、コンプリーション、キャッシュ、音声、画像、推論トークンが含まれます。課金はリクエストごとです。月額サブスクリプションの最低料金はありません。

リアルタイム残高と単価はコンソールを基準とします:

  • ウォレット:残高とチャージ履歴。
  • 価格:各モデルの現在の単価。
  • ログ:各リクエストの実際の課金額とトークン数。

エラーレスポンス

すべてのエラーは統一された OpenAI スタイルの構造を使用します:

{
  "error": {
    "message": "error message",
    "type": "invalid_request_error",
    "param": null,
    "code": "invalid_request"
  }
}

一般的なステータスコード:

ステータスコード一般的な原因
400無効なリクエストボディまたはサポートされていないパラメータ。
401キーが欠落している、スペルミス、または無効化されている。
403アカウントが無効化されている、IP が許可リストにない、残高が尽きている、またはサブスクリプションが利用不可。
404モデルまたはルートが利用不可。
429キーのレート制限がトリガーされた、またはすべての上流プロバイダーが同時に容量上限に達した。
5xxすべての上流プロバイダーがエラーを返した、またはゲートウェイ内部の故障。

金額や使用量に関する表示は、コンソールまたは最新のリクエストレスポンスを直接読み取ってください。キャッシュされた値を使用しないでください。