DEV Community

Cover image for Yapay Zeka Modellerini Yerel Olarak mı Yoksa API ile mi Çalıştırmalı?
Tobias Hoffmann
Tobias Hoffmann

Posted on • Originally published at apidog.com

Yapay Zeka Modellerini Yerel Olarak mı Yoksa API ile mi Çalıştırmalı?

Kısaca:

Yerel yapay zeka donanımınızda çalışır, istek başına hiçbir maliyet getirmez ve verileri gizli tutar. API tabanlı yapay zeka ile başlamak daha hızlıdır, daha yeteneklidir ve altyapı gerektirmeden ölçeklenir. Çoğu ekip her ikisine de ihtiyaç duyar. Bu kılavuz, her yaklaşımın ne zaman öne çıktığını somut sayılarla ele almaktadır.

Apidog'u bugün deneyin

Giriş

Gemma 4'ün bir iPhone'da yerel olarak çalışması. Tam bir dil modelini API anahtarı olmadan entegre eden bir tarayıcı eklentisi. Bunlar 18 ay önce mümkün değildi. Bugün HackerNews'te yayınlanıyorlar.

Karar eskiden basitti: öncü modeller yalnızca API tabanlıydı, diğer her şey önemsiz kalacak kadar zayıftı. Bu durum değişti. Qwen2.5-72B, Gemma 4 ve DeepSeek-V3 gibi yerel modeller artık gerçek karşılaştırmalarda rekabet ediyor. Daha önce varsayılan olarak OpenAI'nin API'sini kullanan geliştiriciler, özellikle gizlilik hassasiyeti olan uygulamalar veya token başına maliyetlerin hızla arttığı yüksek hacimli görevler için yeniden düşünüyor.

Bu makale pazarlama söylemlerini bir kenara bırakıyor. Maliyet, gecikme süresi ve yetenek hakkında somut sayılar elde ederek kullanım durumunuz için doğru kararı verebileceksiniz.

💡Modelin yerel mi yoksa bulut tabanlı mı olduğuna bakılmaksızın yapay zeka API entegrasyonlarını test ediyorsanız, Apidog'un Test Senaryoları her ikisiyle de çalışır. Bunları yerel bir llama-server uç noktasına veya OpenAI'nin /v1/chat/completions'ına yönlendirebilir ve aynı doğrulamaları çalıştırabilirsiniz. Bunun hakkında daha sonra daha fazla bilgi vereceğiz. Temel test yaklaşımı için [internal: api-testing-tutorial] bölümüne bakın.

Yapay Zekayı "Yerel Olarak Çalıştırmak" Gerçekte Ne Anlama Geliyor?

Yerel yapay zeka üç farklı kurulumda çalışabilir:

  • Cihaz üzerinde çıkarım: Model, tamamen cihaz üzerinde çalışır, internet gerekmez. Örnek: tarayıcıda Gemma, iPhone’daki Gemma 4, MacBook’ta Ollama.
  • Kendi kendine barındırılan sunucu: Kendi donanımınızda bir model çalıştırır ve API sunarsınız. Örnek: workstation, bulut VM, şirket içi sunucu. llama-server, Ollama ve vLLM gibi araçlar bu işi yapar.
  • Özel bulut: Kendi bulut altyapınızda bir model dağıtırsınız. (AWS Bedrock, Azure özel uç noktaları, GCP Vertex AI.)

Bu makale, özellikle kendi kendine barındırılan sunucu ve genel API’yi karşılaştırır. Çoğu geliştirici bu iki seçenekten birini seçiyor.

Maliyet Karşılaştırması

Genel API fiyatlandırması (Nisan 2026):

Model Giriş (1M token başına) Çıkış (1M token başına)
GPT-4o $2.50 $10.00
Claude 3.5 Sonnet $3.00 $15.00
Gemini 1.5 Pro $1.25 $5.00
GPT-4o mini $0.15 $0.60
Claude 3 Haiku $0.25 $1.25

