OpenRouter kullanıcıları için hızlı başlangıç
Temel URL'yi ve API anahtarını değiştirerek OpenRouter API çağrılarınızı dakikalar içinde sansürsüz uç noktamıza taşıyın. Bu kılavuz metin üretimi, akış ve yapılandırılmış çıktılar için temel entegrasyonları kapsar.
Kurulum ve Ayarlar
API'miz standart OpenAI SDK'larıyla tamamen uyumludur. OpenRouter'dan geçiş yapmak için yalnızca base_url ve api_key olmak üzere iki yapılandırma değerini güncellemeniz yeterlidir. İstemcinizi https://api.openrouterapi.cc/v1 adresine yönlendirin ve gösterge panelimizde oluşturulan anahtarı kullanın. Özel başlıklara veya karmaşık yönlendirme mantığına gerek yoktur. İstek verilecek model kimliği uncensored'dir.
SDK sürümünüzün base_url parametresini desteklediğinden emin olun. Ham bir HTTP istemcisi kullanıyorsanız, hedef URL'yi basitçe güncelleyin. Bu kurulum, yalnızca metin tamamlama istekleri gönderiyorsanız mevcut istemci kodunuzun değişiklik yapmadan çalışmasını sağlar.
Kimlik Doğrulama
Kimlik doğrulama standart Authorization başlığı aracılığıyla yapılır. API anahtarınızı Bearer token olarak iletin. Anahtar geçersiz veya süresi dolmuşsa API 401 hatası döndürür. Bazı sağlayıcıların aksine, başarısız istekler için ücret almıyoruz; hatalar ve reddetmeler ücretsizdir, bu nedenle kredinizi tüketmeden kimlik doğrulamasını test edebilirsiniz.
Her hesap aynı anda yalnızca bir aktif anahtar destekler. Yeni bir anahtar oluşturmak öncekini hemen geçersiz kılar. Anahtarınızı güvende tutun ve sızma şüphesi varsa değiştirin. Anahtar kayıt sonrası hemen gösterilir, sayfadan ayrılmadan önce kopyalayın.
Temel Sohbet Tamamlama
Temel işlevsellik POST /v1/chat/completions uç noktasıdır. İsteminizi bir mesaj listesi olarak gönderin ve metin yanıtı alın. Model, yasal yetişkin kullanım için içerik reddi olmadan yanıt verecek şekilde ayarlanmıştır; bu da yaratıcı, tartışmalı veya güvenlik araştırması konuları için uygundur.
model alanını uncensored olarak ayarlayın. Davranışı temperature, top_p ve stop gibi parametrelerle kontrol edebilirsiniz. API, response_format aracılığıyla JSON modunu ve tools aracılığıyla fonksiyon çağırma özelliğini destekler. Tüm istekler asenkron olarak işlenir ve model tamamlandığında tam metni alırsınız.
Akışlı Yanıtlar
İsteğinizde stream: true ayarlayarak akışı etkinleştirin. API kısmi yanıtlarla Sunucu Tarafından Gönderilen Olaylar (SSE) döndürür. Metin parçaları oluşturuldukları anda iletilir, bu da uygulamanızda gerçek zamanlı görüntülemeye olanak tanır.
Token kullanım bilgisi akışın son parçasında sağlanır. Bu, her bireysel token'ı ayrıştırmadan maliyetleri doğru şekilde izlemenizi sağlar. Akış, gecikmenin önemli olduğu sohbet arayüzleri için idealdir. İstemcinizin SSE'yi doğru şekilde işlediğinden ve akış bittiğinde bağlantıyı kapattığından emin olun.
Fonksiyon Çağırma
API, tools parametresi aracılığıyla fonksiyon çağırma desteği sunar. Fonksiyonlarınızı tools dizisinde tanımlayın ve tool_choice değerini auto veya belirli bir fonksiyon adına ayarlayın. Model, bir fonksiyon tetiklendiğinde yapılandırılmış JSON argümanları döndürecektir.
Bu özellik, LLM'i harici API'lere veya veritabanlarına entegre etmek için kullanışlıdır. Fonksiyon tanımlarınızın doğru olduğundan emin olun, çünkü model geçerli argümanlar oluşturmak için onlara güvenir. API fonksiyonları çalıştırmaz; yürütme mantığını uygulama kodunuzda siz yönetmelisiniz.
JSON Modu
Yapılandırılmış çıktılar için response_format: {"type": "json_object"} kullanın. Bu, modelin geçerli JSON döndürmesini zorlar ve bu da aşağı akış uygulamalarında veri ayrıştırma için gereklidir. JSON modu, basit veri çıkarma görevleri için fonksiyon çağırmaya göre genellikle daha güvenilirdir.
İsteminizin modele JSON döndürmesi gerektiğini açıkça belirttiğinden emin olun. Belirsiz istemler geçersiz JSON yanıtlarına neden olabilir. JSON modu hem standart hem de akış modlarında desteklenir. Tahmin edilebilir, makine tarafından okunabilir çıktılara ihtiyaç duyduğunuzda kullanın.
Limitler, Hatalar ve Bağlam
Bağlam penceresi istem ve tamamlama için birlikte 100.000 token'dır. Maksimum çıktı, istek başına 32.000 token'dır (max_tokens ayarlanmamışsa 2.048). Hız limitleri dakikada 300 istek ve anahtar başına 8 eşzamanlı istektir. İstek gövdeleri 8 MB ile sınırlıdır.
Hatalar standart HTTP kodlarını döndürür: geçersiz anahtarlar için 401, yetersiz kredi için 402 ve hız limitleri için 429. Kredi ön ödemelidir, bu nedenle 402 hatası bakiye yüklemeniz gerektiğini gösterir. Hatalar ve reddetmeler ücretsizdir, bu nedenle ek maliyet olmadan yeniden deneyebilirsiniz. Katı içerik sınırı, reşit olmayanlarla ilgili cinsel içeriği engeller.
cURL
curl https://api.openrouterapi.cc/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.openrouterapi.cc/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.openrouterapi.cc/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)API özellikleri
Kredi yüklemeden önce kontrol edebilmeniz için API'nin gerçek limitleri ve özellikleri tek yerde.
| Öğe | Değer |
|---|---|
| Biçim | OpenAI uyumlu: herhangi bir OpenAI SDK'sı base URL ve anahtarı değiştirerek çalışır |
| Model kimliği | uncensored |
| Kimlik doğrulama | Authorization: Bearer YOUR_KEY |
| Uç noktalar | POST /v1/chat/completions · GET /v1/models |
| Base URL | https://api.openrouterapi.cc/v1 |
| Akış | evet — server-sent events; son parça token kullanımını içerir |
| Fonksiyon çağırma | evet — tools, tool_choice; yanıtta tool_calls, akışta da; sonuçlar role: tool olarak |
| Parametreler | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Bağlam penceresi | 100.000 token (girdi + çıktı) |
| Maksimum çıktı | 100.000 token'lık pencerenin kalanına kadar; max_tokens isteğe bağlı (ayrı sınır yok) |
| JSON modu | response_format: {"type": "json_object"} |
| Hız limiti | anahtar başına dakikada 300 istek |
| Eşzamanlılık | anahtar başına aynı anda 8 istek |
| Yanıt başlıkları | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| İstek boyutu | en fazla 8 MB |
| Faturalama | ön ödemeli kredi, gerçek kullanıma göre; hatalar ve retler ücretsiz |
| Bonus | $50'dan itibaren +%5, $100'dan itibaren +%10 |
| Ücretsiz deneme | $0,50, 7 gün, kart gerekmez · Deneme anahtarı: 2 paralel istek, dakikada 60; ilk yüklemeden sonra tam limitler (8 ve 300) |
| Geçerlilik | ödenen kredinin süresi dolmaz, abonelik yok |
| Yükleme | USDT (TRC20) veya USDC (Base), $10–$500 arası herhangi bir tam tutar |
| Fiyat | 1M girdi token'ı $0,25 · 1M çıktı token'ı $1,00 |
| Anahtarlar | hesap başına bir aktif anahtar; yenisi eskisinin yerini alır |
| Giriş | Google veya e-posta ve şifre |
| İçerik | yetişkin içeriğe izin var; reşit olmayanları içeren cinsel içerik reddedilir |
Hata kodları
Hatalar sabit bir type ile JSON olarak döner; başarısız veya reddedilen istekler ücretlendirilmez.
| Kod | Tür | Anlamı |
|---|---|---|
400 | bad_request | geçersiz JSON, boş mesajlar, hatalı parametre veya bağlam çok uzun |
401 | missing_key · invalid_key · key_revoked | anahtar yok, yanlış veya değiştirilmiş |
402 | no_credit | kredi bitti — yükleyin, hemen devam eder |
403 | content_blocked | reşit olmayanları içeren cinsel içerik — reddedildi, ücret yok |
404 | not_found | bilinmeyen uç nokta |
413 | request_too_large | gövde 8 MB'tan büyük |
429 | rate_limited · concurrency | dakikada 300 veya aynı anda 8 aşıldı — bekleyip tekrar deneyin |
503 | upstream_busy | model meşgul — birkaç saniye sonra tekrar deneyin |
Sorular ve cevaplar
Bu resmi OpenRouter API mi?
Hayır, bu bağımsız bir hizmettir. OpenRouter temel URL yapısıyla uyumlu tek bir sansürsüz model sunuyoruz. OpenRouter'un birleşik modellerini veya yönlendirme mantığını sunmuyoruz.
API için nasıl ödeme yaparım?
Ödemeler yalnızca kripto ile kabul edilir: USDT (TRC20) veya USDC (Base). 10 $ ile 500 $ arasında herhangi bir tam tutarı bakiye yükleyebilirsiniz. Kredi kartları veya PayPal kabul edilmez.
İstemler eğitim için kullanılır mı?
Hayır, istimleriniz eğitim için kullanılmaz. Hesabınız için yalnızca bir e-posta adresi isteriz ve verilerinizi model iyileştirmesi için depolamayız veya kullanmayız.
Anahtarınız tek bir formun uzağında
Bir hesap oluşturun, anahtarı kopyalayın, temel URL'yi değiştirin. Tüm kurulum budur.