Tarayıcıda Yapay Zeka Nedir ve WebGPU ile İstemci Tarafı Çıkarım Nasıl Çalışır
Tarayıcıda yapay zeka, makine öğrenmesi modellerini sunucuya hiç istek göndermeden doğrudan kullanıcının cihazında, tarayıcı içinde çalıştırmaktır (istemci tarafı çıkarım / on-device inference). Bunu mümkün kılan teknoloji ikilisi WebGPU ile Transformers.js’tir: WebGPU, tarayıcıya modern GPU’nun paralel hesaplama gücüne (compute shader) düşük seviyeli erişim verir; Hugging Face’in Transformers.js kütüphanesi ise yüzlerce hazır modeli (metin, görüntü, ses) bu altyapı üzerinde JavaScript ile çalıştırır. Sonuç: çeviri, özetleme, görüntü sınıflandırma ve embedding üretimi gibi görevler, sunucu maliyeti ve gizlilik sızıntısı olmadan tarayıcıda gerçekleşir. Konuyla ilişkili olarak WebAssembly Üretimde 2026: Tarayıcı Ötesi Kullanım Senaryoları rehberimiz detaylı incelemeyi içerir.
Bu paradigmanın 2026’da olgunlaşmasının nedeni, WebGPU‘nun tüm büyük tarayıcılarda artık varsayılan olarak desteklenmesidir. WebGPU; Chrome 113 (2023) ile stabil çıktı, ardından Edge, Firefox ve Safari’de yaygınlaştı. WebGL’in grafik odaklı sınırlamalarının aksine WebGPU, genel amaçlı GPU hesaplaması (GPGPU) için tasarlandığından, sinir ağı çıkarımında WebAssembly’ye kıyasla çok kat daha yüksek hız sağlar; bazı kıyaslamalarda WebGPU hızlandırması WASM’a göre 10 kattan fazla performans farkı gösteriyor. Bu, küçük dil modellerinin (SLM) ve görüntü modellerinin pratik olarak tarayıcıda çalışabileceği eşiği aştı.

