Ana Sayfa

Gemma 3 Modeli Saf C Diliyle CPU Üzerinde Çalışıyor: gemma3.c Projesi

1 dk okuma

gemma3.c, Google'ın Gemma 3 4B IT büyük dil modelini (LLM) Python, PyTorch veya GPU'ya ihtiyaç duymadan doğrudan CPU üzerinde çalıştırmak için sıfırdan yazılmış saf bir C (C11) çıkarım motorudur. Bu proje, modern yapay zeka modellerinin hafif ve bağımsız bir şekilde nasıl çalıştırılabileceğini göstererek önemli bir başarıya imza atıyor. Proje, Gemma 3'ün tüm mimarisini (GQA, hibrit dikkat mekanizması, SwiGLU) desteklerken, harici bağımlılık olmadan %100 saf C koduyla geliştirilmiştir.

Uygulama, bellek eşlemeli ağırlıkları (BF16 SafeTensors) mmap aracılığıyla kullanır ve 262 bin kelimelik yerel bir SentencePiece token'layıcısına sahiptir. Akışlı çıktı özelliği sayesinde token'ları anlık olarak işleyebilir ve etkileşimli sohbet modunu destekler. Hem komut satırı arayüzü (CLI) hem de bir kütüphane API'si sunarak geliştiricilere esneklik sağlar. Linux ve macOS'ta yerel olarak çalışırken, Windows kullanıcıları için WSL veya MinGW (mmap desteği olmadan) önerilir. Proje, model ağırlıklarını indirmek ve bütünlüğünü doğrulamak için bir Python betiği içerir, ancak manuel indirme seçenekleri de mevcuttur.

gemma3.c, yaklaşık 8 GB disk alanı kaplayan BF16 ağırlıklarla çalışır ve çalışma zamanında yaklaşık 3 GB RAM kullanır. Bağlam boyutunu düşürerek bellek kullanımı optimize edilebilir. Performans açısından, önyükleme (prefill) saniyede 2-5 token, üretim (generation) ise saniyede 1-3 token civarındadır ve make fast komutuyla hız artırılabilir. Şu an için sadece CPU üzerinde metin tabanlı işlemler için tasarlanmış olup, henüz niceleme (quantization) desteği bulunmamaktadır. Bu proje, Gemma 3 gibi gelişmiş bir LLM'i düşük seviyeli bir dilde çalıştırmanın mümkün olduğunu kanıtlayarak, yapay zeka uygulamalarının erişilebilirliğini ve dağıtımını potansiyel olarak genişletiyor.

İçgörü

Bu proje, modern büyük dil modellerinin Python, PyTorch veya özel GPU donanımı gerektirmeden, saf C diliyle doğrudan CPU üzerinde çalıştırılabileceğini göstererek yapay zeka dağıtımında yeni ufuklar açıyor.

Kaynak