Penyempurnaan LLaMA 2 yang cepat dan hemat biaya dengan AWS Trainium | Layanan Web Amazon

Penyempurnaan LLaMA 2 yang cepat dan hemat biaya dengan AWS Trainium | Layanan Web Amazon

Model bahasa besar (LLM) telah menarik imajinasi dan perhatian para pengembang, ilmuwan, teknolog, wirausaha, dan eksekutif di beberapa industri. Model ini dapat digunakan untuk menjawab pertanyaan, meringkas, menerjemahkan, dan lainnya dalam aplikasi seperti agen percakapan untuk dukungan pelanggan, pembuatan konten untuk pemasaran, dan asisten pengkodean.

Baru-baru ini, Meta dirilis Lama 2 untuk peneliti dan entitas komersial, menambah daftar LLM lainnya, termasuk MosesML MPT dan elang. Dalam posting ini, kita akan membahas cara menyempurnakan Llama 2 Pelatihan AWS, akselerator yang dibuat khusus untuk pelatihan LLM, untuk mengurangi waktu dan biaya pelatihan. Kami meninjau skrip penyesuaian yang disediakan oleh Neuron AWS SDK (menggunakan NeMo Megatron-LM), berbagai konfigurasi yang kami gunakan, dan hasil throughput yang kami lihat.

Tentang model Llama 2

Mirip dengan sebelumnya Lama 1 model dan model lain seperti GPT, Llama 2 menggunakan arsitektur khusus dekoder Transformer. Muncul dalam tiga ukuran: 7 miliar, 13 miliar, dan 70 miliar parameter. Dibandingkan dengan Llama 1, Llama 2 menggandakan panjang konteks dari 2,000 menjadi 4,000, dan menggunakan perhatian kueri yang dikelompokkan (hanya untuk 70B). Model terlatih Llama 2 dilatih pada 2 triliun token, dan modelnya yang telah disempurnakan telah dilatih pada lebih dari 1 juta anotasi manusia.

Pelatihan terdistribusi Llama 2

Untuk mengakomodasi Llama 2 dengan panjang urutan 2,000 dan 4,000, kami mengimplementasikan skrip menggunakan NeMo Megatron untuk Trainium yang mendukung paralelisme data (DP), paralelisme tensor (TP), dan paralelisme pipa (PP). Untuk lebih spesifiknya, dengan implementasi baru beberapa fitur seperti untie word embedding, rotary embedding, RMSNorm, dan aktivasi Swiglu, kami menggunakan skrip umum dari Neuron GPT Megatron-LM untuk mendukung skrip pelatihan Llama 2.

Prosedur pelatihan tingkat tinggi kami adalah sebagai berikut: untuk lingkungan pelatihan kami, kami menggunakan cluster multi-instance yang dikelola oleh sistem SLURM untuk pelatihan terdistribusi dan penjadwalan di bawah kerangka NeMo.

Pertama, unduh model Llama 2 dan kumpulan data pelatihan, lalu proses terlebih dahulu menggunakan tokenizer Llama 2. Misalnya, untuk menggunakan himpunan data RedPajama, gunakan perintah berikut:

wget https://data.together.xyz/redpajama-data-1T/v1.0.0/book/book.jsonl python nemo/scripts/nlp_language_modeling/preprocess_data_for_megatron.py

Untuk panduan mendetail tentang pengunduhan model dan argumen skrip prapemrosesan, lihat Unduh kumpulan data dan tokenizer LlamaV2.

Selanjutnya, kompilasi modelnya:

sbatch --nodes 4 compile.slurm ./llama_7b.sh

Setelah model dikompilasi, luncurkan tugas pelatihan dengan skrip berikut yang telah dioptimalkan dengan konfigurasi dan hyperparameter terbaik untuk Llama 2 (termasuk dalam kode contoh):

sbatch --nodes 4 run.slurm ./llama_7b.sh

Terakhir, kami memantau TensorBoard untuk melacak kemajuan pelatihan:

tensorboard --logdir ./

