SON DAKİKA

Nvdia

“Quantization Aware Training ile GPT-OSS’nin Doğruluk ve Performansını İyileştirme”

Özgür yazılım temelli model sürümleri, yapay zeka topluluğu için heyecan verici bir dönemdir. OpenAI laboratuvarının GPT-2’den bu yana ilk açık kaynaklı model ailesi olan gpt-oss, gelişmiş bir modeli beraberinde getiriyor. Uzman karışımı (MoE) mimarisi, 128K bağlam uzunluğu ve ayarlanabilir derin akıl yürütme yetenekleri ile dikkat çeken modelin en büyük varyantı olan gpt-oss-120B, kapalı kaynaklı o3 ve o4 modellerine benzer performans sergiliyor.

Güçlü performansına rağmen, çoğu temel model, üretimde etkin bir şekilde kullanılabilmesi için ön eğitim sonrası teknikler gerektiriyor. Bu durum, sağlık ve finans gibi düşük hata toleransına sahip endüstriler için özellikle önem taşımaktadır. OpenAI’nın gpt-oss sürümünü native MXFP4 hassasiyeti ile yayınlaması, bu alanda bir ilkti ve ince ayar işlemleri için benzersiz zorluklar getirdi.

gpt-oss için SFT ve QAT Uygulamaları

Native FP4 formatında model eğitimi için heyecan verici yeni teknikler, eğitim süresini optimize etmede büyük bir potansiyel taşıyor. Ancak, gpt-oss için ince ayar yaparken, native MXFP4 hassasiyetinin henüz sabit bir doğruluk sağlamadığı görülmektedir. Bu durum, modelin önce daha yüksek bir hassasiyete çıkartılmasını gerektiriyor.

Yüksek hassasiyete çıkartıldıktan sonra, bu yeni noktadan ilk denetimli ince ayar (SFT) işlemi gerçekleştirilmektedir. Ardından, kuantizasyon-bilinçli eğitim (QAT) uygulaması ile model yeniden FP4 hassasiyetine döndürülerek görev özelinde performansın geri kazanılması sağlanmaktadır. Bu yöntem, SFT’nin görev spesifik davranışları pekiştirmesini sağlarken, QAT, ağırlıkları düşük hassasiyet formatına adapte ederek, hem uyumluluğu hem de performansı sağlıyor.

Uygulama Süreci

Bu sürecin detaylarını özetlemek gerekirse:

  1. Orijinal MXFP4 kontrol noktasını BF16/FP16’ya çıkartma: Hugging Face’in Transformers kütüphanesi ile kolayca gerçekleştirilebilen bu süreç, daha stabil gradyanlar sağlayarak QAT’nin FP4’e yeniden kuantize edilme sırasında etkin bir şekilde doğruluğu geri kazanmasına olanak tanır.
  2. SFT Uygulaması: Kullanımınıza uygun bir fine-tuning verisetini upcasted hassasiyet (BF16 veya FP16) modeli ile kullanarak denetimli ince ayar uygulamanız gerekir.
  3. TensorRT Model Optimizer kullanarak kuantize etme: BF16 ince ayarlı model, mtq.quantize() fonksiyonu ile kuantize edilir. Bu fonksiyon, modeli PTQ veya QAT için hazırlamak üzere kullanılır.
import modelopt.torch.quantization as mtq

config = mtq.MXFP4_MLP_WEIGHT_ONLY_CFG

# Kalibrasyon için ileri doğru döngü tanımlama
def forward_loop(model):
    for data in calib_set:
        model(data)

# Kuentizasyonu ve QAT için modeli hazırlama
model = mtq.quantize(model, config, forward_loop)
  1. FP4 kuantize edilmiş modeli ince ayar yapma: Bu ikinci ince ayar adımı, QAT aşamasıdır ve çok küçük bir öğrenme oranı (örn. 1e-5 Adam ile) ile gerçekleştirilir.
# QAT ile normal bir ince ayar döngüsü
train(model, train_loader, optimizer, scheduler, ...)

Optimal QAT hiperparametreleri ve eğitim süresi ayarlanabilir niteliktedir. Ayrıca, adım 1’in atlanması durumunda doğrudan QAT uygulanması, daha düşük doğruluk ile sonuçlanır. En iyi sonuçlar için önce yüksek hassasiyet ince ayarı yapılmasını, ardından QAT uygulanmasını öneriyoruz. Memnuniyet verici bir yakınsama sağlandıktan sonra, Model Optimizer API’leri modeli standart bir PyTorch kontrol noktasına aktarma imkanı sunmaktadır.

MXFP4 QAT İnce Ayarının gpt-oss Üzerindeki Etkisi

Yukarıdaki QAT ince ayar iş akışının etkiliğini göstermek için, iki özel aşağı yönlü değerlendirme görevini analiz ettik: çok dilli veri kümesi kullanarak İngilizce dışındaki akıl yürütmeyi geliştirme ve FalseReject veri kümesi kullanarak kullanıcı ifadelerinde gereksiz reddetmelerin azaltılması. Gpt-oss, bu görevlerde başlangıçta sırasıyla %16 ve %30 puan alırken, uygulanan yöntem sonrasında her iki görevin geçiş oranı %98’e çıkarak önemli bir iyileşme gösterdi.

