Yeni başlayanlar için AIKılavuz
OpenAI uyumlu API: base_url nedir ve nasıl geçiş yapılır
OpenAI uyumlu bir API, OpenAI'ninkiyle aynı istekleri kabul eder. base_url, anahtar ve model kimliğini değiştirin, kodunuz ilk isteğini CheapTokens'e göndersin.

Bu sayfada
OpenAI uyumlu API, OpenAI'nin Chat Completions API'siyle aynı biçimde istekleri kabul eden ve aynı biçimde yanıt veren bir API'dir. Bir uygulamayı başka bir sağlayıcıya taşımak için genellikle üç değeri değiştirirsiniz: base_url (isteklerin gittiği yer), API anahtarı ve model kimliği. Kodunuzun geri kalanı, mesaj listesi ve yanıtı okuma şekliniz dahil, olduğu gibi kalır.
Bu kılavuz fikri sade bir dille açıklar ve Python ile curl kullanarak CheapTokens'e yapılan çalışan bir ilk istekle sona erer. CheapTokens hakkındaki bilgiler 22 Ekim 2026 tarihindeki belgeleriyle doğrulanmıştır.
"OpenAI uyumlu" ne anlama gelir?#
Bir API, internet üzerinden bir hizmetle konuşmak için bir dizi kuraldır (kelime yeni ise, ilk API isteğinizin nasıl çalıştığı ile başlayın). OpenAI'nin sohbet biçimi ortak bir standart haline geldi: birçok sağlayıcı ve araç aynı istek gövdesini kabul eder ve aynı yanıt şeklini döndürür. Böyle bir API'ye OpenAI uyumlu denir.
Pratikte bu, herhangi bir uyumlu sağlayıcıda üç şeyin aynı olduğu anlamına gelir:
- İstek: bir
modelalanı ve birmessageslistesi içeren bir JSON gövdesi; burada her mesajın birrole(system,userveyaassistant) vecontentdeğeri vardır. - Uç nokta yolu: temel URL'den sonra eklenen
/.chat/ completions - Yanıt: oluşturulan metnin
choices[0].içinde olduğu bir JSON nesnesi.message. content
Biçim paylaşıldığı için resmi SDK'lar ve birçok uygulama herhangi bir uyumlu sağlayıcıyla konuşabilir. Sadece isteği nereye göndereceklerini bilmeleri gerekir.
base_url nedir?#
base_url her isteğin başladığı adrestir. Bir SDK, çağrının yolunu buna ekleyerek tam adresi oluşturur.
Tabloyu sağa kaydırın →
| Bölüm | Örnek |
|---|---|
base_url |
https:/ |
| SDK tarafından eklenen yol | / |
| İsteğin tam adresi | https:/ |
Yani farklı bir base_url ayarladığınızda, aynı kod aynı türde isteği farklı bir sunucuya gönderir. CheapTokens temel URL'si https:/. API'si OpenAI Chat Completions ve Anthropic Messages ile uyumludur ve tek bir ön ödemeli bakiye tüm modelleri kapsar.
Değiştirdiğiniz üç değer#
Tabloyu sağa kaydırın →
| Değer | Nedir | Nereden gelir |
|---|---|---|
base_url |
API'nin adresi | https:/ |
| API anahtarı | API için gizli şifreniz | CheapTokens hesabınız. API anahtarının ne olduğu ve güvenle nasıl saklanacağı bölümüne bakın |
| Model kimliği | model alanındaki modelin tam adı |
CheapTokens belgeleri |
Model kimliği dikkat gerektirir. Farklı sağlayıcılar aynı modele farklı kimlikler verir, bu nedenle başka bir hizmetten gelen kimlik burada çalışmaz. Kimlikleri CheapTokens belgelerinden alın. Şu anda mevcut kimlikler:
Tabloyu sağa kaydırın →
| Model | Model kimliği | Bağlam | Yanıt başına maksimum çıktı |
|---|---|---|---|
| GLM-5.3-Flash | zai- |
390K | 8.192 token |
| DeepSeek-V4-Flash | deepseek- |
380K | 32.768 token |
| MiniMax-M2.7 | MiniMaxAI/ |
180K | 8.192 token |
DeepSeek-V4-Flash yanıt başına 32.768 token'a kadar döndürür ve 380K bağlama sahiptir; GLM-5.3-Flash 390K bağlama sahiptir; MiniMax-M2.7 180K bağlama sahiptir. Üçü de aynı bakiyeden faturalandırılır, bu nedenle aralarında geçiş yapmak yalnızca model kimliğini değiştirmek anlamına gelir.
Python'da ilk istek#
openai paketini kurun, ardından anahtarınızı koda yazmak yerine bir ortam değişkeninde saklayın:
pip install openai
export CHEAPTOKENS_API_KEY="YOUR_CHEAPTOKENS_KEY"Şimdi kod. Standart bir OpenAI örneğinden tek fark base_url argümanı, anahtar ve model kimliğidir:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1", # 1. where requests go
api_key=os.environ["CHEAPTOKENS_API_KEY"], # 2. your CheapTokens key
)
response = client.chat.completions.create(
model="MiniMaxAI/MiniMax-M2.7", # 3. model id from the docs
messages=[
{"role": "system", "content": "You answer briefly."},
{"role": "user", "content": "Explain base_url in one sentence."},
],
)
print(response.choices[0].message.content)Örnekteki anahtar bir yer tutucudur: YOUR_ yerine kendi anahtarınızı koyun ve gerçek bir anahtarı asla bir depoya işlemeyin.
Zaten sahip olduğunuz bir uygulama ayarları bir yapılandırma dosyasından veya ortam değişkenlerinden okuyorsa, kodunu hiç düzenlemeniz gerekmez. Temel URL, API temeli veya uç nokta adlı alanları arayın ve aynı üç değeri oraya girin.
curl ile aynı istek#
curl, SDK'nın perde arkasında ne yaptığını gösterir: temel URL artı yol, Authorization başlığındaki anahtar ve bir JSON gövdesi.
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMaxAI/MiniMax-M2.7",
"messages": [
{"role": "user", "content": "Explain base_url in one sentence."}
]
}'Ne görmelisiniz#
Her şey doğru ayarlandığında, Python betiği kısa bir metin yanıtı yazdırır ve curl bir JSON nesnesi yazdırır. choices listesini arayın: yanıtın metni choices[0]. içindedir. Bunu görüyorsanız, CheapTokens'e ilk isteğiniz çalıştı ve gerçek uygulamanıza geçebilirsiniz.
Maliyeti nedir?#
Faturalandırma, girdi ve çıktı için ayrı ayrı sayılan token'lara göredir (girdi ve çıktı token'ları bölümüne bakın). Örneğin, MiniMax-M2.7 şu anda 1M girdi token'ı başına $0.05 ve 1M çıktı token'ı başına $0.15 tutarındadır. Aşağıdaki tablo her zaman tüm modeller için güncel fiyatları gösterir, yoğun saat ek ücreti yoktur.
| Model | Bağlam | Giriş $/1M | Çıkış $/1M | OpenRouter giriş | OpenRouter çıkış |
|---|---|---|---|---|---|
| GLM-5.3-Flash reasoning | 390K | $0.02 | $0.04 | $0.0413 | $0.0758 |
| DeepSeek-V4-Flash | 380K | $0.015 | $0.10 | $0.0475 | $0.1568 |
| MiniMax-M2.7 | 180K | $0.05 | $0.15 | $0.30 | $1.20 |
Fiyatlar 1M token başına USD cinsindendir. OpenRouter rakamları karşılaştırma amaçlı gösterilmiştir ve değişebilir.
Tüm modellerin fiyatları ayrıca CheapTokens fiyatlandırma sayfasında da bulunur.
Çalışmazsa#
- Kimlik doğrulama hatası (genellikle 401): anahtar eksik, yanlış yazılmış veya fazladan boşluklar var. Ortam değişkeninin betiği çalıştırdığınız aynı terminalde ayarlandığını kontrol edin.
- "Bulunamadı" (genellikle 404):
base_urldeğerini kontrol edin./v1ile bitmelidir ve bir SDK kullanırken/kendiniz eklememelisiniz, aksi halde yol ikiye katlanır.chat/ completions - Bilinmeyen model: model kimliğini yukarıdaki tablodan veya belgelerden tam olarak kopyalayın, büyük harfler ve eğik çizgiden önceki kısım dahil.
- Bağlantı yok veya zaman aşımı: yaygın bağlantı hataları ve nasıl düzeltileceği bölümüne bakın.
- Yanıt cümle ortasında kesildi:
max_tokenssınırına ulaşıldı, bu bir AI yanıtının neden cümle ortasında durduğu bölümünde ele alınmıştır.
Sonraki adımlar#
İlk istek çalıştığında, Python'da akış ekleyebilir, aynı üç değeri editörünüze veya ajanınıza takabilir ya da AI model adlarının nasıl okunacağı bölümünü okuyabilirsiniz. Kurulum ayrıntıları ve tam model listesi CheapTokens belgelerinde bulunur.