İstemci Tarafı Çıkarımın Sunucu Tabanlı Çıkarıma Göre Avantajları
Modeli tarayıcıda çalıştırmanın getirileri, yalnızca teknik değil ekonomik ve hukukidir. Aşağıdaki tablo iki yaklaşımı karşılaştırır.
| Boyut | İstemci Tarafı (WebGPU) | Sunucu Tarafı (API) | Pratik Etki |
|---|---|---|---|
| Gizlilik | Veri cihazdan çıkmaz | Sunucuya gönderilir | KVKK/GDPR avantajı |
| Gecikme | Ağ turu yok | Round-trip + kuyruk | Anlık yanıt |
| Maliyet | Sıfır çıkarım maliyeti | Token/istek başına | Ölçekte tasarruf |
| Çevrimdışı | Çalışır | Çalışmaz | PWA senaryosu |
| Model boyutu | Sınırlı (cihaz RAM) | Sınırsız (büyük LLM) | Sunucu üstün |
| İlk yük | Model indirme yükü | Hafif (sadece API) | Önbellek kritik |
En güçlü argüman gizliliktir: kullanıcı verisi (yazdığı metin, çektiği fotoğraf) cihazdan hiç çıkmadığında, KVKK ve GDPR kapsamındaki veri işleme yükümlülükleri kökten azalır. Sağlık, hukuk ve finans gibi hassas alanlarda bu, sunucu API’sine göre belirleyici bir tasarım avantajıdır. Veri hiç ağ üzerinden geçmediği için “veri ikamet yeri” (data residency) ve sınır ötesi aktarım kısıtlamaları da konu dışı kalır; bu, çok uluslu uygulamalarda hukuki karmaşıklığı dramatik biçimde azaltır.
İkinci güçlü argüman gecikmedir. Sunucu API’sine yapılan her çağrı, ağ gidiş-dönüşü, kuyruk bekleme süresi ve sunucu işleme zamanını içerir; yoğun anlarda bu, yüzlerce milisaniyeden saniyelere uzayabilir. Tarayıcı içi çıkarımda model bir kez yüklendikten sonra yanıt anında üretilir, ağ tamamen devre dışıdır. Otomatik tamamlama, anlık çeviri veya yazarken öneri gibi gerçek zamanlı etkileşimlerde bu fark, kullanılabilir ile kullanılamaz arasındaki çizgidir.
WebGPU: Tarayıcıda GPU Hesaplamasının Temeli
WebGPU, eski WebGL’in yerini alan modern grafik ve hesaplama API’sidir. Yapay zeka açısından kritik özelliği compute shader desteğidir; bu, matris çarpımı gibi sinir ağı operasyonlarını GPU’nun binlerce çekirdeğinde paralel çalıştırmayı sağlar.
- GPGPU erişimi: WebGL’in aksine WebGPU, grafik dışı genel hesaplama için tasarlandı; tensör işlemleri doğrudan desteklenir.
- Düşük seviyeli kontrol: Bellek tamponları (buffer) ve pipeline’lar açıkça yönetilir; Vulkan/Metal/DirectX 12 üzerine soyutlanmıştır.
- WASM yedeği (fallback): WebGPU desteklenmeyen ortamda Transformers.js, WebAssembly üzerinden (daha yavaş ama çalışır) düşer.
WebGPU’nun genel hesaplama gücü yalnızca yapay zeka için değil; ağ uygulamalarının istemci tarafında ağır iş yapma yeteneğinin genel bir göstergesidir. Bu trend, tarayıcı içi GPU hesaplama ekosisteminin olgunlaştığını doğruluyor. Çıkarım hızlandırma backend’leri arasındaki fark, doğru teknolojiyi seçmek için kritiktir:
| Backend | Donanım | Görece Hız | Uyumluluk | Kullanım |
|---|---|---|---|---|
| WebGPU | GPU | En yüksek | Modern tarayıcı | Birincil tercih |
| WASM (SIMD) | CPU | Orta | Geniş | Yedek (fallback) |
| WASM (tek thread) | CPU | Düşük | En geniş | Son çare |
| WebGL | GPU | Orta-Yüksek | Eski tarayıcı | Eski yedek |
| WebNN (gelecek) | NPU/GPU | Çok yüksek | Sınırlı | Donanım NPU |
Yükselen WebNN (Web Neural Network API) standardı, cihazdaki özel yapay zeka donanımına (NPU) doğrudan erişim hedefliyor; bu olgunlaştığında tarayıcı içi çıkarım, yerel uygulama performansına daha da yaklaşacak. Modern dizüstü ve telefon işlemcilerinin neredeyse tamamı artık özel bir NPU içeriyor; bu donanım, yapay zeka iş yüklerini GPU’dan bile daha verimli ve düşük güç tüketimiyle çalıştırmak için tasarlandı. WebNN, tarayıcının bu NPU’ya soyut bir arayüz üzerinden erişmesini sağlayarak, geliştiricinin donanım detaylarıyla uğraşmadan en hızlı yolu kullanmasına olanak verecek. Bu üç katmanlı hızlandırma stratejisi (NPU varsa WebNN, yoksa WebGPU, o da yoksa WASM) tarayıcı içi yapay zekanın geleceğini tanımlıyor; her cihaz, sahip olduğu en güçlü hesaplama birimini otomatik olarak kullanacak.

