Mixture of Experts (MoE) (Uzmanların Karışımı)

Her token için yalnızca seçili uzman ağlarını etkinleştiren verimli büyük dil modeli mimarisi.

Uzmanların Karışımı (Mixture of Experts — MoE), büyük dil modellerinin hesaplama verimliliğini artırmak için geliştirilmiş bir mimari yaklaşımdır. Geleneksel yoğun (dense) transformer modellerinde her girdi, ağın tüm parametrelerinden geçer; MoE mimarisinde ise her token yalnızca belirli alt ağlar tarafından işlenir. MoE'nin temel bileşeni, "uzman" adı verilen birbirinden bağımsız beslemeli ileri (feed-forward) katmanlardır. Bu uzmanlara ek olarak bir kapı (gating) ağı bulunur; kapı ağı her giriş için hangi uzmanların etkinleştirileceğine karar verir. Tipik bir MoE katmanı 8 ila 64 uzman barındırır; ancak her token için yalnızca 2–4 tanesi aktive edilir. Bu seçici aktivasyon, modelin toplam parametre sayısını büyütürken hesaplama maliyetini sabit tutar. Seyrek aktivasyon (sparse activation) olarak adlandırılan bu özellik, MoE'yi büyük ölçekte son derece çekici kılar. Örneğin Mistral'ın Mixtral 8x7B modeli, 46,7 milyar parametreye sahip olmasına karşın çıkarım sırasında yalnızca 12,9 milyar parametre kullanır; bu da onu çok daha küçük görünen 13B modeller kadar hızlı yapar. Benzer şekilde GPT-4'ün MoE tabanlı olduğu yaygın biçimde raporlanmış olup Google'ın Gemma 4 serisi de MoE mimarisini benimsemiştir. Türk yapay zeka ekipleri için MoE, özellikle bulut çıkarım maliyetleri söz konusu olduğunda kritik bir tasarruf aracıdır. Aynı kalitedeki yoğun modele kıyasla çıkarım başına daha az FLOP harcanır; bu da API maliyetlerini doğrudan düşürür. Öte yandan MoE modellerini yerel olarak çalıştırmak, tüm uzman ağırlıklarının RAM veya VRAM'e yüklenmesini gerektirdiğinden bellekte yoğun bir profil çıkarır; bu nedenle tüketici donanımında dikkatli bellek planlaması şarttır. MoE'nin temel sınırlılıkları arasında yük dengeleme güçlüğü öne çıkar: eğitim sırasında kapı ağı bazı uzmanlara aşırı yüklenebilir, diğerlerini boş bırakabilir. Bu sorunu gidermek için yardımcı kayıp (auxiliary loss) fonksiyonları kullanılır. Dağıtık çıkarım altyapısında ise farklı uzmanlara denk düşen tokenların farklı cihazlara yönlendirilmesi gerekebilir; bu da iletişim ek yükü doğurur.

MoE Mimarisi Nasıl Çalışır?

Her transformer katmanında standart tek bir FFN bloğu yerine N adet uzman FFN bulunur. Kapı ağı (router), gelen token temsilini alarak her uzman için bir skor üretir ve en yüksek skorlu k uzmanı seçer (Top-K yönlendirme). Seçilen uzmanların çıktıları ağırlıklı olarak birleştirilir. Eğitim sırasında kapı ağı, yük dengesini korumak için yardımcı bir kayıp terimi ile güncellenir; böylece hiçbir uzman sürekli boş kalmaz veya tıkanmaz.

Öne Çıkan MoE Modelleri

Mixtral 8x7B (Mistral AI): 8 uzman, çıkarımda Top-2 — 46,7B parametre, 12,9B aktif. Mixtral 8x22B: 141B toplam, 39B aktif parametre; birçok kapalı modelle rekabet eder. GPT-4: MoE tabanlı olduğu kaynaklar tarafından raporlanmıştır. Gemma 4 (Google): MoE mimarisiyle 27B parametreli açık kaynak model. DeepSeek-V3: 671B toplam, 37B aktif parametre; maliyet verimliliğiyle dikkat çekmiştir.

Yoğun Modele Karşı Avantaj ve Sınırlılıklar

Avantajlar: Aynı çıkarım bütçesiyle daha büyük etkin parametre havuzu; her token için uzmanlaşmış bilgi yolları; paralel uzman hesabı. Sınırlılıklar: Bellek tüketimi — tüm uzmanlar VRAM'e yüklenmek zorundadır. Yük dengeleme — kötü eğitilmiş kapı ağı bazı uzmanlara aşırı yüklenebilir. Dağıtık çıkarımda cihazlar arası iletişim ek yükü. İnce ayar (fine-tuning) yaparken tüm uzmanları dengeli güncelleme zorluğu.

Türk Geliştirici Perspektifi

Bulut API maliyeti kritik bir kısıt olduğunda MoE modelleri, yoğun modellere göre belirgin tasarruf sağlar. Ollama ile yerel Mixtral 8x7B çalıştırmak için en az 48 GB RAM veya VRAM önerilir. Hugging Face transformers kütüphanesi MoE modellerini destekler; from_pretrained ile doğrudan yüklenebilir. Türkçe görevlerde Mixtral 8x7B, çok dil desteği sayesinde Llama 2 13B'ye kıyasla daha iyi sonuç verir.

Uzman Karışımı Mimarisinin Avantajları

Seyrek Aktivasyon

Her token için tüm parametreler yerine yalnızca birkaç uzman aktif olur; hesaplama maliyeti düşer.

Uzmanlaşma

Farklı uzmanlar farklı dil yapılarını, konuları veya görev tiplerini öğrenerek verimlilik artırır.

Kapasiteyi Artırma

Aynı hesaplama bütçesiyle çok daha büyük toplam parametre sayısına ulaşılabilir.

Dengeli Yük Dağılımı

Yük dengeleme kayıpları aşırı uzman kullanımını önler; tüm uzmanların aktif tutulmasını zorlar.

terminal MoE Modelini Yerelde Çalıştırma: Komutlar ve Bellek Hesabı

MoE'de bellek hesabı toplam parametreye, hız ise aktif parametreye bağlıdır. Qwen3-30B-A3B'nin 3,3B aktif parametresi çıkarımı 3B'lik bir model kadar hızlı yapar ama 30,5B ağırlığın tamamı belleğe yüklenmek zorundadır. Bu ayrımı atlamak, yerel MoE denemelerinde en sık yapılan hesap hatasıdır.

En hızlı başlangıç Ollama ile: ollama run qwen3:30b-a3b ya da ollama run gpt-oss:20b. İkisi de niceleme ile birlikte gelir ve ek ayar istemez.

VRAM yetmiyorsa MoE'nin yapısı bir kaçış yolu sunar: uzman FFN tensörlerini CPU belleğinde tutup dikkat katmanlarını GPU'da bırakabilirsiniz. llama.cpp'de tek bayrak yeterli: llama-server -m qwen3-30b-a3b-Q4_K_M.gguf -ngl 99 --n-cpu-moe 24 -c 8192. Buradaki sayı, uzmanları CPU'ya taşınacak katman adedidir; VRAM dolana kadar azaltırsınız.

Daha ince ayar için tensör adına göre yönlendirme yapılır: -ot "\.ffn_(up|down|gate)_exps\.=CPU". Her token için uzmanların yalnızca küçük bir kısmı okunduğundan, bu yerleşim yoğun bir modelin aynı boyutta CPU'ya taşınmasına göre çok daha az yavaşlar.

Sunucu tarafında vLLM uzman paralelliğini destekler: vllm serve Qwen/Qwen3-30B-A3B --tensor-parallel-size 2 --enable-expert-parallel. Uzmanlar kartlara dağıtılır, her kart yalnızca kendi uzmanlarını tutar; tek istekli kullanımda kazanç sınırlıdır, toplu isteklerde belirginleşir.