Untuk contoh kode dan script lengkap yang kami sebutkan, lihat Llama 7B tutorial dan kode NeMo di Neuron SDK untuk menjalani langkah-langkah yang lebih detail.

Eksperimen yang menyempurnakan

Kami menyempurnakan model 7B pada kumpulan data OSCAR (Open Super-large Crawled ALManaCH corpus) dan QNLI (Question-answering NLI) di lingkungan Neuron 2.12 (PyTorch). Untuk setiap panjang urutan 2,000 dan 4,000, kami mengoptimalkan beberapa konfigurasi, seperti batchsize dan gradient_accumulation, untuk efisiensi pelatihan. Sebagai strategi penyesuaian, kami mengadopsi penyesuaian penuh pada semua parameter (sekitar 500 langkah), yang dapat diperluas hingga pra-pelatihan dengan langkah yang lebih panjang dan kumpulan data yang lebih besar (misalnya, 1T RedPajama). Paralelisme urutan juga dapat diaktifkan untuk memungkinkan NeMo Megatron berhasil menyempurnakan model dengan panjang urutan lebih besar yaitu 4,000. Tabel berikut menunjukkan hasil konfigurasi dan throughput eksperimen penyempurnaan Llama 7B. Skala throughputnya hampir linier seiring dengan bertambahnya jumlah instans hingga 4.

Perpustakaan Terdistribusi Dataset Panjang Urutan Jumlah Instance Tensor Paralel Data Paralel Parelel Pipa Ukuran Kelompok Global Throughput (seq/dtk)
Neuron NeMo Megatron OSCAR 4096 1 8 4 1 256 3.7
. . 4096 2 8 4 1 256 7.4
. . 4096 4 8 4 1 256 14.6
. QNLI 4096 4 8 4 1 256 14.1

Langkah terakhir adalah memverifikasi keakuratan dengan model dasar. Kami menerapkan skrip referensi untuk eksperimen GPU dan mengonfirmasi bahwa kurva pelatihan untuk GPU dan Trainium cocok seperti yang ditunjukkan pada gambar berikut. Gambar tersebut mengilustrasikan kurva kerugian atas jumlah langkah pelatihan pada dataset QNLI. Presisi campuran diadopsi untuk GPU (biru), dan bf16 dengan pembulatan stokastik default untuk Trainium (oranye).

Kurva Pelatihan

Kesimpulan

Dalam postingan ini, kami menunjukkan bahwa Trainium memberikan penyempurnaan Llama 2 yang berkinerja tinggi dan hemat biaya. Untuk sumber daya lebih lanjut tentang penggunaan Trainium untuk pra-pelatihan terdistribusi dan menyempurnakan model AI generatif Anda menggunakan NeMo Megatron, lihat Referensi Neuron AWS untuk NeMo Megatron.


Tentang Penulis

Penyempurnaan LLaMA 2 yang cepat dan hemat biaya dengan AWS Trainium | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Hao Zhou adalah Ilmuwan Riset di Amazon SageMaker. Sebelumnya, dia bekerja mengembangkan metode pembelajaran mesin untuk deteksi penipuan untuk Amazon Fraud Detector. Dia bersemangat menerapkan pembelajaran mesin, pengoptimalan, dan teknik AI generatif pada berbagai masalah dunia nyata. Beliau meraih gelar PhD di bidang Teknik Elektro dari Northwestern University.

Penyempurnaan LLaMA 2 yang cepat dan hemat biaya dengan AWS Trainium | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Karthick Gopalswamy adalah Ilmuwan Terapan di AWS. Sebelum AWS, dia bekerja sebagai ilmuwan di Uber dan Walmart Labs dengan fokus utama pada pengoptimalan bilangan bulat campuran. Di Uber, dia berfokus pada optimalisasi jaringan angkutan umum dengan produk SaaS sesuai permintaan dan perjalanan bersama. Di Walmart Labs, dia mengerjakan pengoptimalan harga dan pengemasan. Karthick memiliki gelar PhD di bidang Teknik Industri dan Sistem dengan minor di bidang Riset Operasi dari North Carolina State University. Penelitiannya berfokus pada model dan metodologi yang menggabungkan riset operasi dan pembelajaran mesin.