Transformers.js: Tarayıcıda Hugging Face Modelleri
Transformers.js, Hugging Face’in popüler Python kütüphanesinin JavaScript karşılığıdır. ONNX Runtime Web üzerine kuruludur ve WebGPU’yu çıkarım hızlandırıcı olarak kullanır. Desteklenen görev yelpazesi geniştir:
| Görev | Örnek Model Ailesi | Tipik Boyut | Kullanım Senaryosu |
|---|---|---|---|
| Metin embedding | all-MiniLM | ~20-90 MB | Semantik arama |
| Çeviri | NLLB / M2M | ~100-600 MB | Çevrimdışı çeviri |
| Özetleme | DistilBART | ~100-300 MB | Metin özeti |
| Görüntü sınıflandırma | ViT / ResNet | ~20-100 MB | Etiketleme |
| Ses-metin | Whisper (tiny/base) | ~40-150 MB | Tarayıcıda transkripsiyon |
Niceleme (quantization), tarayıcı içi çıkarımın anahtarıdır: bir model 32-bit yerine 8-bit veya 4-bit ağırlıklarla saklandığında boyutu kat kat küçülür ve cihaz RAM’ine sığar. Tarayıcıda semantik arama veya RAG kurmak isteyenler için, üretilen embedding’lerin saklanacağı bir vektör veritabanı mimarisi tamamlayıcı parçadır; tarayıcıda üretip sunucuda indeksleyen hibrit kurulumlar yaygınlaşıyor.
Transformers.js’in API’si, kullanım kolaylığı için yüksek seviyeli bir pipeline soyutlaması sunar; geliştirici görev türünü ve model adını belirtir, kütüphane indirme, niceleme seçimi ve WebGPU/WASM yönlendirmesini perde arkasında halleder. Bu, Python tarafındaki Hugging Face deneyimini tarayıcıya birebir taşır. Whisper tabanlı ses-metin dönüşümü, tarayıcıda transkripsiyon yapan toplantı notu araçlarından, çevrimdışı çalışan dikte özelliklerine kadar geniş bir pratik alana sahiptir; ses verisi cihazdan hiç çıkmadığı için gizlilik-hassas senaryolarda özellikle değerlidir. Görüntü modelleri ise fotoğraf etiketleme, içerik moderasyonu ön filtresi ve erişilebilirlik için otomatik alt metin üretimi gibi kullanımlarda öne çıkar.
Gerçek Dünya Kullanım Senaryoları
Tarayıcıda yapay zeka soyut bir vaat değil, üretimde çalışan bir gerçekliktir. En değerli senaryolar:
- Gizlilik-öncelikli özellikler: Tıbbi not özetleme, hukuki belge analizi; veri cihazdan çıkmaz.
- Çevrimdışı PWA’lar: İnternet olmadan çalışan çeviri, transkripsiyon, akıllı form doldurma.
- Maliyet ölçekleme: Milyonlarca kullanıcıya çıkarım sunarken sunucu GPU maliyetini sıfırlamak; hesaplama yükü kullanıcı cihazına dağılır.
Bu yaklaşım, hesaplamayı kullanıcıya yaklaştırma trendinin uç noktasıdır; edge computing sunucuyu kullanıcıya yaklaştırırken, istemci tarafı çıkarım hesaplamayı doğrudan kullanıcı cihazına taşır. Maliyet modeli de kökten değişir: sunucu tabanlı çıkarımda her istek bir GPU saniyesi ve token maliyeti üretirken, istemci tarafı çıkarımda marjinal maliyet sıfırdır. Milyonlarca kullanıcıya hizmet veren bir uygulama için bu fark, aylık on binlerce dolarlık GPU faturasını ortadan kaldırabilir; hesaplama yükü, kullanılmayan kapasitesi zaten var olan kullanıcı cihazlarına dağılır.
Ancak bu modelin sınırı cihaz heterojenliğidir. Üst segment bir dizüstü ile giriş seviyesi bir telefon arasında GPU ve bellek farkı kat kat değişir. Bu yüzden olgun uygulamalar, cihaz yeteneğini tespit edip uygun model boyutunu seçen bir uyarlama (adaptive) katmanı kurar: güçlü cihaza tam model, zayıf cihaza küçük varyant veya sunucu yedeği sunulur.