Kendi kendine barındırma maliyet tahmini (tek bir A100 80GB üzerinde Qwen2.5-72B):

  • Lambda Labs’ta bir A100 80GB, saatte ~1.99$. Qwen2.5-72B INT4 modunda, saniyede 200 token üretebilir.
  • %100 kullanımda saatte 720K token ⇒ 1K token başına maliyet ~0.0028$.
  • GPT-4o, 1K token çıkış başına 0.01$.

Maliyetleri karşılama noktası: Günde sürekli olarak ~70K’dan fazla çıkış tokenı işliyorsanız, kendi kendine barındırma GPT-4o’dan ucuzdur. Daha azsa, API daha hesaplı çünkü boşta kalan GPU’ya ödeme yapmazsınız.

Daha hafif modeller: 4-bit nicelenmiş Gemma 4 (12B), tek bir RTX 4090 üzerinde (600-800$ ikinci el) rahatça çalışır. Aynı bulut GPU süresi saatte 0.40$’a gelir. Kendi kendine barındırma, günde ~15K çıkış tokenında GPT-4o mini’ye karşı maliyetleri karşılar.

Gecikme Süresi Karşılaştırması

  • İlk Tokena Kadar Geçen Süre (TTFT): A100’de 72B modelle 1K token için TTFT 800ms-1.5s. OpenAI API’si genellikle 300-800ms.
  • Cihaz üzerinde çıkarım: (iPhone, Apple Silicon) Gemma 4 için TTFT 200-400ms, ağ gecikmesi sıfır.
  • Verimlilik (Throughput): 72B model + tek A100, tek kullanıcıya yeterli; paralellikte API’ler daha iyi yönetim sunar.
  • Akış (Streaming): Her iki yaklaşım da akış destekler. Yerelde ağ titremesi yok, API’de ağ bağlantısına bağlısınız.

Özet: En düşük gecikme için cihaz üzerinde çalışma tercih edilir. Ölçekte verimlilik için kendi kendine barındırma (vLLM ile batch). Ani kapasite ve kullanım kolaylığı için genel API.

Yetenek Karşılaştırması

  • Muhakeme ve karmaşık görevler: GPT-4o/Claude 3.5 Sonnet hâlâ açık ağırlık modellerinin önünde. Qwen2.5-72B ve DeepSeek-V3 aradaki farkı azalttı, ama lider API modelleri önde.
  • Kod üretimi: DeepSeek-Coder-V2 ve Qwen2.5-Coder-32B, birçok kod kıyaslamasında GPT-4o’ya yaklaşır. Kendi kendine barındırmada koda özel model kullanmak avantaj sağlar.
  • Bağlam uzunluğu: API modelleri 128K-1M token destekler. Kendi kendine barındırılanlar 32K-128K ile sınırlı.
  • Çok modlu: GPT-4o, Gemini 1.5 Pro görüntü, ses, video işleyebilir. Açık ağırlık çok modlu modeller geride.
  • Fonksiyon çağırma/araç kullanımı: OpenAI/Anthropic daha tutarlı. Açık ağırlık modellerinde tutarlılık daha düşük.

Gizlilik ve Veri Kontrolü

Yerel çözümler burada açıkça önde:

  • API ile: İstemler ağdan çıkar, sağlayıcı veri saklama politikası geçerlidir (OpenAI API girişleri 30 gün saklar), hassas içerikte sağlayıcı koşullarına tabisiniz, regülasyon engelleri oluşabilir.
  • Kendi kendine barındırılan modelde: İstemler tamamen altyapınızda kalır, üçüncü taraf veri saklama yok, model üzerinde tam kontrol, GDPR/HIPAA uyumluluğu daha kolay.

Sağlık, finans, hukuk gibi sektörlerde yerel çözüm çoğunlukla zorunludur.

Model Nerede Çalışırsa Çalışsın Yapay Zeka Entegrasyonları Nasıl Test Edilir

