Daha iyi ve daha ucuz yapay zekâ modelleri sürekli çıkıyor. Bir uygulamayı yayınlarken mantıklı görünen model, birkaç hafta sonra artık en iyi seçenek olmayabilir. Ancak o modelin ID’si yayınlanmış bir iOS uygulamasında veya dağıtılmış bir sunucuda yer alıyorsa, her yükseltme yeni bir sürüm anlamına gelir. Kullanıcılar eski sürümleri kullanırken uygulamayı nasıl güncel tutabilirsiniz? Haimaker, uygulamanızın kullandığı modelleri yeniden dağıtım yapmadan güncellemenizi sağlar. Model ID’si olarak haimaker/auto gönderin, ardından panel üzerinden varsayılan modeli veya prompt’a özgü kuralları değiştirin.
Bu sorun her model sürümüyle birlikte tekrarlanır. Geliştiricilerin kaliteyi, maliyeti ve yetenekleri kendi iş yüklerine karşı test etmesi gerekir. Model seçimini dağıtılmış kodun dışında tutmak, geliştiricilerin bu sonuçlara göre başka bir uygulama veya sunucu sürümü planlamaya gerek kalmadan hareket etmesini sağlar.
Sabit bir model ID’si yayından sonra eskir
Sabit bir model ID’si, her model yükseltmesini uygulamanın yayınlama sürecine bağımlı kılar. İlk sürümü geliştirirken bu durum yönetilebilir. Yayından sonra ise her umut verici model veya fiyat değişikliği; kod düzenleme, test çalıştırma, sunucu dağıtma veya mobil güncelleme gönderme anlamına gelebilir. Yeni modeller, uygulama sürümleri arasında çıkabilir.
iOS uygulamalarında istemciye gömülü bir model ID’si, güncelleme yüklememiş kullanıcılar için değiştirilemez. Apple, uygulama güncellemelerini dağıtımdan önce inceler ve kullanıcılar yeni bir build mevcut olduktan çok sonra bile eski sürümleri kullanmaya devam edebilir. API çağrısını backend’e taşımak, API anahtarını uygulamadan uzak tutar; ancak o backend’de sabit kodlanmış bir model ID’si hâlâ bir yapılandırma değişikliği veya dağıtım gerektirir.
Tek başına bir ağ geçidi uç noktası sorunu çözmez. Bir istek sabit bir model adı belirtiyorsa, çağıran taraf o seçime bağlı kalır. Örneğin OpenRouter, adlandırılmış modellerin yanı sıra kendi openrouter/auto yönlendiricisini de destekler. Otomatik yönlendirici, altta yatan model seçimini dağıtılmış kodun dışında tutabilir. Haimaker ise uygulama yayınlandıktan sonra kendi prompt sınıflarınız için yönlendirme politikasını ayarlamanızı sağlar.
Dağıtılmış bir uygulama yeni modellere nasıl ayak uydurabilir?
Uygulamadan tek bir kararlı model ID’si gönderin ve seçim politikasını Haimaker’da tutun. Yönlendiricinin, eşleşmeyen istekler için bir varsayılan modeli ve belirli türdeki prompt’ları başka yerlere yönlendiren kuralları vardır. Yönlendirici bir API anahtarına atanır. Hedeflerini değiştirdiğinizde, mevcut uygulama haimaker/auto göndermeye devam etse bile sonraki istekler farklı modellere ulaşabilir.
Bir mobil üründe uygulama backend’inizi çağırmalı, backend de Haimaker’ı çağırmalıdır. Böylece API anahtarı kullanıcı cihazlarında saklanmaz. Bir sunucu uygulaması aynı kalıbı doğrudan kullanabilir: istek kodu değişmeden kalırken bir operatör yönlendiriciyi ayarlar. Kurulum dokümantasyonu bir yönlendirici oluşturmayı, varsayılan model seçmeyi, API anahtarı atamayı ve istekleri test etmeyi gösterir.
import OpenAI from "openai";
// Run this on your backend; do not bundle the API key in a mobile app.
const client = new OpenAI({
baseURL: "https://api.haimaker.ai/v1",
apiKey: process.env.HAIMAKER_API_KEY,
});
const response = await client.chat.completions.create({
model: "haimaker/auto",
messages: [{ role: "user", content: prompt }],
});
Yukarıdaki kod, varsayılan model değiştiğinde yeni bir model adına ihtiyaç duymaz. Haimaker yönlendirici yapılandırmalarını 60 saniyeye kadar önbellekte tutar; bu nedenle bir panel düzenlemesinin tüm sonraki isteklere ulaşması için bir dakika bekleyin.
Varsayılanı güncelleyin, ardından daha ucuz işleri ayrı yönlendirin
Varsayılan modeli değiştirmek, genel iş yükünü yeni modele taşır. Kurallar ise yeni bir model belirli bir görev için daha ucuz veya daha iyi olduğunda daha dar değişiklikler yapmanızı sağlar. Bu ayrım önemlidir: bir uygulama uzun metin düzenleme için yetenekli bir varsayılana ihtiyaç duyarken kısa başlık önerilerini daha düşük maliyetli bir modele gönderebilir. Her iki karar da yayından sonra, istek yapan tarafın model ID’sini değiştirmeden yapılabilir.
Tüm yapay zekâ isteklerini aynı yönlendirici üzerinden gönderen bir yazı uygulaması düşünün. Yeni çıkan bir model uzun metin düzenlemelerini iyileştiriyor; ekip onu test edip yönlendiricinin varsayılanını değiştiriyor. Daha sonra, daha ucuz bir model başlık önerilerini yeterince iyi karşılıyor. Ekip, “Bu not için beş kısa başlık öner” ve “Bu taslağa özlü bir başlık ver” gibi örneklerle bir kural ekliyor ve o kuralı daha ucuz modele yönlendiriyor. Eski uygulama sürümlerindeki kullanıcılar her iki değişikliği de mevcut backend üzerinden alıyor.
Örnek tabanlı kurallar için görev başına 3 ila 10 temsili prompt kullanın. Bir eşleşme, isteği kuralın hedefine yönlendirir; eşleşmeyen istekler varsayılanı kullanır. Yetenek kontrolleri, bir kuralın görsel, araç kullanımı veya yapılandırılmış çıktı isteğini bunu işleyemeyen bir modele göndermesini engeller. Yönlendirme logları çözümlenen modeli ve onu seçen kuralı gösterir. Eşleştirme ve yedekleme mekanizmaları için yönlendirme kılavuzumuza ve maliyet yönlendirme kılavuzumuza bakın.
Bu, yayından sonra bir ekip için neyi değiştirir?
Ana fayda, model seçiminin yayınlama takvimine değil, iş yüküne göre yapılabilmesidir. Bir ekip yeni bir varsayılan benimseyebilir, tekrarlayan bir prompt sınıfını daha ucuz bir modele taşıyabilir veya sonuçlar kötüleşirse önceki hedefe geri dönebilir. Sunucu kodu ve yüklü mobil istemciler aynı API isteğini yapmaya devam eder. Odak noktası, yönlendirme kararını test etmeye ve gözden geçirmeye kayar.
| Yayından sonraki değişiklik | Kodda sabit model ile | haimaker/auto ile |
|---|---|---|
| Daha iyi bir genel model çıktı | Model ID’sini değiştir ve kodu veya yapılandırmayı yayınla | Test et, ardından yönlendiricinin varsayılanını değiştir |
| Daha ucuz bir model bir prompt sınıfına uyuyor | Uygulama yönlendirme mantığı ekle ve dağıt | O prompt sınıfı için bir kural ekle veya düzenle |
| Bir model değişikliği çıktı kalitesini düşürüyor | Kod veya yapılandırma değişikliğini geri al | Önceki yönlendirici hedefini geri yükle |
| Kullanıcılar hâlâ eski bir mobil build kullanıyor | Gömülü model ID’si eski kalır | Backend mevcut yönlendirici politikasını kullanabilir |
Sunucu sürümlerinde alakasız başka işler beklerken de bu durum avantaj sağlar. Bir model kararı için o dağıtım penceresini beklemek gerekmez. Ayrı iş yükleri, farklı API anahtarlarına atanarak ayrı yönlendiriciler kullanabilir; Haimaker anahtar başına bir yönlendirici destekler.
Yönlendirme değişiklikleri en az kod değişiklikleri kadar özen gerektirir. Paneldeki sandbox, bir prompt’un hangi modele yönlendirileceğini gösterir; ancak yanıtın kaliteli olduğunu garanti etmez. Temsili prompt’ları önerilen modele karşı çalıştırın, gerçek çıktıyı inceleyin, çözümlenen model loglarını izleyin ve kalite düşerse önceki hedefe geri dönün. Haimaker model seçimini değiştirir; prompt’ları, araç şemalarını veya uygulama davranışını değiştirmek hâlâ uygulama tarafında değişiklik gerektirir.
Model seçimini bir sonraki sürüm için hazır tutun
Bir yönlendirici oluşturun, varsayılan bir model seçin ve backend’inizin kullandığı API anahtarına atayın. İstekte haimaker/auto gönderin, ardından iş yükünü temsil eden birkaç prompt’u test edin. Yeni bir model çıktığında, varsayılanı veya dar bir kuralı değiştirmeden önce o prompt’lara karşı değerlendirin. Haimaker dokümantasyonu yönlendirici kurulumunu, test sandbox’ını ve yönlendirme geçmişini kapsar.
Yeni modeller bir sonraki uygulama sürümünüzden önce çıkabilir. Model seçimini Haimaker’da tutmak, geliştiriciler sürüm döngülerini yeni kod gerektiren değişikliklere harcarken uygulamanın güncel kalmasını sağlar.
Sıkça sorulan sorular
Yayınlanmış bir mobil uygulamada yapay zekâ modelini nasıl değiştirebilirim?
Uygulamanın backend’inizi çağırmasını sağlayın ve backend’in Haimaker’a model: ‘haimaker/auto’ göndermesini sağlayın. Ardından yeni bir mobil build göndermeden panel üzerinden yönlendiricinin varsayılan modelini veya prompt kurallarını değiştirebilirsiniz. Yönlendirici değişikliklerinin etkili olması 60 saniyeye kadar sürebilir.
Haimaker üzerinden model değiştirmek sunucu dağıtımı gerektirir mi?
Hayır. Dağıtılmış sunucu zaten bir yönlendiriciye atanmış API anahtarıyla model: ‘haimaker/auto’ gönderiyorsa, panel üzerinden yönlendiricinin model hedeflerini değiştirebilirsiniz. Uygulama prompt’larında, istek formatlarında veya kodda yapılan değişiklikler hâlâ normal dağıtım sürecini gerektirir.
Yalnızca basit prompt’ları daha ucuz bir modele taşıyabilir miyim?
Evet. Basit bir görev için 3 ila 10 örnek prompt içeren bir kural ekleyin ve daha ucuz bir hedef model seçin. Haimaker hedefin isteği desteklediğini doğrular; bir kuralla eşleşmeyen prompt’lar ise yönlendiricinin varsayılan modelini kullanır.