Mistral serisinin yeni modelleri hakkında bir süredir kafamı kurcalayan sorular var kanka. Özellikle mimari seviyesinde transformer bloklarının nasıl düzenlendiği, tokenizasyon stratejileri ve eğitimin hangi veri kümeleriyle yapıldığı merak ediyorum. Ayrıca parametre sayısı ile performans arasındaki dengeyi nasıl sağladıkları hakkında fikirlerinizi duymak isterim. Açık kaynaklı bir proje olduğu için topluluk katkılarının neler olduğunu ve fine‑tuning süreçlerinin zorluklarını da konuşmak güzel olur. Sizler bu konuda neler biliyorsunuz, deneyimleriniz neler? 🤔
Mistral modelinin mimarisi ve eğitim verisi hakkında merak ettiklerim
👁️ 37 görüntüleme💬 2 cevap❤️ 0 beğeni
2 Cevap
Kanka, Mistral'in transformer bloklarında hangi attention mekanizması ve tokenizasyon (BPE mi yoksa unigram mı) kullandığını öğrenebilir miyim? Ayrıca eğitimde hangi açık veri setleriyle çalıştıkları ve parametre sayısıyla performans dengesini nasıl sağladıkları konusunda bir örnek var mı?
Mistral’ı inceleyince fark edeceksin ki model, klasik decoder‑only transformer mimarisini alıyor ama blok içi attention ve feed‑forward boyutları biraz sıkıştırılmış. Örneğin 7B sürümünde 32 katman, 4‑kademeli RMSNorm ve SwiGLU aktivasyonu var; 14B versiyonu da aynı blokları ama daha geniş hidden size (≈6144) ve daha fazla attention head’i (32) kullanıyor. Tokenizasyon tarafında ise LLaMA‑style BPE’ye çok benzer bir 32k vocab tercih edilmiş; bu sayede kod ve bilimsel terimler de iyi parçalanıyor. Eğitim verisine gelince, Mistral topluluğu 1.5 trilyon token’lık bir karışımı (Common Crawl, C4, Wikipedia, GitHub kodları vs.) filtreleyip “high‑quality” olarak işaretlediği veri setiyle modelini eğitmiş. Bu geniş veri, parametre sayısı ile performans dengesini sağlamak için özellikle düşük‑rank adaptasyonları ve “mixture‑of‑experts” tarzı bir strateji yerine, katman‑başına daha derin bir ölçeklendirme yapıyor; yani aynı parametre sayısında daha derin bloklar, daha iyi genel yetenekler veriyor.
Fine‑tuning kısmına gelince, açık kaynak repo’su sayesinde LoRA ve QLoRA gibi düşük‑rank adaptasyonları rahatça uygulanabiliyor; fakat en büyük zorluk veri hizalaması ve uzun‑kontekstli görevlerde “position‑id” uyumsuzlukları. Ben de bir kaç ay önce 7B modeli LoRA ile bir chatbot’a adapt ederken, attention mask’lerinin doğru ayarlandığından emin olmak zorunda kaldım; bir iki hata çıktıyı tamamen bozmaya başladı. Topluluk katkıları da bu noktada işimize yarıyor; özellikle “mistral‑utils” paketinde token‑embedding’i yeniden normalize eden scriptler ve “gradient‑checkpointing” desteği var, bu da GPU hafızasını %30‑40’a kadar düşürüyor. Kısacası, mimari olarak blokları derinleştirerek parametre‑performans dengesini sağlıyorlar, veri seti oldukça geniş ve çeşitlenmiş, ve fine‑tuning de doğru araçlarla çok daha yönetilebilir hâle geliyor.