messages は必須です。OpenAI-Project ヘッダーを指定する場合、重み付きルーティングを使用するには model を router に設定するか、空にするか、省略します。モデルのオーバーライドを使用するには provider/model-id を指定します。その他のフィールドは、選択したプロバイダーがサポートしている場合にプロキシが転送します。
ストリーミング
通常どおりstream: true を設定します。プロバイダーからのサーバー送信イベント (SSE) は、[DONE] も含めて受信次第そのまま転送されます。トレース対象のストリームでは、トークン数を取得するために、プロキシが内部でストリームの使用量をリクエストする場合があります。ただし、クライアント側に表示されるメッセージの内容が変わることはありません。
ストリーミングリクエストでは応答キャッシュを使用できません。
ツールと構造化出力
ツール定義、ツール選択、応答形式の JSON スキーマ、チャットテンプレートの制御、対数確率、マルチモーダルコンテンツ、プロバイダー拡張、推論フィールドは、生のトレースコントラクトにそのまま保持されます。不明なリクエストフィールドは、ルーティングによって置き換えられたり削除されたりしない限り、そのまま転送されます。優先順位
重み付きの project ルートでは、プロキシは次の順序で最終的なプロバイダーリクエストをビルドします。リクエストで応答のキャッシュ処理が有効になっている場合、プロキシは project のバージョンを解決した後、ターゲットを選択する前にキャッシュを確認します。キャッシュヒットした場合、以下のステップはスキップされます。- クライアントのリクエストボディを出発点とします。
modelを、選択されたターゲットのプロバイダーモデルに置き換えます。- ターゲットの
params_overrideの値をマージします。競合する場合はこちらの値が優先されます。 - プロバイダーへのディスパッチ前に、
forge.*およびwandb.*メタデータを削除します。 - 必要に応じて、トレースをサポートするストリームオプションを追加します。
model をリクエストされたプロバイダーのモデル ID に置き換え、呼び出し元のパラメーターとプロバイダーの推論のデフォルトをそのまま使用します。ファインチューニングしたモデルの推論設定 (デフォルトの temperature など) や、ターゲットの params_override の値は適用されません。オーバーライド時にその temperature を使用するには、リクエストで temperature を指定してください。
プロキシは、自身で構築したヘッダー以外のクライアントヘッダーを転送しません。そのため、Cookie、プロバイダーの APIキー、組織ヘッダー、無関係な認可ヘッダーが、選択されたプロバイダーに漏洩することはありません。唯一の例外は wandb-inference プロバイダーで、アトリビューションのために検証済みの OpenAI-Project の値を受け取ります。
Vapi リクエスト
プロキシは Vapi のリクエストラッパーを認識し、転送前に Vapi 固有のフィールドを削除します。また、会話を識別するフォールバックとしてcall.id を使用します。ただし、gen_ai.conversation.id が明示的に指定されている場合は、そちらが優先されます。