Yazı

Şirket İçi Yapay Zeka için Kontrol Noktası ve Model Depolama Mimarisi

On-Premises AI · MLOps · AI Architecture · Best Practices · Intermediate

Geleneksel yedekleme sistemlerinin tasarlanmadığı yapay zeka iş yüklerinin benzersiz depolama zorluklarını ele alarak büyük model kontrol noktalarını şirket içinde depolamak, sürümlemek ve kurtarmak için tasarım kalıpları.

Model kontrol noktası ve veri yönetim sistemlerini temsil eden parlayan depolama altyapısı sıraları

Geleneksel Depolama Neden Yapay Zeka İş Yükleri İçin Yetersiz Kalıyor

Tam hassasiyette tek bir 7 milyar parametreli model yaklaşık 28 GB yer kaplar. Bu modeli eğitmek, birkaç yüz adımda bir kontrol noktaları üretir — her kontrol noktası aynı boyutta. 20 kaydedilmiş kontrol noktasıyla bir ince ayar çalışması, optimize edici durumlarını hesaba katmadan 560 GB tüketir ve bu durumlar kontrol noktası başına boyutu üç katına çıkarabilir. Bunu farklı modeller üzerinde deneyler yapan birden fazla ekibe ölçekleyin ve bir kuruluş haftalarca içinde kolayca onlarca terabayt model artifaktı biriktirebilir.

Geleneksel kurumsal depolama ve yedekleme sistemleri veritabanları, belgeler ve uygulama verileri için tasarlanmıştır. Küçük rastgele okumalar, değişen blokların artımlı yedeklemeleri ve metin ağırlıklı verilerin tekilleştirmesi için optimize ederler. Model kontrol noktaları bunun tam tersidir: yüksek işlem hacmiyle sıralı olarak yazılan, tekilleştirmeye direnen ikili içerikli devasa tekil dosyalar.

Model depolamayı sonradan düşünülmüş bir konu olarak ele almak, kontrol noktası yazımlarını beklerken duran eğitim işlerine, beklenmedik şekilde dolan depolama sistemlerine ve dakikalar alması gerekirken saatler süren kurtarma süreçlerine yol açar.

Model Yaşam Döngüsü Aşamaları İçin Depolama Katmanları

Tüm model artifaktlarının aynı erişim kalıpları yoktur. Katmanlı bir depolama stratejisi performansı ihtiyaca eşleştirir ve soğuk veri tutan hızlı depolama için ödeme yapmaktan kaçınır.

Sıcak katman: aktif eğitim ve sunum. Eğitim sırasında yazılan kontrol noktaları ve çıkarım için yüklenen modeller, yüksek işlem hacmi ve düşük gecikme süreli depolamaya ihtiyaç duyar. GPU düğümlerine doğrudan bağlı NVMe SSD'ler veya Lustre, BeeGFS, GPFS gibi paralel dosya sistemleri, eğitimi durdurmadan kontrol noktalarını yazmak için gereken 5-20 GB/s işlem hacmini sağlar.

Ilık katman: son deneyler ve hazırlık. Tamamlanmış eğitim çalışmaları, değerlendirilen aday modeller ve dağıtımı bekleyen adaptörler, orta düzey işlem hacmine sahip ağa bağlı depolamada yaşar. MinIO gibi nesne depolama çözümleri, makul performans ve kapasiteyi hesaplamadan bağımsız ölçekleme yeteneğiyle S3 uyumlu API'ler sağlar.

Soğuk katman: arşivleme ve uyumluluk. Tekrarlanabilirlik, denetim veya geri alma için tutulan eski model sürümleri en ucuz mevcut depolamada yaşar. Teyp kütüphaneleri, yüksek yoğunluklu dönen disk dizileri veya derin sıkıştırılmış nesne depolama burada işe yarar. Finans ve sağlık gibi sektörlerdeki düzenleyici gereksinimler, model artifaktlarının yıllarca saklanmasını zorunlu kılabilir.

Katman geçişini politikalara dayalı olarak otomatikleştirin. Eğitim çalışması tamamlandığında kontrol noktası sıcaktan ılığa, yapılandırılabilir bir saklama süresinden (genellikle 30-90 gün) sonra ılıktan soğuğa taşınmalıdır.

Ölçeklenebilir Sürümleme Stratejileri

Model sürümlemesi, kod sürümlemesiyle aynı şey değildir. Git ve benzeri araçlar kilobaytlarla ölçülen metin farkları için tasarlanmıştır. Model dosyaları gigabaytlarla ölçülen ikili bloblerdir. Model kontrol noktalarını Git'te — Git LFS ile bile — saklamak, klonlaması acı veren, sorgulaması yavaş ve depolama açısından pahalı depolar oluşturur.

Amaca yönelik model kayıt defterleri bunu daha iyi ele alır. MLflow'un model kayıt defteri, DVC (Data Version Control) ve LakeFS, her sürümün tam kopyalarını gerektirmeden meta veri, soy ve etiketleme ile sürüm izleme sağlar. DVC özellikle sürüm meta verilerini Git'te saklarken gerçek ikili verileri yapılandırılabilir bir arka uçta tutarak Git benzeri sürüm semantiğini Git'in ölçeklenebilirlik sınırlamaları olmadan sunar.