Performans Optimizasyonu ve Önbellekleme
Tarayıcı içi çıkarımın en büyük dezavantajı modelin ilk indirme maliyetidir. Birkaç yüz MB’lık bir modeli her ziyarette indirmek kabul edilemez. Çözüm katmanlıdır: model ağırlıkları tarayıcı Cache API veya IndexedDB’de saklanır; ikinci ziyarette ağ isteği gitmez. Niceleme ile boyut küçültülür ve WebGPU mevcutsa otomatik seçilir, değilse WASM’a düşülür.
Niceleme seviyesinin seçimi, boyut ile doğruluk arasında bir denge gerektirir. Aşağıdaki tablo, tipik niceleme seçeneklerini ve etkilerini özetler.
| Niceleme | Görece Boyut | Doğruluk Kaybı | Hız | Uygun Senaryo |
|---|---|---|---|---|
| FP32 (tam) | %100 | Yok | Yavaş | Referans / sunucu |
| FP16 (yarım) | ~%50 | İhmal edilebilir | Hızlı (GPU) | WebGPU çıkarım |
| INT8 | ~%25 | Düşük | Hızlı | Genel tarayıcı |
| INT4 / Q4 | ~%12-15 | Orta | En hızlı (boyut) | Mobil / düşük RAM |
| Karışık (mixed) | Değişken | Düşük | Optimize | Dengeli üretim |
Pratikte INT8 ve INT4, tarayıcı içi çıkarımın çalışma atıdır; FP32 modeller cihaz belleğine sığmaz. Karışık niceleme (önemli katmanlar yüksek hassasiyet, gerisi düşük) en iyi denge noktasını verir; çoğu hazır Transformers.js modeli bu varyantlarda yayınlanır.
İndirme deneyimini iyileştirmenin ikinci katmanı, modeli parçalı (chunked) ve akışlı (streaming) yüklemektir. Model ağırlıkları tek bir dev dosya yerine parçalara bölündüğünde, ilk parça inerken bir ilerleme çubuğu gösterilebilir ve kullanıcı bekleme süresini somut olarak algılar. Üçüncü katman önbellek geçerliliğidir: model sürümü bir karma (hash) ile etiketlenir; ağırlıklar değişmedikçe tarayıcı önbelleği kullanır, değiştiğinde yalnızca farkı indirir. Bu üç teknik bir araya geldiğinde, birkaç yüz megabaytlık bir modelin ilk yükleme maliyeti tek seferlik bir olaya dönüşür ve sonraki tüm ziyaretler anında başlar.
Tipik Sorunlar ve Çözümleri
Tarayıcıda yapay zeka kurulumlarında en sık karşılaşılan zorluklar; model boyutu, cihaz heterojenliği ve ana iş parçacığının (main thread) kilitlenmesidir. En kritik sorunlar ve doğrulanmış çözümleri:
- Büyük model indirme gecikmesi: Çözüm: IndexedDB/Cache API ile kalıcı önbellek; niceleme ile boyutu 4-bit’e indir; progresif yükleme göster.
- Ana iş parçacığı donması (UI freeze): Çözüm: çıkarımı Web Worker içinde çalıştır; ağır hesaplama ana thread’i asla bloke etmesin.
- WebGPU desteklenmeyen cihaz: Çözüm: özellik tespiti (feature detection) ile WASM yedeğine otomatik düş; kullanıcıya beklenen yavaşlamayı bildir.
- Cihaz RAM/VRAM yetersizliği: Çözüm: model boyutunu cihaz sınıfına göre seç; düşük segment için daha küçük (tiny) varyant sun.
- İlk çıkarım gecikmesi (warm-up): Çözüm: model yüklendikten sonra arka planda bir kez ısıtma (warm-up) çıkarımı çalıştır; ilk kullanıcı isteği hızlı olsun.
- Tarayıcı uyumsuzluk farkları: Çözüm: ONNX Runtime Web sürümünü sabitle, hedef tarayıcılarda test matrisi kur; davranış farklarını izle.
Sonuç
Tarayıcıda yapay zeka, WebGPU’nun yaygınlaşması ve Transformers.js’in olgunlaşmasıyla 2026’da deneysel olmaktan çıkıp üretim seçeneğine dönüştü. İstemci tarafı çıkarımın üç yıkıcı avantajı vardır: verinin cihazdan hiç çıkmaması (gizlilik ve KVKK/GDPR uyumu), ağ turunun olmaması (anlık gecikme) ve sunucu GPU maliyetinin sıfırlanması. Sınırı cihaz belleği belirler; bu yüzden niceleme ve doğru model boyutu seçimi kritiktir. Büyük LLM’ler hâlâ sunucuya aittir, ancak embedding üretimi, çeviri, özetleme, görüntü sınıflandırma ve transkripsiyon gibi görevler artık tarayıcıda mümkündür. Web Worker’da çalıştırın, agresif önbellekleyin, WASM yedeği bırakın; istemci tarafı yapay zekanın tüm potansiyeli bu mühendislik disiplininde açığa çıkar.