Aynı API yüzeyini kullanan farklı uç noktalar için test otomasyonunu kolayca kurabilirsiniz:

Örneğin:

  • OpenAI: https://api.openai.com/v1/chat/completions
  • Yerel Ollama: http://localhost:11434/api/chat
  • Yerel llama-server: http://localhost:8080/v1/chat/completions

Apidog Test Senaryoları ile hem bulut hem yerel uç noktada aynı testleri çalıştırabilirsiniz.

Örnek JSON Test Senaryosu:

{
  "scenario": "Chat completion smoke test",
  "environments": {
    "local": {"base_url": "http://localhost:11434"},
    "production": {"base_url": "https://api.openai.com"}
  },
  "steps": [
    {
      "name": "Basic completion",
      "method": "POST",
      "url": "{{base_url}}/v1/chat/completions",
      "body": {
        "model": "{{model_name}}",
        "messages": [{"role": "user", "content": "Say 'test passed' and nothing else"}],
        "max_tokens": 20
      },
      "assertions": [
        {"field": "status", "operator": "equals", "value": 200},
        {"field": "response.choices[0].message.content", "operator": "contains", "value": "test passed"},
        {"field": "response.usage.total_tokens", "operator": "less_than", "value": 50}
      ]
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

Bu senaryoyu geliştirme sırasında yerel Ollama'ya, CI ortamında ise OpenAI API'ye karşı çalıştırın. Kodunuz yerel modele karşı çalışıyorsa, API'ye karşı da çalışmalıdır. Farklar genellikle şunlardır:

  • Model adı formatı: Ollama qwen2.5:72b, OpenAI gpt-4o
  • Fonksiyon çağırma yanıt yapısı: sağlayıcıya göre küçük farklar
  • Akış (streaming) yanıt formatı: veri vs. delta vs. tam yanıt

Apidog'un Smart Mock özelliği ile GPU'nun online olmasına gerek kalmadan CI’da yerel model davranışını simüle edebilirsiniz. OpenAI uyumlu bir mock yapılandırıp test senaryolarınızı buna karşı koşturabilirsiniz.

10 Dakikada Yerel Bir Model Sunucusu Kurma

Hızlıca kendi kendine barındırma denemek için Ollama kullanabilirsiniz:

# Ollama'yı kurun
curl -fsSL https://ollama.com/install.sh | sh

# Bir model çekin (Gemma 4 12B, 10GB VRAM'e sığar)
ollama pull gemma4:12b

# Sunucuyu başlatın (11434 portunda OpenAI uyumlu API)
ollama serve

# Test edin
curl http://localhost:11434/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemma4:12b",
    "messages": [{"role": "user", "content": "Hello"}]
  }'
Enter fullscreen mode Exit fullscreen mode

Çok kullanıcılı, yüksek eşzamanlılık için vLLM daha uygundur:

pip install vllm
python -m vllm.entrypoints.openai.api_server \
  --model Qwen/Qwen2.5-72B-Instruct-AWQ \
  --quantization awq \
  --max-model-len 32768
Enter fullscreen mode Exit fullscreen mode

Bu, 8000 portunda OpenAI uyumlu bir API sunar. Apidog’u http://sunucunuz:8000 adresine yönlendirip testlerinizi çalıştırabilirsiniz.

Her Bir Yaklaşımı Ne Zaman Seçeceğiniz

Senaryo Yerel API
Yüksek hacimli toplu işleme (günde >100K token) Daha ucuz Pahalı
Gizlilik hassasiyeti olan veriler (sağlık, hukuk, finans) Gerekli Riskli
Cihaz üzerinde en düşük gecikme En iyi Mümkün değil
Öncü model yeteneği gerekliliği Yetersiz Gerekli
Değişken trafikli ani iş yükleri Ölçeklendirmesi karmaşık Otomatik olarak yönetir
GPU mevcut değil Zor Kolay
Geliştirme/test ortamı Harika (Ollama) Maliyeti var
Çok modlu görevler Sınırlı Tam destek
Düzenlemeye tabi sektör uyumluluğu Daha kolay DPA gerektirir

Pratik tavsiye: Çoğu ekip için; üretimde genel bir API kullanın (kalite için Claude/GPT-4o, yüksek hacim için Haiku/4o-mini), geliştirme ve test için yerel Ollama kullanın. Böylece üretimde üst düzey kalite, geliştirmede ise maliyetsiz çeviklik elde edersiniz. Her iki ortamda da OpenAI uyumlu API yüzeyini koruyun.

Açık kaynak kodlama asistanlarının yerel yapay zekadaki rolü için [internal: open-source-coding-assistants-2026] bölümüne bakın.

Sonuç

Yerel ve API kararı ikili değildir. Doğru seçim; işlem hacminize, gizlilik ve gecikme gereksinimlerinize, model yeteneklerine bağlıdır.

Çoğu geliştirici için: API ile başlayın, aylık maliyetiniz 200-300$’ı aşarsa kendi kendine barındırmaya geçin, ilk günden itibaren Ollama ile yerel ortamda geliştirin. Kodunuzu, OpenAI uyumlu API yüzeyiyle sağlayıcıdan bağımsız tutun.

Yerel ve bulut modeli davranışlarındaki küçük farkları, üretime çıkmadan Apidog ile tutarlı şekilde test edin.

Sıkça Sorulan Sorular

Kullanışlı bir yerel modeli çalıştırmak için minimum GPU nedir?

Bir RTX 3060 (12GB VRAM), Qwen2.5-7B veya Gemma 4 4B'yi tam kalitede çalıştırır. RTX 4090 (24GB VRAM), çoğu 14B-20B modeli INT4 ile çalıştırır, 34B modeller için INT2 gerekir. 72B modellerde 2x 24GB GPU veya tek bir A100/H100 gereklidir.

Apple Silicon üzerinde yerel yapay zeka çalıştırabilir miyim?

Evet. Ollama, Apple Silicon desteği sunar ve Sinirsel Motoru kullanır. M3 Pro (18GB RAM) Qwen2.5-14B’yi rahatça çalıştırır, M4 Max (128GB) 70B modelleri işler.

Yerel model çıktısı üretim için yeterli mi?

Göreve bağlı. Kod üretimi, özetleme, yapılandırılmış veri çıkarımı için 32B+ modelle evet. Karmaşık muhakeme veya dünya bilgisi için lider API modelleri hala önde.

Yerel modeller fonksiyon çağırmayı destekler mi?

Evet, ancak tutarlılık düşüktür. Llama 3.1, Qwen2.5, Mistral araç kullanımını destekler ancak karmaşık zincirlerde güvenilirlik düşebilir. Üretimde kullanmadan önce Apidog Test Senaryoları ile kapsamlı test yapın.

AWS'te 70B bir modeli kendi kendine barındırmak ne kadara mal olur?

Bir p4d.24xlarge (8x A100 40GB), saatte 32.77$. Yüksek verimlilikle 70B INT8 çalıştırır. Daha hafif işler için g5.2xlarge (1x A10G 24GB), saatlik 1.21$. Rezerve örneklerle %30-40 daha ucuz.

Ollama ve llama.cpp farkı nedir?

llama.cpp çıkarım motorudur. Ollama, bunu REST API, model yönetimi ve CLI ile kolaylaştırır. Geliştirme için Ollama, donanım/format kontrolü için doğrudan llama.cpp kullanılabilir.

Kodumu değiştirmeden yerel ve API modelleri arasında geçiş yapabilir miyim?

Evet, OpenAI uyumlu istemci kullanırsanız. Örneğin Python’da:

openai.OpenAI(base_url='http://localhost:11434/v1', api_key='ollama') ile Ollama'ya,

base_url ve api_key’i değiştirerek OpenAI’ye bağlanabilirsiniz. Bunları ortam değişkeni olarak ayarlayın, kodunuz sabit kalsın.

Top comments (0)