Sürümleme şemanızı gerçekten neyi geri almanız gerektiğine göre tasarlayın. Pratik bir yaklaşım, her model artifaktına bileşik bir anahtar atar: model-adı/temel-sürüm/adaptör-adı/eğitim-çalışma-id/kontrol-noktası-adımı. Bu hiyerarşi yaygın sorguları destekler.

Her sürümün yanına meta veri saklayın: eğitim yapılandırması, veri seti tanımlayıcıları, değerlendirme metrikleri, kullanılan donanım ve eğitim kodunun Git commit'i. Bu meta veri küçüktür ve bir veritabanına veya kayıt defterine aittir.

Kontrol Noktası Yazma Optimizasyonu

GPU'lar boşta otururken diske 30 GB'lık bir kontrol noktası yazmak, eğitim verimliliğine doğrudan bir darbedir. 2 GB/s yazma hızında tek bir kontrol noktası yazımı 15 saniye sürer. Her 500 adımda kontrol noktası bulunan bir eğitim çalışmasında bu, saatlerce boşa harcanan GPU zamanına eklenir.

Asenkron kontrol noktası, kontrol noktası yazımlarını devam eden eğitimle örtüştürerek bunu çözer. Eğitim süreci model durumunu ana belleğe (CPU RAM) kopyalar, ardından bir arka plan iş parçacığı ana bellekten depolamaya yazarken eğitime hemen devam eder. PyTorch'un dağıtık kontrol noktası modülü ve DeepSpeed gibi çerçeveler asenkron yazımları doğal olarak destekler.

Birden fazla GPU veya düğüm arasında dağıtılmış eğitim için parçalı kontrol noktası kullanın. Tam model durumunu tek bir düğümde toplamak ve büyük bir dosya yazmak yerine, her düğüm kendi parçasını paralel olarak yazar. PyTorch'un FSDP'si varsayılan olarak parçalı kontrol noktaları üretir.

Artımlı kontrol noktası yalnızca son kontrol noktasından bu yana değişen parametreleri yazar. Çoğu parametrenin donmuş olduğu ince ayar çalışmaları (örneğin LoRA) için değişen parametreler toplam model boyutunun %1'inden az olabilir ve kontrol noktası yazımlarını neredeyse anlık hale getirir.

Kurtarma ve Felaket Senaryoları

Model depolama mimarisi üç başarısızlık senaryosunu ele almalıdır: eğitim kesintisi, çıkarım düğümü arızası ve felaket düzeyinde depolama kaybı.

Eğitim kesintileri için kontrol noktası sıklığı kurtarma maliyetini belirler. Her 500 adımda kontrol noktası, yeniden başlatmada en fazla 500 adım kaybetmek anlamına gelir. Kaybedilen adımların zaman maliyetini hesaplayın ve kontrol noktası yazma ek yüküyle dengeleyin.

Çıkarım düğümü arızaları için kurtarma sorusu, yedek bir düğüme ne kadar hızlı model yükleyebileceğinizdir. NVMe depolamadan yükleme 10-30 saniye sürer, ancak ağ depolamasından çekmek birkaç dakika alabilir. Modelleri çıkarım düğümlerinde önceden hazırlamak — her düğümün yerel depolamasında aktif modelin yerel bir kopyasını tutmak — yük devretme süresini azaltır.

Felaket düzeyinde depolama kaybı için çoğaltma çözümdür. Ilık katmanı, tercihen ayrı bir arıza alanında (farklı raf, farklı güç devresi veya ikincil bir site) ikinci bir depolama sistemine çoğaltın.

Kurtarmayı düzenli olarak test edin. Soğuk depolamadan bir modeli geri yüklediğiniz ve ondan çıkarım sunduğunuz bir tatbikat yapın. Uçtan uca süreyi ölçün ve geri yüklenen modelin orijinaliyle aynı çıktıları ürettiğini doğrulayın. Hiç test edilmemiş kurtarma süreçleri, çalışmayan kurtarma süreçleridir.

Bütünü Bir Araya Getirmek

Model depolaması, yapay zeka operasyonlarınızı ya mümkün kılan ya da kısıtlayan altyapıdır. İyi tasarlanmış bir depolama mimarisi, ekiplerin kesintisiz eğitim yapmasını, güvenle dağıtım yapmasını ve arızalardan hızla kurtulmasını sağlar. İhmal edilmiş bir mimari ise eğitimi yavaşlatan, dağıtımı karmaşıklaştıran ve veri kaybı riski taşıyan darboğazlar yaratır.

Temellerle başlayın: mevcut kontrol noktası yazma işlem hacminizi ölçün, model artifaktlarınızın envanterini çıkarın ve otomatik yaşam döngüsü politikalarıyla katmanlı depolama uygulayın. Uygun meta verilerle bir model kayıt defteri aracılığıyla sürümleme ekleyin. Asenkron ve parçalı teknikler kullanarak kontrol noktası yazımlarını optimize edin. Kurtarma prosedürlerinizi ihtiyacınız olmadan önce test edin.

Yatırım, yapay zeka hedeflerinizle ölçeklenir. Ara sıra ince ayar deneyleri yapan bir kuruluş basit bir NFS paylaşımı ve manuel sürümleme ile idare edebilir. Birkaç ekip genelinde üretimde birden fazla model çalıştıran bir kuruluş, burada açıklanan tam mimariye ihtiyaç duyar. Depolama karmaşıklığınızı yapay zeka operasyonlarınızın olgunluğuyla eşleştirin ve büyümeyi planlayın.

Öne çıkan görsel: Steve A Johnson, Unsplash.