Sıkça Sorulan Sorular
Tarayıcıda büyük dil modeli (LLM) çalıştırabilir miyim?
Küçük ve nicelenmiş modeller evet, büyük LLM’ler pratikte hayır. Cihaz belleği üst sınırı belirler; birkaç milyar parametreli nicelenmiş SLM’ler modern cihazlarda çalışabilirken, on milyarlarca parametreli modeller tarayıcı için fazla büyüktür. Embedding, çeviri, özetleme gibi görevler ise rahatça tarayıcıda çalışır.
WebGPU ile WebGL arasındaki fark nedir?
WebGL grafik render için tasarlanmıştı; genel hesaplama (GPGPU) yetenekleri sınırlıdır. WebGPU ise compute shader desteğiyle sinir ağı operasyonlarını GPU’nun binlerce çekirdeğinde paralel çalıştırmak için tasarlandı. Yapay zeka çıkarımında WebGPU, WebGL ve WebAssembly’ye kıyasla çok daha yüksek performans sağlar.
İstemci tarafı çıkarım gizlilik açısından gerçekten daha mı güvenli?
Evet, çünkü kullanıcı verisi cihazdan hiç çıkmaz. Metin, görüntü veya ses sunucuya gönderilmeden tarayıcıda işlendiğinde, KVKK ve GDPR kapsamındaki veri aktarımı ve işleme yükümlülükleri kökten azalır. Sağlık ve hukuk gibi hassas alanlarda bu, en güçlü tasarım gerekçesidir.
Model indirme boyutu kullanıcı deneyimini bozar mı?
İlk ziyarette indirme maliyeti vardır, ama doğru yönetilirse sorun değildir. Model ağırlıkları IndexedDB veya Cache API’de saklanır; ikinci ziyaretten itibaren ağ isteği gitmez. Niceleme (4-bit/8-bit) boyutu kat kat küçültür, progresif yükleme göstergesi ise algılanan bekleme süresini azaltır.
Tarayıcıda yapay zeka sunucu API’lerini tamamen geçersiz kılar mı?
Hayır, ikisi tamamlayıcıdır. Gizlilik-hassas, çevrimdışı çalışan veya yüksek ölçekli hafif görevler için istemci tarafı çıkarım idealdir. Çok büyük modeller, sürekli güncellenen ağırlıklar ve cihaz kapasitesini aşan görevler ise hâlâ sunucuya aittir. En olgun mimariler, görevi yerine göre cihaza veya sunucuya yönlendiren hibrit yaklaşımı benimser.










Ömer ÖNAL
Haziran 12, 2026Projelerde şunu vurguluyorum: tarayıcıda AI’ın asıl değeri hız değil, gizlilik ve maliyet. Kullanıcı verisi cihazdan hiç çıkmadığında KVKK/GDPR yükü kökten azalır; çıkarım maliyeti sıfırlanır çünkü hesaplama kullanıcı cihazına dağılır. Ama iki kuralı atlamayın: çıkarımı Web Worker’da çalıştırın ki UI donmasın, ve modeli IndexedDB’de agresif önbellekleyin. Niceleme ile 4-bit’e inin. Büyük LLM hâlâ sunucuya ait; gerisi artık tarayıcıda.