compare_arrows Hangi MoE Modeli Hangi Donanıma Sığar?

  • check_circle gpt-oss-20b: 21B toplam, 3,6B aktif, 32 uzman, token başına 4 uzman. Yerleşik MXFP4 nicelemesiyle yaklaşık 13 GB; 16 GB VRAM veya 16 GB birleşik bellekli Mac'te çalışır. Yerel MoE denemek için en düşük giriş eşiği.
  • check_circle Qwen3-30B-A3B: 30,5B toplam, 3,3B aktif, 128 uzman, token başına 8 uzman. Q4_K_M dosyası yaklaşık 18,6 GB; 24 GB kartta bağlamla birlikte rahat sığar. Aktif parametresi küçük olduğu için CPU üzerinde bile kullanılabilir hızlar verir.
  • check_circle Mixtral 8x7B: 46,7B toplam, 12,9B aktif, 8 uzman, token başına 2 uzman. Q4_K_M yaklaşık 26,4 GB, Q5_K_M 32,2 GB, Q8_0 49,6 GB. Tek 24 GB kart yetmez; 2 kart, 48 GB'lık bir kart ya da CPU'ya uzman taşıma gerekir.
  • check_circle Mixtral 8x22B: 141B toplam, 39B aktif. 4 bit nicelemede bile yaklaşık 80 GB ister. Pratikte çok kartlı sunucu işidir, tek masaüstünde anlamlı değildir.
  • check_circle gpt-oss-120b: 117B toplam, 5,1B aktif, 128 uzman, token başına 4 uzman. MXFP4 ile yaklaşık 63 GB; 80 GB'lık tek bir veri merkezi kartına sığacak şekilde tasarlanmıştır.
  • check_circle Qwen3-235B-A22B: 235B toplam, 22B aktif, 128 uzman, token başına 8 uzman. 4 bit nicelemede yaklaşık 130 GB. Aktif parametre 22B olduğu için hız iyidir, sorun tamamen bellek tarafındadır.
  • check_circle DeepSeek-V3 ve R1: 671B toplam, 37B aktif, 256 yönlendirilen uzman artı 1 paylaşılan uzman, token başına 8 yönlendirilen uzman. Q4_K_M yaklaşık 400 GB; Unsloth'un 1,58 bit dinamik nicelemesi dosyayı 131 GB'a indirir ve yüksek RAM'li tek makinede çalıştırmayı mümkün kılar.
  • check_circle Hızlı kural: Gerekli bellek, toplam parametre sayısı çarpı bit başına bayt oranıdır: 4 bit için kabaca toplam parametrenin yarısı kadar GB. Beklenen hız ise aktif parametreye bakar. 30B toplam ve 3B aktif bir model, 30B yoğun modelin belleğiyle 3B yoğun modelin hızını verir.

bug_report MoE Çalıştırırken Sık Yapılan Hatalar

  • check_circle VRAM'i aktif parametreye göre hesaplamak: 3,3B aktif parametre 3,3B bellek anlamına gelmez; kapı ağı her token için farklı uzmanları seçtiğinden hepsi yüklü olmak zorundadır. Çözüm: bellek bütçesini toplam parametre üzerinden, hız beklentisini aktif parametre üzerinden kurun.
  • check_circle Modeli tamamen CPU'ya düşürmek: GPU'ya sığmayınca -ngl 0 ile her şeyi CPU'ya almak en yavaş seçenektir. Çözüm: dikkat katmanlarını ve paylaşılan ağırlıkları GPU'da tutup yalnızca uzman tensörlerini CPU'ya taşıyın (--n-cpu-moe veya -ot ile). Aynı bellek kısıtında token hızı belirgin şekilde artar.
  • check_circle Tek istekte yüksek verim beklemek: MoE'nin verim avantajı toplu isteklerde çıkar. Tek kullanıcı, tek istek senaryosunda darboğaz bellek bant genişliğidir ve fark beklenenden küçüktür. Çözüm: karşılaştırmayı gerçek eşzamanlılık seviyenizde ölçün.
  • check_circle İnce ayarda kapı ağını kurcalamak: Router ağırlıklarına LoRA uygulamak ya da öğrenme oranını yüksek tutmak uzman dağılımını bozar; birkaç uzman tüm trafiği çeker, model kapasitesinin çoğunu kaybeder. Çözüm: LoRA'yı dikkat projeksiyonlarına ve uzman FFN'lerine uygulayın, kapı ağını dondurun.
  • check_circle Uzman katmanlarını agresif nicelemek: Kapı ve paylaşılan tensörleri düşük bit'e indirmek yönlendirme kararlarını bozar ve çıktıda ani kalite düşüşü yaratır. Çözüm: hazır niceleme şemalarına güvenin, elle karışık bit ayarı yapacaksanız router tensörlerini en az 8 bit'te bırakın.
  • check_circle İnce ayarda aşırı uyum riskini görmezden gelmek: MoE modelleri yoğun modellere göre küçük veri setlerinde daha çabuk ezberler çünkü her örnek yalnızca birkaç uzmanı günceller. Çözüm: daha düşük öğrenme oranı, erken durdurma ve doğrulama setinde uzman kullanım dağılımını izleme.
  • check_circle Yanlış Ollama etiketi: qwen3:30b ile qwen3:30b-a3b farklı dosyalardır; etiketi eksik yazınca beklediğinizden başka bir model iner. Çözüm: etiketi tam yazın ve ollama list çıktısında dosya boyutunu doğrulayın.

