TorchNeuron: AWS Trainium Üzerinde Hugging Face Modellerini Çalıştırmak Artık Her Zamankinden Daha Kolay
Kaynak: Hugging Face Blog
İçindekiler 3 başlık
TorchNeuron, AWS Trainium için PyTorch üzerinde yeni ve yerel (native) bir arka uç (backend) sunuyor. Transformers, Diffusers ve Kernels kütüphanelerinin bu yapıyı doğrudan desteklemesi, modelleri Trainium üzerinde çalıştırmayı ve Hugging Face Hub'da paylaşmayı her zamankinden daha kolay hale getiriyor.
TorchNeuron Nedir?#
TorchNeuron, AWS Trainium için geliştirilmiş; eager mode, torch.compile ve FSDP ile TP (Tensor Parallelism) gibi yerel dağıtık API'leri destekleyen yeni bir PyTorch eklentisidir. 20 Ekim 2026 itibarıyla halka açık beta olarak sunulan bu paketi, araştırmacılar ve geliştiriciler doğrudan pip install torch-neuronx komutuyla kurabilirler.
Geliştiriciler İçin Pratik Çıkarımlar:
- Özel sarmalayıcı (wrapper) kütüphaneler öğrenmek yerine doğrudan standart PyTorch bilgilerinizi kullanabilirsiniz.
- Dinamik grafik yürütme (eager mode) sayesinde model hata ayıklama (debugging) süreçleri geleneksel GPU deneyimine kavuşur.
Yeni Arka Uç ve HF Kütüphanelerinde Yerel Arayüz#
Bugüne kadar ölçeklenebilir ve uygun maliyetli eğitim ile çıkarım (inference) için tasarlanan AWS Trainium ve Inferentia çiplerindeki Hugging Face deneyimi, optimum-neuron üzerinden sağlanıyordu. Bu kütüphane, PyTorch XLA tabanlı torch-neuronx paketine dayanıyordu. O dönem için doğal bir seçim olsa da geliştiricileri bir derleyici gibi düşünmeye zorluyordu:
- Eager yürütme yerine tembel tensörler (lazy tensors) kullanımı,
- Yalnızca statik şekillerle (static shapes) çalışma zorunluluğu,
- Her grafik kırılmasında (graph break) yeniden derleme gereksinimi.
Optimum Neuron bu karmaşıklığı gizlemek için özel modelleme sınıfları ve eğiticiler barındırıyordu. TorchNeuron ise bu durumu tamamen değiştiriyor. Doğrudan PyTorch'a entegre olarak neuron birimini yerel bir cihaz olarak tanımlıyor; eager yürütme, PyTorch'un kendi dağıtık yapı taşları (DTensor, FSDP2) ve torch.compile desteği sunuyor.
Artık Hugging Face kütüphaneleri için Trainium, diğer hızlandırıcılardan farksız bir cihazdır: Transformers, Diffusers, Accelerate, PEFT ve TRL aynı sınıf ve betiklerle doğrudan çalışır. Bu nedenle Neuron kullanıcılarının artık Optimum Neuron yerine doğrudan bu ana kütüphaneleri kullanmaları önerilmektedir.
Transformers ile Çıkarım (Inference) ve Metin Üretimi#
Metin üretimi artık çok çeşitli modeller için Transformers içerisinde yerel olarak destekleniyor. TorchNeuron ile en çok kullanılan ilk 100 metin üretimi model mimarisinin %89'u kutudan çıktığı gibi desteklenmektedir (Optimum Neuron v0.4.5'te bu oran %46 idi). Kodunuzda yalnızca device_map="neuron" argümanını geçirerek modelinizi Neuron cihazlarına taşıyabilirsiniz.
Neuron örneklerinden tam verim almak için Tensor Parallelism (TP) ile metin üretimi yaparken dikkat edilmesi gereken pratik noktalar şunlardır:
- Süreç Grubu Başlatma: Dağıtık yapı
dist.init_process_group(backend="neuron")ile doğrudan başlatılır. - Statik Önbellek (Static Cache): Sık yeniden derlemeleri (recompilations) önlemek amacıyla üretim aşamasında statik önbellek kullanılması şiddetle tavsiye edilir.
- Standart Dağıtık Yapılandırma:
AutoModelForCausalLM.from_pretrainedçağrısındatorch.bfloat16veri tipi,DistributedConfig(tp_size=world_size)veDeviceMeshkullanılarakQwen/Qwen3.8-27Bgibi büyük modeller kolayca ölçeklendirilebilir.
Bu mimari dönüşüm, bulut maliyetlerini optimize etmek isteyen mühendislik ekiplerinin kod tabanlarını değiştirmeden alternatif yapay zeka donanımlarına geçiş yapmasını büyük ölçüde hızlandıracaktır.
Bu konuyu derinlemesine öğrenmek isterseniz: PyTorch FSDP2: Modern Sharding API modülüne göz atın.
Kaynak ve atıf
Bu yazı, Hugging Face Blog üzerinde yayımlanan içerikten yararlanılarak Edumints tarafından yapay zekâ desteğiyle Türkçe hazırlandı. Ayrıntılar ve yazarların kendi anlatımı için orijinaline bakabilirsin:
- huggingface.co/blog/hf-torchneuron