Uç noktalar
Sağlayıcı yönlendirme
provider nesnesiyle isteklerin hangi sağlayıcıya gideceğini belirleyin, fiyat, hız ve veri politikasına göre sıralayın, modeller arası yedekleme kurun.
Playground’da deneBirçok model, her birinin kendi fiyatı, hızı ve veri politikası olan birkaç sağlayıcı tarafından sunulur. Varsayılan olarak istekler fiyat ve çalışma süresine göre sağlayıcılar arasında yük dengelemesiyle dağıtılır ve biri başarısız olursa başka bir sağlayıcıya geçilir. Bunu değiştirmek için provider nesnesini, farklı modeller arasında yedekleme için models alanını kullanın.
provider nesnesi
| Alan | Tür | Açıklama |
|---|---|---|
order | string[] | Önce denenecek sağlayıcılar, sırayla, örn. ["Anthropic", "Amazon Bedrock"]. |
allow_fallbacks | boolean | false, isteğin order veya only dışındaki sağlayıcılara gitmesini engeller (varsayılan true). |
only | string[] | Yalnızca bu sağlayıcılara izin verir. |
ignore | string[] | Bu sağlayıcıları asla kullanmaz. |
sort | string | Yük dengeleme yerine "price", "throughput" veya "latency". |
data_collection | string | "deny", prompt'ları saklayabilecek veya eğitimde kullanabilecek sağlayıcıları dışlar. Varsayılan "allow". |
require_parameters | boolean | Yalnızca isteğinizdeki her parametreyi (örn. tools, response_format) destekleyen sağlayıcıları kullanır. |
quantizations | string[] | İzin verilen hassasiyetler, örn. ["fp8", "bf16"]. |
max_price | object | Milyon token başına USD olarak üst fiyat limitleri, örn. { "prompt": 1, "completion": 3 }. |
{
"model": "meta-llama/llama-3.3-70b-instruct",
"messages": [{ "role": "user", "content": "Hello" }],
"provider": {
"order": ["Groq", "Fireworks"],
"allow_fallbacks": true,
"data_collection": "deny",
"sort": "throughput"
}
}
:nitro varyantı sort: "throughput" için, :floor ise sort: "price" için kısayoldur. Bkz. Model kimlikleri.
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api14.com/api/v1",
apiKey: process.env.API14_API_KEY,
});
const result = await client.chat.completions.create({
"model": "openai/gpt-5-mini",
"messages": [
{
"role": "user",
"content": "Explain vector databases in two sentences."
}
]
});
console.log(result.choices[0].message.content);
models ile model yedekleme
Bir model listesi geçin. İlki başarısız olursa (kesinti, hız limiti, moderasyon veya bağlam uzunluğu hatası) sıradaki denenir:
{
"models": ["anthropic/claude-sonnet-4.5", "openai/gpt-5-mini", "google/gemini-2.5-flash"],
"messages": [{ "role": "user", "content": "Summarize this ticket." }]
}
modelsayarlıysamodelisteğe bağlıdır. İkisini de gönderirseniz öncemodeldenenir.- Listedeki her model, istek gönderilmeden önce ağ geçidi kontrollerinden geçmelidir: var olmalı ve etkin olmalı, anahtarınızın model izin listesinde bulunmalı ve planınıza dahil olmalıdır. Kontrolden geçemeyen tek bir model tüm isteği reddettirir (
403 model_not_allowed,403 plan_requiredveya404 model_not_found). - Yalnızca yanıt veren model için, kendi fiyatı üzerinden faturalandırılırsınız. Yanıttaki
modelalanı hangisi olduğunu söyler.
Yanıt
{
"id": "gen-1760000000-route",
"model": "openai/gpt-5-mini",
"provider": "OpenAI",
"choices": [{ "index": 0, "finish_reason": "stop", "message": { "role": "assistant", "content": "..." } }],
"usage": { "prompt_tokens": 140, "completion_tokens": 60, "total_tokens": 200, "cost": 0.000155 }
}
provider, isteği hangi sağlayıcının sunduğunu gösterir. Generation sorgulama tam yönlendirme ayrıntılarını gösterir.
Hatalar
Hiçbir sağlayıcı filtrelerinizle eşleşmezse (örn. only ile birlikte require_parameters), sağlayıcı 404 "No endpoints found" döndürür. Diğer hatalar Chat completions ile aynıdır. Bkz. Hatalar.