Bu modelin sonuçları, upcasting ve QAT uygulamalarının gpt-oss ince ayarı sırasında doğruluğun geri kazanılmasındaki etkinliğini ortaya koyuyor. Ancak, ek görev özelinde performans kazanma fırsatları hala mevcut.

The table shows validation pass rates of gpt-oss-20b under different training and quantization methods.
Şekil 2. gpt-oss-20b’nin orijinal, SFT, PTQ ve QAT yöntemleri ile doğrulama geçiş oranları

NVFP4 İle Gelişmiş Performans

NVIDIA Blackwell ile NVFP4’un geliştirilmesi, hem eğitim hem de çıkarım verimliliği için özel olarak tasarlanmış yeni bir FP4 formatıdır. Bu, QAT ile eşleştirildiğinde daha fazla doğruluk geri kazanımı imkanı sunmaktadır. NVFP4, geliştiricilerin NVIDIA Blackwell Ultra hesaplama ile 15 PFLOPs‘a kadar yüksek işlem gücünden yararlanarak model doğruluğunu artırmasını sağlayan özel talimatlar içerir.

MXFP4 ve NVFP4 doğrulama kaybı karşılaştırıldığında ise, NVFP4 sürümünün sürekli olarak daha iyi bir yakınsama sağladığı gözlemlenmiştir. Bu durum, derin akıl yürütme, daha sıkı eşik değerleri veya düşük hata toleransına sahip aşağı yönlü görevler için ek bir marj yaratabilmektedir.

Grouped bar chart comparing validation loss for gpt-oss-20B on two downstream tasks—Multi-Lingual and FalseReject—under different training and quantization methods.
Şekil 4. SFT, PTQ ve QAT ile NVFP4 ve MXFP4 formatları için Multi-Lingual ve FalseReject görevlerinde doğrulama kaybı

NVIDIA TensorRT-LLM ile gpt-oss NVFP4 desteklemesi planlandığı için geliştiricilerin NVFP4’ü kolaylıkla kullanabilmesi sağlanacaktır. Bu aşamada, MXFP4 için SFT + QAT iş akışı da kanıtlanmış bir yol olarak kalacaktır. NVFP4 gpt-oss’ın tam desteklenmesiyle, aynı tarif ile NVIDIA Blackwell’de daha yüksek doğruluk elde edilecektir.

İnce Ayar Yapılmış Modelin Dağıtımı

Bu tarifin uygulanmasının ardından, BF16 eğitilmiş kontrol noktasını MXFP4 formatına dönüştürmek için Model Optimizer deposundan sağlanan bir kolaylık betiği kullanılabilir.

python examples/gpt-oss/convert_oai_mxfp4_weight_only.py --model_path qat_model_dir/ --output_path qat_model_mxfp4/

Bu tariften elde edilen MXFP4 kontrol noktaları.upperstream SGLang, TensorRT-LLM ve vLLM ile test edilmiştir. TensorRT-LLM kullanarak dağıtım için aşağıdaki komutu kullanabilirsiniz. 1.1.0rc1 sürümüne erişmek için buraya tıklayınız.

# trtllm-serve ile son noktayı barındırma
trtllm-serve qat_model_mxfp4/ --tokenizer <tokenizer_path> --max_batch_size <max_batch_size> --max_num_tokens <max_num_tokens> --max_seq_len <max_seq_len> --tp_size <tp_size> --pp_size <pp_size> --host 0.0.0.0 --kv_cache_free_gpu_memory_fraction 0.95

Sonuç

Gpt-oss ince ayarındaki ana zorluk, FP4 formatında doğruluğu geri kazanırken düşük hassasiyetin sağladığı verimlilik kazanımlarını korumaktır. BF16 çıkartması ile SFT’yi uygulamak ve ardından QAT yapmak, bu açığı kapatma konusunda başarılı bir yöntemdir. Bu süreç sınavdan başarıyla geçerek doğruluğu artırırken, görev özelindeki performansı da güçlendirir, böylece kullanıcı deneyimi gelişir. Sonuç olarak, yapay zeka uygulamalarında yüksek hizmet kalitesi ve daha iyi yatırım getirisi sağlar.

Geleceğe baktığımızda, NVFP4 sıkı yakınsama ve katı eşik değerleri için ek marj sunarak, gpt-oss‘ın TensorRT-LLM ve diğer çerçevelerde sağladığı avantajları daha da genişletecektir. Tam SFT + QAT tarifi ile başlamaya davet ediyoruz; bu tarif artık NVIDIA Model Optimizer deposunda mevcuttur.

Kaynak

Nvdia Blog

Düşüncenizi Paylaşın

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

İlgili Teknoloji Haberleri