ユニバーサルエンドポイント で、モデルまたはプロバイダーのフォールバックを指定します。リクエスト失敗時に切り替え、信頼性を確保できます。
Cloudflare は、リクエストエラー または 事前に決めたリクエストタイムアウト に応じて、フォールバックプロバイダーを起動します。どのステップがリクエストを正常に処理したかは、レスポンスヘッダー cf-aig-step でわかります。
デフォルトでは、モデルへのリクエストがエラーを返すと、Cloudflare はフォールバックを起動します。
次の例では、リクエストはまず Workers AI Inference API に送られます。失敗した場合は OpenAI にフォールバックします。どのプロバイダーが処理したかは、レスポンスヘッダー cf-aig-step でわかります。
- Workers AI Inference API にリクエストを送ります。
- そのリクエストが失敗した場合、OpenAI に進みます。
graph TD
A[AI Gateway] --> B[Workers AI Inference API へのリクエスト]
B -->|成功| C[レスポンスを返す]
B -->|失敗| D[OpenAI API へのリクエスト]
D --> E[レスポンスを返す]
フォールバックは必要な数だけ追加できます。配列にもう 1 つオブジェクトを追加するだけです。
curl https://gateway.ai.cloudflare.com/v1/{account_id}/{gateway_id} \
--header 'Content-Type: application/json' \
--data '[
{
"provider": "workers-ai",
"endpoint": "@cf/meta/llama-3.1-8b-instruct",
"headers": {
"Authorization": "Bearer {cloudflare_token}",
"Content-Type": "application/json"
},
"query": {
"messages": [
{
"role": "system",
"content": "You are a friendly assistant"
},
{
"role": "user",
"content": "What is Cloudflare?"
}
]
}
},
{
"provider": "openai",
"endpoint": "chat/completions",
"headers": {
"Authorization": "Bearer {open_ai_token}",
"Content-Type": "application/json"
},
"query": {
"model": "gpt-4o-mini",
"stream": true,
"messages": [
{
"role": "user",
"content": "What is Cloudflare?"
}
]
}
}
]'ユニバーサルエンドポイント でフォールバックを使うと、レスポンスヘッダー cf-aig-step は、どのモデルがリクエストを正常に処理したかをステップ番号で示します。このヘッダーで、フォールバックが起動したか、最終的にどのモデルがレスポンスを処理したかがわかります。
cf-aig-step:0– 最初(プライマリ)のモデルが正常に使われました。cf-aig-step:1– リクエストは 2 番目のモデルにフォールバックしました。cf-aig-step:2– リクエストは 3 番目のモデルにフォールバックしました。- 以降のステップ – フォールバックするたびに、ステップ番号が 1 ずつ増えます。