Accelerate documentation
Accelerate
Accelerate
Accelerate adalah pustaka yang memungkinkan kode PyTorch yang sama dijalankan di berbagai konfigurasi distribusi hanya dengan menambahkan empat baris kode! Singkatnya, pelatihan dan inferensi berskala besar menjadi sederhana, efisien, dan mudah beradaptasi.
+ from accelerate import Accelerator
+ accelerator = Accelerator()
+ model, optimizer, training_dataloader, scheduler = accelerator.prepare(
+ model, optimizer, training_dataloader, scheduler
+ )
for batch in training_dataloader:
optimizer.zero_grad()
inputs, targets = batch
inputs = inputs.to(device)
targets = targets.to(device)
outputs = model(inputs)
loss = loss_function(outputs, targets)
+ accelerator.backward(loss)
optimizer.step()
scheduler.step()Dibangun di atas torch_xla dan torch.distributed, Accelerate menangani pekerjaan berat, sehingga Anda tidak perlu menulis kode khusus untuk beradaptasi dengan platform-platform ini.
Konversi basis kode yang ada untuk memanfaatkan DeepSpeed, melakukan fully sharded data parallelism, dan memiliki dukungan otomatis untuk pelatihan mixed-precision!
Untuk mendapatkan gambaran yang lebih baik tentang proses ini, pastikan untuk melihat Tutorial!
Kode ini kemudian dapat dijalankan di sistem mana pun melalui antarmuka CLI Accelerate:
accelerate launch {my_script.py}Pelajari dasar-dasarnya dan biasakan diri menggunakan Accelerate. Mulailah di sini jika Anda menggunakan Accelerate untuk pertama kalinya!
Panduan praktis untuk membantu Anda mencapai tujuan tertentu. Lihat panduan-panduan ini untuk mempelajari cara menggunakan Accelerate guna menyelesaikan masalah di dunia nyata.
Penjelasan tingkat tinggi untuk membangun pemahaman yang lebih baik tentang topik-topik penting, seperti menghindari nuansa halus dan jebakan dalam pelatihan terdistribusi dan DeepSpeed.
Deskripsi teknis tentang cara kelas dan metode Accelerate bekerja.