Penyempurnaan LLaMA 2 yang cepat dan hemat biaya dengan AWS Trainium | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Xin Huang adalah Ilmuwan Terapan Senior untuk Amazon SageMaker JumpStart dan algoritme bawaan Amazon SageMaker. Dia berfokus pada pengembangan algoritme pembelajaran mesin yang dapat diskalakan. Minat penelitiannya adalah di bidang pemrosesan bahasa alami, pembelajaran mendalam yang dapat dijelaskan pada data tabular, dan analisis kuat pengelompokan ruang-waktu non-parametrik. Dia telah menerbitkan banyak makalah di konferensi ACL, ICDM, KDD, dan Royal Statistical Society: Series A.

Penyempurnaan LLaMA 2 yang cepat dan hemat biaya dengan AWS Trainium | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Taman Youngsuk adalah Ilmuwan Terapan Senior di AWS Annapurna Labs, yang bekerja mengembangkan dan melatih model dasar akselerator AI. Sebelumnya, Dr. Park mengerjakan Penelitian dan Pengembangan untuk Amazon Forecast di AWS AI Labs sebagai ilmuwan utama. Penelitiannya terletak pada interaksi antara pembelajaran mesin, model dasar, pengoptimalan, dan pembelajaran penguatan. Dia telah menerbitkan lebih dari 20 makalah tinjauan sejawat di tempat-tempat terkemuka, termasuk ICLR, ICML, AISTATS, dan KDD, dengan layanan pengorganisasian lokakarya dan presentasi tutorial di bidang rangkaian waktu dan pelatihan LLM. Sebelum bergabung dengan AWS, beliau memperoleh gelar PhD di bidang Teknik Elektro dari Stanford University.

Penyempurnaan LLaMA 2 yang cepat dan hemat biaya dengan AWS Trainium | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Yida Wang adalah ilmuwan utama di tim AWS AI Amazon. Minat penelitiannya adalah pada sistem, komputasi kinerja tinggi, dan analisis data besar. Saat ini dia bekerja pada sistem pembelajaran mendalam, dengan fokus pada kompilasi dan optimalisasi model pembelajaran mendalam untuk pelatihan dan inferensi yang efisien, terutama model dasar skala besar. Misinya adalah menjembatani model tingkat tinggi dari berbagai kerangka kerja dan platform perangkat keras tingkat rendah termasuk CPU, GPU, dan akselerator AI, sehingga model berbeda dapat berjalan dalam performa tinggi di perangkat berbeda.

Penyempurnaan LLaMA 2 yang cepat dan hemat biaya dengan AWS Trainium | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Jun (Lukas) Huan adalah Ilmuwan Utama di AWS AI Labs. Dr. Huan bekerja di bidang AI dan Ilmu Data. Dia telah menerbitkan lebih dari 160 makalah peer-review di konferensi dan jurnal terkemuka dan telah meluluskan 11 mahasiswa PhD. Ia adalah penerima Penghargaan Pengembangan Karir Dini Fakultas NSF pada tahun 2009. Sebelum bergabung dengan AWS, ia bekerja di Baidu Research sebagai ilmuwan terkemuka dan kepala Laboratorium Big Data Baidu. Dia mendirikan StylingAI Inc., sebuah perusahaan rintisan AI, dan menjabat sebagai CEO dan Kepala Ilmuwan pada tahun 2019โ€“2021. Sebelum bergabung dengan industri ini, dia adalah Profesor Charles E. dan Mary Jane Spahr di Departemen EECS di Universitas Kansas. Dari tahun 2015โ€“2018, ia bekerja sebagai direktur program di NSF AS yang bertanggung jawab atas program big datanya.

Penyempurnaan LLaMA 2 yang cepat dan hemat biaya dengan AWS Trainium | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Shruti Koparkar adalah Manajer Pemasaran Produk Senior di AWS. Dia membantu pelanggan menjelajahi, mengevaluasi, dan mengadopsi infrastruktur komputasi terakselerasi Amazon EC2 untuk kebutuhan pembelajaran mesin mereka.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS