Transformers documentation
Nanotron
Başlayın
Taban sınıfları
Modeller
Önişleyiciler
Çıkarım
Pipeline API
Generate API
Optimizasyon
Modellerle sohbet edin
Sunum
Eğitim
Donanım
Kantizasyon
Ekosistem entegrasyonları
Kaynaklar
API
You are viewing main version, which requires installation from source. If you'd like
regular pip install, checkout the latest stable version (v5.22.2).
Nanotron
Nanotron, tensör, paralel ve veri paralelliği (3D paralellik) içeren dağıtık bir eğitim çerçevesidir. Yüzlerce GPU üzerinde büyük ölçekli eğitim iş yükleri için tasarlanmıştır.
Herhangi bir Transformers modelini, convert_hf_to_nanotron.py betiğiyle ön eğitim için optimize edilmiş bir Nanotron transformer model uygulamasına dönüştürün.
torchrun --nproc_per_node=1 examples/llama/convert_hf_to_nanotron.py \
--checkpoint_path=meta-llama/Llama-2-7b-hf \
--save_path=./llama-7b-nanotronTransformers entegrasyonu
Llamagibi desteklenen bir Transformers modelini from_pretrained() işleviyle yükleyin. Bu işlem, checkpoint dizinindenconfig.jsondosyasını okur ve bir LlamaConfig oluşturur.- Nanotron, LlamaConfig yapılandırmasını kendi yapılandırma biçimine eşler ve bir Nanotron modeli oluşturur.
- Transformers ağırlıklarını Nanotron'a dönüştürün. Bir ağırlık eşlemesi, Nanotron parametre adlarının Transformers parametre adlarına nasıl eşleneceğini yönlendirir. Bu, QKV projeksiyonlarının ve gate/up projeksiyonlarının birleştirilmesi gibi dönüşümleri işlemeyi içerir.
Nanotron, ön işleme ve üretim sırasında metni token kimliklerine dönüştürmek için AutoTokenizer'a da dayanır.
Kaynaklar
- Nanotron deposu
- Ultrascale Playbook, Nanotron ile eğitimin nasıl verimli bir şekilde ölçeklendirileceğini açıklar