Sık Sorulan Sorular

  • check_circle MoE ile yoğun model arasındaki temel fark nedir? Yoğun modelde her token tüm FFN parametrelerinden geçer; MoE'de yalnızca seçili k uzman aktive edilir, geri kalanlar çıkarım sırasında kullanılmaz.
  • check_circle Mixtral 8x7B'yi yerel olarak çalıştırmak için ne kadar bellek gerekir? Tüm uzmanların belleğe yüklenmesi nedeniyle 8-bit nicemleme ile yaklaşık 24 GB, tam hassasiyette 48 GB+ VRAM önerilir.
  • check_circle MoE modelleri fine-tune edilebilir mi? Evet; LoRA ve QLoRA yöntemleri MoE modellerinde de çalışır, ancak kapı ağı ağırlıklarına dikkat edilmesi gerekir.
  • check_circle GPT-4 gerçekten MoE mi? Resmi olarak doğrulanmamış olsa da birden fazla sızdırılan kaynak ve sektör analizi GPT-4'ün MoE tabanlı olduğuna işaret eder.
  • check_circle MoE'de yük dengeleme nasıl sağlanır? Eğitim sırasında yardımcı kayıp (auxiliary loss) terimi eklenerek kapı ağının uzmanları dengeli kullanması teşvik edilir.
  • check_circle Top-K yönlendirme ne anlama gelir? Her token için kapı ağı tüm uzmanlara skor atar ve en yüksek K skorlu uzmanlara yönlendirme yapar; K genellikle 1 veya 2 seçilir.
  • check_circle Qwen3-30B-A3B kaç GB VRAM ister? Q4_K_M niceleme ile dosya yaklaşık 18,6 GB'dır, 8K bağlam için ayrılan KV önbelleğiyle birlikte 24 GB'lık bir kartta rahat çalışır. 16 GB kartta llama.cpp'nin --n-cpu-moe bayrağıyla uzman katmanlarının bir kısmını sistem belleğine taşıyarak çalıştırabilirsiniz.
  • check_circle Mixtral 8x7B neden 56B değil de 46,7B parametre? Uzmanlara bölünen kısım yalnızca ileri beslemeli (FFN) bloklardır. Dikkat katmanları, gömme tabloları ve normalizasyon ağırlıkları sekiz uzman arasında paylaşılır, bu yüzden 8 çarpı 7B aritmetiği geçerli olmaz. Aynı nedenle her token için aktif parametre 12,9B'de kalır, 14B değil.
  • check_circle MoE modelini CPU ve GPU'yu birlikte kullanarak çalıştırabilir miyim? Evet ve MoE bu kullanım için yoğun modellerden daha uygundur. llama.cpp'de --n-cpu-moe N bayrağı, N katmanın uzman tensörlerini sistem belleğine taşırken dikkat katmanlarını GPU'da bırakır. Her token için uzmanların yalnızca bir kısmı okunduğundan yavaşlama, aynı boyutta yoğun bir modeli CPU'ya taşımaya göre çok daha azdır.
  • check_circle MoE mi yoğun model mi daha hızlı? Aynı toplam parametre sayısında MoE belirgin şekilde hızlıdır, çünkü token başına parametrelerin yalnızca küçük bir kısmı hesaplanır. Aynı bellek bütçesinde ise karşılaştırma değişir: 4 bit nicelemede 24 GB'a sığan 30B'lik bir MoE ile 13B'lik yoğun bir model yarışır ve MoE genelde kalite tarafında öndedir.
  • check_circle MoE modelleri fine-tune ederken nelere dikkat etmeli? Kapı ağını dondurun ve LoRA'yı dikkat projeksiyonları ile uzman FFN'lerine uygulayın; router bozulursa uzman dağılımı çöker. Öğrenme oranını yoğun modele göre daha düşük tutun, çünkü her örnek yalnızca birkaç uzmanı güncellediği için ezberleme daha hızlı başlar. Eğitim boyunca uzman kullanım dağılımını izlemek erken uyarı verir.