Hugging Face Depolama ve SkyPilot Entegrasyonu ile Çoklu Bulut Üzerinde Yapay Zeka İş Yükleri Çalıştırma
Kaynak: huggingface.co ·
SkyPilot ve Hugging Face, modellerin ve veri kümelerinin bulutlar arası veri çıkış ücreti ödenmeden herhangi bir bulut sağlayıcısındaki GPU kümesinde çalıştırılmasını sağlayan yeni bir entegrasyon duyurdu. Yeni store: hf backend desteği sayesinde, tek bir hf:// URL ve mevcut HF_TOKEN kimlik bilgisi kullanılarak modeller doğrudan bağlanabiliyor ve Xet tabanlı içerik tanımına dayalı parçalama teknolojisiyle veriler otomatik olarak tekilleştiriliyor. Okuma işlemlerinde sıfır veri çıkış ücreti sunulurken, tembel okuma (lazy reads) yöntemi sayesinde tüm dosyanın indirilmesi beklenmeden veriler akış şeklinde işlenebiliyor. Ortak geliştirilen bu açık kaynaklı altyapı, farklı bulut sağlayıcılarındaki ayrılmış veya talep üzerine ayrılan GPU kapasitelerinin veri taşıma maliyeti olmadan esnek bir şekilde kullanılabilmesine olanak tanıyor.
Neden önemli?
Önceki durumda ekipler, verilerin bulunduğu bulut sağlayıcısı ile GPU'ların bulunduğu bulut sağlayıcısı farklı olduğunda yüksek çapraz bulut veri çıkış vergisi (egress tax) ödemek zorunda kalıyor ya da her bulutta ayrı kopya tutuyordu. Bu entegrasyon, geliştiricilerin veri maliyeti engeline takılmadan 20'den fazla bulut, Kubernetes ve yerel sistem üzerinde kapasite aramasına ve GPU'ları verimli kullanmasına imkan tanır.
Bununla neler yapılabilir?
- Olası kullanım: Modelleri Hugging Face Hub üzerinde tutarak AWS, GCP veya Lambda gibi farklı sağlayıcılardaki L40S, L4 ve H100 grafik işlemciler üzerinde aynı YAML dosyasıyla ince ayar eğitimleri gerçekleştirmek.
- Olası kullanım: Eğitim sırasında ara kontrol noktalarını doğrudan Hugging Face Bucket alanına akış yöntemiyle kaydetmek ve Xet tabanlı veri tekilleştirme ile sadece değişen parçaları yüklemek.
- Olası kullanım: Çıkarım sunucularına temel modelleri ve veri setlerini ek bulut kopyaları oluşturmadan doğrudan bağlayarak hızlı yükleme süreleri elde etmek.
Somut sonuçlar ve kanıtlar
- Model, tembel okuma yöntemiyle yaklaşık 30 saniyede yüklendi ve ~500 MB/s hıza ulaştı. (Üreticinin açıklaması)
- Testlerde kontrol noktalarıAWS üzerinde ~168 MB/s, GCP üzerinde ~123 MB/s ve Lambda üzerinde ~112 MB/s hızla bucket alanına yazıldı. (Üreticinin açıklaması)
- 100 bin satırlık bir tabloya 10 bin satır eklendiğinde, tam dosya yerine yaklaşık 10 MB veri taşındı. (Üreticinin açıklaması)
Sınırlar ve açık kalan sorular
MOUNT komutunu kullanabilmek için glibc 2.34+ ve /dev/fuse içeren bir temel görüntü gereklidir. Yazma işlemlerinde hâlâ kullanılan bulut sağlayıcısının standart veri çıkış ücretleri geçerlidir.