SON DAKİKA

Nvdia

NVIDIA NeMo-RL ile Güçlendirme Öğrenimi: Optimized Eğitim Verimliliği için Megatron-Core Desteği

NVIDIA NeMo-RL kütüphanesinin ilk sürümü, PyTorch DTensor (FSDP2 olarak da bilinir) ile eğitim desteği sunmaktadır. Bu altyapı, HuggingFace ekosistemine yerel entegrasyon, hızlı deney yapma imkanı ve PyTorch’un yerel paralellikleri (FSDP2, tensor paralel, sıra paralel ve bağlam paralel) ile ölçeklenme olanağı sağlar.

Bununla birlikte, model boyutları yüz milyarlarca parametreye yaklaştıkça, DTensor yolu yetersiz hale gelmektedir. Büyük modellerin aktivasyon belleği önemli yeniden hesaplama yükleri meydana getirerek, adım sürelerini aşırı şekilde yavaşlatmaktadır. DTensor yolu ayrıca, optimal verimlilik için gerekli olan optimize edilmiş NVIDIA CUDA çekirdekleri ve diğer performans iyileştirmelerinden de yoksuldur. Bu zorluklar, NVIDIA tarafından tasarlanan Megatron-Core kütüphanesine daha verimli bir çözüm ihtiyacını ortaya çıkarmaktadır.

En son NeMo-RL v0.3 sürümünü keşfedin; burada, detaylı dökümantasyon, örnek betikler ve Megatron-Core arka planı ile büyük modelleri etkili bir şekilde yeniden eğitmek için yapılandırma dosyaları bulacaksınız.

Megatron Arka Planıyla Pekiştirilmiş Güçlü Öğrenme

Megatron-Core kütüphanesi, GPU’ya optimize edilmiş teknikler ve yüksek verimlilik artırma iyileştirmeleri ile büyük dil modellerinin kesintisiz eğitimini mümkün kılar. Kütüphanenin 6D paralellik stratejisi, iletişim ve hesaplama desenlerini optimize eder ve çeşitli model mimarilerini destekler.

NeMo-RL, Megatron-Core için destek ekleyerek geliştiricilerin bu optimizasyonları bir daha training süreleri boyunca kullanmalarını sağlar. Megatron-Core birçok düşük seviyeli ayar sunmasına rağmen, bu ayarları yapılandırmak yeni kullanıcılar için zorlu olabilir. NeMo-RL, bu süreci kolaylaştırarak karmaşık ayarları otomatik olarak yönetir ve kullanıcıya daha basit, sezgisel yapılandırma seçenekleri sunar.

Megatron Eğitiminin Başlatılması

Megatron tabanlı eğitimi etkinleştirmek oldukça basittir. Yapılandırma dosyanıza policy.megatron_cfg kısmını eklemeniz yeterlidir:

policy:
  
  ...
  
  megatron_cfg:
    enabled: true
    activation_checkpointing: false
    tensor_model_parallel_size: 1
    pipeline_model_parallel_size: 1
    
    ... 
    
    optimizer:
      ...
    
    scheduler:
      ...
    
    distributed_data_parallel_config:
      grad_reduce_in_fp32: false
      overlap_grad_reduce: true
      overlap_param_gather: true
      average_in_collective: true
      use_custom_fsdp: false
data_parallel_sharding_strategy: "optim_grads_params"

Tüm argümanlar, eğitim sırasında Megatron’a iletilecektir. Yapılandırmanıza Megatron bölümünü ekledikten ve enabled=True ayarından sonra, bir modeli eğitmek için hazır hale gelirsiniz. Eğitim başlatma süreci, DTensor ile olduğu gibi, README‘de veya DeepScaleR’i yeniden üretim rehberimizde açıklandığı gibi yapılmaktadır.

Sonuçlar ve Karşılaştırmalar

Megatron tabanlı eğitim, hem yoğun hem de Uzmanlar Karışımı (MoE) modellerini desteklemektedir. Aşağıda, Group Relative Policy Optimization (GRPO) yöntemi için bazı yaygın modellerin adım süresi kırılımı gösterilmektedir. Tablo, her eğitim çalışmasının adım 22-29’u üzerinden ortalamaları sunmaktadır.

Model Arka Plan Düğümler Düğüm başına GPU Toplam adım süresi (s) Politika eğitimi (s) Refit (s) Üretim (s) Logprobs almak (s) Örnek başına ortalama üretilen token sayısı
Llama 3.1-8B Instruct Megatron 1 8 112 28 5 58 18 795
PyT DTensor 1 8 122 38 4 57 19 777
Llama 3.1-70B Base Megatron 8 8 147 28 14 84 18 398
PyT DTensor* 8 8 230 97 15 82 28 395
Qwen3 32B** Megatron 8 8 213 68 7 96 40 3283
Qwen3 30B-A3B** Megatron 8 8 167 50 12 78 23 3251
Tablo 1. Farklı eğitim konfigürasyonları için model performans karşılaştırması, Megatron’a karşı PyTorch DTensor

Tüm koşullar Max dizilim uzunluğu 4096, rollout batch boyutu 2048, global batch boyutu 512 ve dizilim paketleme etkinleştirilmiş olarak gerçekleştirilmiştir.

Megatron-Core tarafından sağlanan performans iyileştirmelerini kullanarak, DTensor ile karşılaştırıldığında, aynı yakınsama özellikleriyle üstün eğitim performansı elde edilmiştir.

Uzun Dizi Desteği ve Diğer Önemli Özellikler

Megatron-Core ve DTensor ile uzun bağlam eğitimini destekleyebiliriz. Örneğin, aşağıda Megatron arka planı ile birlikte 16k dizilim uzunluğunda Llama 3.3 70B için mevcut performans sonuçları verilmiştir. Daha uzun dizilim uzunlukları da desteklenmektedir ve uzun bağlam eğitimi için performans optimizasyonları devam etmektedir.

Bunların yanı sıra, NeMo-RL v0.3, geniş bir model yelpazesinde etkili yeniden eğitim süreçlerini kolaylaştıran birkaç heyecan verici özellik sunmaktadır:

  • Asenkron rollout: Kullanıcılar artık vLLM asenkron motoru‘nu etkinleştirerek policy.generation.async_engine=True ayarını aktif hale getirebilir, bu da çok aşamalı RL sürelerini 2-3 kat hızlandırmaktadır.
  • Birlikte olmayan üretim (DTensor arka planı için): Kullanıcılar artık eğitim ve üretim arka planlarını farklı GPU setlerinde yerleştirme seçeneğine sahiptir. Bu, eğitim ve üretim için uyumsuz paralellikler/dünya boyutları olduğunda veya eğitim veya üretim sonrası bellek yeterli olmadığında faydalı olabilir.

Sonuç olarak, NeMo-RL v0.3 ile Megatron-Core arka planının kullanımı, PyTorch DTensor ile karşılaştırıldığında, eğitim verimliliğini önemli ölçüde artırmaktadır. Özellikle Llama 70B gibi büyük modeller için sağlanan GPU’ya özel çekirdekler, 4D paralellik ve dizi paketleme ile birlikte eğitimin verimli bir şekilde gerçekleştirilmesi sağlanmaktadır.

NVIDIA NeMo-RL dökümantasyonunu, örnek yapılandırmalar ve betiklerle keşfedin, böylece Megatron-Core optimizasyonları ile büyük modellerin yeniden eğitimine başlayabilirsiniz.

Kaynak

Nvdia Blog

Düşüncenizi Paylaşın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

İlgili Teknoloji Haberleri