Yan projelerde yapay zeka modellerini kullanmaya başlamak, çoğu geliştirici için kabus gibi bir süreç olabilir. OpenAI, Claude ve diğer hizmetler için ayrı API anahtarları oluşturmak, farklı hata mesajlarıyla karşılaşmak ve her seferinde yeni bir fatura paneline göz atmak zorunda kalıyorsunuz. Bu rutin işlemler, aslında kod yazmaya başlamadan önce saatlerce uğraşmanıza neden oluyor.
İşte tam da bu noktada, geliştirici Ethan Bensinger, kendi karşılaştığı bu sorunu çözmek için Apiarium adlı bir geçit (gateway) projesi geliştirmeye karar verdi. Proje, farklı yapay zeka sağlayıcılarını tek bir API altında birleştirerek, geliştiricilerin sadece bir hesap ve bir fatura ile tüm modelleri kullanabilmesini sağlıyor.
Neden LiteLLM veya OpenRouter Yerine Apiarium?
LiteLLM ve OpenRouter gibi projeler, çok sayıda sağlayıcıyı desteklemeleriyle tanınıyor. Ancak Apiarium, farklı bir yaklaşım benimsiyor:
- Kredi tabanlı faturalandırma: Kullanıcılar, hangi modeli kullandıklarına bakılmaksızın her zaman ne kadar harcama yaptıklarını net bir şekilde görebiliyor. Örneğin, metin üretimi 1-20 kredi arasında değişirken, görüntü üretimi 100 kredi, metinden konuşmaya dönüştürme ise her 1.000 karakter için 10 kredi olarak fiyatlandırılıyor.
- Tek normalleştirilmiş API: Farklı kategorilerdeki hizmetler (metin, görüntü, metinden konuşmaya çevirme, transkripsiyon) için aynı API yapısını kullanıyor. Bu sayede, her yeni hizmet eklendiğinde, geliştiricilerin kodlarını güncellemesine gerek kalmıyor.
- Kendi kendine barındırılabilir altyapı: Apiarium, tamamen kendi sunucularınızda çalıştırılabilir. Bu da veri gizliliği ve kontrol açısından önemli bir avantaj sağlıyor.
- Basit ve şeffaf fiyatlandırma: Sağlayıcılar arasında karmaşık fiyatlandırma politikaları yerine, tek bir fiyatlandırma sistemi sunuyor. Böylece kullanıcılar, hangi modeli kullandıklarına bakılmaksızın ne ödeyeceklerini kolayca anlayabiliyor.
Apiarium’ın hedef kitlesi, büyük ölçekli yapay zeka altyapıları yöneten ekipler değil; yan projelerinde yapay zeka kullanmak isteyen, ancak API’leri sarma işleminden yorulan geliştiriciler.
Apiarium Nasıl Çalışıyor?
Apiarium’ın mimarisi, farklı yapay zeka hizmetlerini tek bir geçitte toplamayı hedefliyor. Sistem, aşağıdaki gibi çalışıyor:
İstemci ────▼ Apiarium ────► Hizmet Sağlayıcıları
├── /llm → OpenAI, Anthropic (daha fazla eklenecek)
├── /image → gpt-image-1 (daha fazla eklenecek)
├── /tts → OpenAI TTS, ElevenLabs (yakında)
└── /transcribe → Whisper (yakında)Her yeni hizmet eklendiğinde, API sözleşmesi değişmiyor. Geliştiriciler, aynı uç noktaları ve yetkilendirme yöntemlerini kullanmaya devam ediyor. Örneğin, hem GPT-4o-mini hem de Claude Haiku için aynı POST /llm uç noktası kullanılıyor:
# GPT-4o-mini kullanımı
curl -X POST \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-4o-mini","messages":[{"role":"user","content":"Merhaba"}]}'
# Aynı uç nokta üzerinden Claude Haiku kullanımı
curl -X POST \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"claude-haiku","messages":[{"role":"user","content":"Merhaba"}]}'Teknik Kararlar ve Tasarım İlkeleri
Apiarium’ın altyapısı, geliştiricilerin karşılaşabileceği yaygın sorunları çözmek üzere tasarlandı. İşte projenin temel teknik kararları:
1. Kredi tabanlı faturalandırma sistemi Farklı modeller için farklı token fiyatlandırmaları kullanmak yerine, Apiarium tüm modelleri tek bir kredi sistemi altında topluyor. Bu sayede, kullanıcılar harcama takibini çok daha basit bir şekilde yapabiliyor. Örneğin, metin üretiminde kullanılan kredi miktarı modelin karmaşıklığına göre 1 ila 20 kredi arasında değişirken, görüntü üretimi sabit 100 kredi olarak fiyatlandırılıyor. Metinden konuşmaya çevirmede ise her 1.000 karakter için 10 kredi ücretlendiriliyor.
2. Normalleştirilmiş hata formatı Farklı yapay zeka sağlayıcıları, genellikle farklı hata mesajları ve kodları döndürüyor. Apiarium, tüm sağlayıcılardan gelen hataları aynı yapıya dönüştürüyor. Böylece geliştiriciler, hangi sağlayıcıyı kullanırlarsa kullansınlar, aynı hata yapısını görüyor ve buna göre kodlarını yönetebiliyor:
{
"error": "Limit aşıldı. 30 saniye içinde tekrar deneyin.",
"code": "rate_limit_exceeded",
"retry_after": 30
}3. Sağlayıcı soyutlama katmanı Her yeni sağlayıcı eklendiğinde, Apiarium’ın sunduğu API’nin davranışında bir değişiklik olmuyor. Bunun nedeni, her sağlayıcı için ayrı bir adaptörün geliştirilmesi ve tüm adaptörlerin aynı içsel yanıt formatını sağlaması. Bu sayede, yeni bir sağlayıcı eklemek, genellikle sadece yeni bir adaptörün uygulanmasını gerektiriyor.
Yeniden Başlasaydım Ne Yapardım?
Projeyi yeniden tasarlama fırsatı olsaydı, Bensinger ilk olarak sağlayıcı soyutlama katmanını tamamen bitirirdi. Her yeni model eklenirken karşılaşılan akış, token muhasebesi ve hata işleme gibi zorluklar, projenin başlangıç aşamasında öngörülmemişti. Bu katmanın baştan tasarlanması, ilerleyen süreçte daha az sorun yaşanmasını sağlayabilirdi.
Günümüzdeki Durum ve Gelecek Planları
Apiarium, birkaç gün önce yayınlandı ve altyapısı şu anda sağlam bir şekilde çalışıyor. Projenin geleceği hakkında konuşan Bensinger, özellikle yan projelerinde yapay zeka kullanmak isteyen geliştiricilerin bu geçitten faydalanıp faydalanmayacağını merak ettiğini belirtiyor. Eğer Apiarium, geliştiricilerin ai-utils.js gibi dosyaları sürekli kopyalamaktan kurtulmalarına yardımcı olursa, proje başarılı olarak kabul edilecek.
Bensinger, kullanıcıların geri bildirimlerine büyük önem veriyor. Eğer Apiarium’ın çözmeye çalıştığı problem yanlış algılanmışsa ya da geliştiricilerin gerçek ihtiyaçlarına cevap vermiyorsa, bunu öğrenmek istiyor. Bu proje, yapay zeka dünyasında daha basit ve erişilebilir bir gelecek yaratmayı hedefliyor.
Geliştiricilerin, Apiarium’ı kullanarak yapay zeka modellerine erişimini basitleştirebilecekleri ve zaman kazanabilecekleri bir araç olduğunu umuyoruz. Eğer siz de böyle bir aracın eksikliğini hissediyorsanız, Apiarium’ı deneyebilir ve geri bildirimlerinizi paylaşabilirsiniz.
Yapay zeka özeti
Farklı yapay zeka sağlayıcılarını tek bir API altında toplayan Apiarium, geliştiricilerin karmaşık API kurulumlarından kurtulmasını sağlıyor. Kredi tabanlı basit faturalandırma ve normalize hata yapılarıyla projelerinizi hızlandırın.