SDK uyumluluğu ve temel URL kurulumu
Mevcut istemci kodunuzu özel uç noktamıza yönlendirerek bağlayın. Bu openai uyumlu API kod değişikliği yapmadan standart başlıkları ve SDK yapılandırmalarını kabul eder. Sadece temel URL'yi güncellemeniz ve panodan API anahtarınızı sağlamanız yeterlidir.
https://api.openrouterratelimits.com/v1 tüm istekler için tek giriş noktasıdır. Kimlik doğrulama, çoğu modern LLM kütüphanesinde bulunan standart Bearer token şemasını kullanır. Anahtarınızı şurada geçirin Authorization header kimliğinizi doğrulayın. Bu kurulum, OpenAI tarzı bir arayüz bekleyen herhangi bir istemciyle çalışır, bu da tedarikçi kilidinden bıkmış ekipler için geçişi anında hale getirir.
- Temel URL:
https://api.openrouterratelimits.com/v1 - Auth Header:
Authorization: Bearer YOUR_API_KEY - Model Kimliği:
uncensored
SSE ile akış yanıtlar
Ayarlayarak akışı etkinleştirin stream: true istem yükünüzde. API, gerçek zamanlı belirteç teslimi için Sunucu Tarafından Gönderilen Etkinlikler (SSE) döndürür. Her parça oluşturulan metke içerir; son parça kullanım istatistiklerini içerir. Bu yaklaşım, uzun bağlam pencereleri için bile UI'nizin yanıt vermesini sağlar.
Streaming, gecikmenin önemli olduğu sohbet arayüzleri veya rol yapma senaryoları için idealdir. Metni render etmek için tüm tamamlamanın bitmesini beklemeniz gerekmez. Son parça, doğru faturalandırma için token sayılarını her zaman içerir. Streaming sırasında oluşan hatalar bile, anında işleme için uygun HTTP durum kodlarını döndürür.
Fonksiyon çağırma ve JSON modu
Güvenilir veri çıkarma veya araç entegrasyonu için yapılandırılmış çıktılar kullanın. Etkinleştir response_format ile {"type": "json_object"} JSON uyumluluğunu zorlamak için. Bu mod, ekstra temizleme mantığı olmadan karmaşık iç içe yapıları ayrıştırmak için gereklidir. İşlev çağırma, dinamik ajan iş akışları için standart metin üretimiyle birlikte çalışır.
Araçlarınızı tools dizi ve belirt tool_choice katı uygulamalar için. Model, işlev çağrılarını standart OpenAI formatında döndürür. Bu özellik, tek bir adımda hem tek hem de çoklu araç çağrılarını destekler. Dış API'lerle veya veritabanlarıyla güvenilir şekilde etkileşim kuran ajanlar oluşturmak için kullanın.
Token'ları ve parametreleri yönetme
Üretimi, temperature gibi standart parametreleri kullanarak kontrol edin. temperature, top_p, ve stop. Bağlam penceresi, istem ve tamamlama için toplam 100.000 token'a kadar destekler. Bu, tek bir istekte geniş tarihsel bağlam veya büyük belge işleme imkanı sağlar.
Ayarla max_tokens çıktı uzunluğunu sınırlamak için, belirtilmediğinde varsayılan olarak 2,048 değerine düşer. Model şunu işler presence_penalty ve frequency_penalty stil kontrolü için. Token kullanımı, gerçek giriş ve çıkış sayılarına göre faturalandırılır. Hatalar token tüketmez, bu da başarısız istekler için adil faturalandırma sağlar.
Anahtar başına oran sınırlamalarını anlama
Her API anahtarı dakikada 300 istek ve eşzamanlı 8 istek için bir eşzamanlılık sınırı destekler. Bu sınır anahtar başına geçerlidir, bu nedenle birden fazla anahtar oluşturmak işlem hacminizi doğrusal olarak ölçeklendirir. Maksimum istek gövdesi boyutu 8 MB'tır, bu da çoğu kullanım durumu için bağlam penceresine sığar.
Hız sınırlamaları, kayan bir pencereye göre sürekli sıfırlanır. Limiti aşarsanız API 429 hatası döndürür. Öncelikli erişimi sürdürmek için ön ödemeli kredinizi yükseltin. Paylaşılan katmanların aksine, özel sunucularımız komşu gürültüsünden etkilenmez. Tutarlı performans için kullanım panelinizi izleyerek bu sınırlar içinde kalın.
Yaygın hatalarda sorun giderme
HTTP durum kodunu ve yanıt gövdesini kontrol ederek hataları yönetin. 401 hatası geçersiz veya eksik bir API anahtarı olduğunu gösterir. Kimlik doğrulama başarısız olursa anahtarınızı panelden yeniden oluşturun. 402 hatası ön ödemeli kredinizin tükendiği anlamına gelir; hizmeti sürdürmek için kripto ile yükleyin.
429 hatası, hız sınırlarını aştığınızı gösterir. İstek sıklığınızı azaltın veya iş yüklerini birden fazla anahtar arasında dağıtın. API bu hatalar için token ücreti almaz, bu nedenle yeniden denemeler için bakiye kaybetmezsiniz. Sağlamlık için istemci kitaplığınızın üstel geri çekilme ile yeniden denemeleri işlediğinden emin olun.
cURL
curl https://api.openrouterratelimits.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Process one million logs"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.openrouterratelimits.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openrouterratelimits.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);Akış
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)