model と messages は必須です。その他のフィールドは、選択したプロバイダーがサポートしている場合に転送されます。
ストリーミング
通常どおりstream: true を設定します。プロバイダーからのサーバー送信イベント (SSE) は、[DONE] も含めて受信次第そのまま転送されます。トレース対象のストリームでは、トークン数を取得するために、プロキシが内部でストリームの使用量をリクエストする場合があります。ただし、クライアント側に表示されるメッセージの内容が変わることはありません。
ストリーミングリクエストでは応答キャッシュを使用できません。
ツールと構造化出力
ツール定義、ツール選択、応答形式の JSON スキーマ、チャットテンプレートの制御、対数確率、マルチモーダルコンテンツ、プロバイダー拡張、推論フィールドは、生のトレースコントラクトにそのまま保持されます。不明なリクエストフィールドは、ルーティングによって置き換えられたり削除されたりしない限り、そのまま転送されます。優先順位
project ルートの場合、プロバイダーに実際に送信されるリクエストは次の順序で構築されます。リクエストで 応答キャッシュ が有効になっている場合、プロキシはステップ 2 の後にキャッシュを確認し、キャッシュヒット時には残りのステップをスキップします。- クライアントから送信されたリクエスト本文を起点とします。
- プロキシモデル名を、選択されたプロバイダーのモデルに置き換えます。
- ターゲットの
params_overrideの値をマージします。値が競合する場合は、こちらが優先されます。 - プロバイダーに送信する前に、
wandb.*のルーティングメタデータを削除します。 - 必要に応じて、トレースに対応したストリームオプションを追加します。
Vapi リクエスト
プロキシは Vapi のリクエストラッパーを認識し、転送前に Vapi 固有のフィールドを削除します。また、会話を識別するフォールバックとしてcall.id を使用します。ただし、wandb.thread_id が明示的に指定されている場合は、そちらが優先されます。