Ferhat Gölge
Bilgisayar Amelesi
Laravel ile AI Gateway Kurulumu: OpenAI + Ollama (Local AI) Tek Adresten Yönetim
Laravel ile AI Gateway Kurulumu: OpenAI + Ollama (Local AI) Tek Adresten Yönetim
Yapay zekâ entegrasyonları artık modern web uygulamalarının vazgeçilmez bir parçası haline geldi. Ancak çoğu projede şu sorun ortaya çıkar:
“Hangi AI sağlayıcısını kullanmalıyım? OpenAI mi, yoksa local (Ollama) mı?”
Bu yazıda, bu sorunu kökten çözen bir mimariyi anlatıyoruz:
👉 Tek bir API (ai.kitmote.com) üzerinden hem OpenAI hem de local AI (Ollama) kullanabilen bir sistem
Bu yapı sayesinde:
- Tek endpoint ile tüm AI işlemleri yönetilir
- Provider değiştirmek sadece ayar değişikliği olur
- Trafik arttığında local AI’ya geçiş kolaylaşır
- SaaS sistemler için multi-tenant AI altyapısı oluşturulur
🧠 Neden AI Gateway?
Klasik yaklaşım:
Bu yaklaşım:
- API key güvenliği sorunları yaratır
- Provider bağımlılığı oluşturur
- Esnek değildir
Bizim yaklaşım:
Yani:
- Tüm AI istekleri tek merkezden geçer
- Provider seçimi backend tarafından yapılır
- Güvenlik ve loglama kontrol altına alınır
🏗️ Sistem Mimarisi
Genel akış şu şekildedir:
↓
ai.kitmote.com (Laravel API)
↓
Middleware (Security Layer)
↓
AI Manager
↓
Provider Resolver
↓
[ OpenAI | Ollama | Fallback ]
↓
Response + Logging
⚙️ Kullanılan Teknolojiler
- Laravel 13 → API & orchestration
- OpenAI API → cloud AI
- Ollama → local AI (GPU gerekmeden çalışabilir)
- MySQL → settings + log
- Pest → test altyapısı
🔌 Provider Mantığı (Core Idea)
Sistemin kalbi şu prensip:
Controller provider’ı bilmez, sadece AI Manager çağırır.
Interface
{
public function generate(AiRequestData $request): AiResponseData;
}
Provider örnekleri
- OpenAiProvider
- LocalAiProvider (Ollama)
- NullProvider (fallback)
🔄 Provider Switching Algoritması
Sistemin en kritik kısmı:
2. provider available mı kontrol edilir
3. değilse fallback provider’a geçilir
4. hiçbiri yoksa controlled error döner
Pseudo code
if (provider == local) {if (local_available) {return local;}if (fallback == openai) {return openai;}return nullProvider;}if (provider == openai) {return openai;}⚡ OpenAI Entegrasyonu (Cloud AI)
$response = Http::withToken($apiKey)->post('https://api.openai.com/v1/responses', ['model' => 'gpt-4.1-mini','input' => $prompt,]);Avantajları:
- yüksek doğruluk
- stabil performans
- sıfır altyapı maliyeti (başlangıçta)
🖥️ Ollama ile Local AI
Ollama sayesinde:
- GPU olmadan bile local model çalıştırabilirsin
- API endpoint üzerinden erişim sağlar
Laravel tarafında:
Http::post('http://localhost:11434/api/generate', ['model' => 'llama3','prompt' => $prompt,]);Avantajları:
- maliyet yok (API yok)
- veri dışarı çıkmaz
- offline çalışabilir
🧩 Settings Tabanlı Yönetim
Tüm sistem ayarlardan yönetilir:
ai_provider = openai | localai_fallback_provider = openaiai_local_enabled = true/falseai_openai_api_key = xxxBu sayede:
👉 Kod değiştirmeden provider değiştirebilirsin
🔐 Güvenlik Katmanı
Bu sistemde kritik konu:
“Herkes API’yi kullanamasın”
Bu yüzden middleware katmanı:
- API Token kontrolü
- Domain whitelist
- IP whitelist
- Rate limit
📊 Loglama ve Maliyet Takibi
Her AI isteği kayıt altına alınır:
- provider
- model
- input/output token
- response süresi
- maliyet
- domain
Bu sayede:
👉 “Ne kadar harcadım?” sorusuna net cevap alırsın
🚀 Gerçek Dünya Kullanım Senaryosu
Bu yapı özellikle şu sistemlerde çok güçlü:
- CV oluşturma (KitResume tarzı)
- Blog içerik üretimi
- SEO açıklama üretimi
- Chat sistemleri
- SaaS AI servisleri
🔁 Hibrit AI Stratejisi (En kritik kısım)
En doğru yaklaşım:
| Aşama | Kullanım |
|---|---|
| Başlangıç | OpenAI |
| Trafik artınca | Hybrid |
| Büyük ölçek | Local AI |
Yani:
Yarın → OpenAI + Local
Sonra → Local ağırlıklı
🎯 Sonuç
Bu yazıda şunu öğrendik:
- AI Gateway ile tek endpoint yönetimi
- Laravel ile provider abstraction
- OpenAI + Ollama birlikte kullanımı
- fallback ve provider switching mantığı
- SaaS için ölçeklenebilir AI mimarisi
👉 En önemli çıkarım:
AI entegrasyonu sadece “API çağırmak” değil, doğru mimariyi kurmaktır.
Keywords: laravel ai integration, ollama laravel, openai laravel api, ai gateway nedir, local ai nasıl kurulur, laravel yapay zeka entegrasyonu
Sıkça Sorulan Sorular
AI Gateway nedir?
AI Gateway, OpenAI veya yerel modeller (Ollama gibi) gibi farklı yapay zekâ sağlayıcılarına gelen istekleri yöneten merkezi bir API katmanıdır.
Ollama GPU olmadan çalışır mı?
Evet, Ollama CPU üzerinde çalışabilir. Ancak performans, GPU kullanıldığında belirgin şekilde artar.
Neden OpenAI API’yi frontend’den direkt çağırmamalıyım?
Çünkü API anahtarları gizli tutulmalıdır. Backend üzerinden kullanmak; güvenlik, loglama, rate limit ve provider yönetimi açısından daha doğru bir yaklaşımdır.
Laravel ile birden fazla AI sağlayıcı yönetilebilir mi?
Evet. Provider pattern ve servis katmanı kullanılarak Laravel içinde farklı AI sağlayıcıları arasında dinamik geçiş yapılabilir.

