Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Paralelisme konteks
Paralelisme konteks adalah jenis paralelisme model yang mempartisi aktivasi model di sepanjang dimensi urutan. Tidak seperti teknik paralelisme urutanLayerNorm danRMSNorm, paralelisme konteks mempartisi input jaringan dan semua aktivasi perantara di sepanjang dimensi urutan.
SMP v2 terintegrasi dengan Transformer Engine
Model Hugging Face Transformer kompatibel dengan paralelisme konteks SMP
SMP v2 saat ini menawarkan dukungan paralelisme konteks untuk model transformator Hugging Face berikut.
-
GPT-Neox
-
Llama 2 dan Llama 3
Konfigurasikan paralelisme konteks
Tetapkan nilai integer ke context_parallel_degree parameter yang membagi jumlah di cluster Anda GPUs secara merata. Misalnya, jika Anda memiliki instans 8-GPU, gunakan 2, 4, atau 8 untuk. context_parallel_degree Sebaiknya mulai dengan context_parallel_degree nilai kecil dan secara bertahap meningkatkannya hingga model sesuai dengan memori GPU dengan panjang urutan input yang diperlukan.
Cuplikan kode berikut menunjukkan cara menambahkan modul inisialisasi SMP torch.sagemaker.init() ke skrip pelatihan Anda dan mengatur kamus konfigurasi SMP dalam format JSON untuk peluncur pekerjaan pelatihan sambil mengikuti proses dua langkah yang diperkenalkan. Gunakan perpustakaan paralelisme SageMaker model v2 Anda tidak perlu membuat perubahan apa pun pada PyTorch model atau konfigurasi PyTorch FSDPcontext_parallel_degree, lihat Parameter konfigurasi fitur inti SMP v2.
Dalam skrip pelatihan Anda
Sebagai bagian dari Langkah 1, inisialisasi skrip Anda torch.sagemaker.init() untuk mengaktifkan SMP v2 dan bungkus model Anda dengan API. torch.sagemaker.transform
Mulai dari SMP v2.6.0, Anda dapat menggunakan argumen cp_comm_type untuk menentukan implementasi paralelisme konteks mana yang akan digunakan. Pustaka SMP saat ini mendukung dua implementasi: p2p dan. all_gather p2pImplementasi menggunakan panggilan peer-to-peer kirim-terima untuk akumulasi nilai kunci selama implementasi perhatian dan berjalan secara asinkron, memungkinkan tumpang tindih dengan komputasi. all_gatherimplementasi, sebaliknya, menggunakan operasi AllGather kolektif dan berjalan serempak.
import torch.sagemaker as tsm tsm.init() from transformers import AutoModelForCausalLM model = AutoModelForCausalLM.from_config(..) model = tsm.transform(model, cp_comm_type="p2p")
Konfigurasi SMP
Sebagai bagian dari Langkah 2, tambahkan parameter berikut ke kamus konfigurasi SMP untuk SageMaker PyTorch estimator.
{ ..., # other SMP config parameters "context_parallel_degree": 2 }