Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Tutorial berikut menyiapkan lingkungan Trainium pada cluster Slurm dan memulai pekerjaan pelatihan pada model parameter Llama 8 miliar.
Prasyarat
Sebelum Anda mulai mengatur lingkungan Anda, pastikan Anda memiliki:
-
Siapkan cluster SageMaker HyperPod Trainium Slurm.
-
Lokasi penyimpanan bersama. Ini bisa berupa sistem FSx file Amazon atau sistem NFS yang dapat diakses dari node cluster.
-
Data dalam salah satu format berikut:
-
JSON
-
JSONGZ (JSON Terkompresi)
-
PANAH
-
-
(Opsional) Anda harus mendapatkan HuggingFace token jika Anda menggunakan bobot model HuggingFace untuk pra-pelatihan atau fine-tuning. Untuk informasi selengkapnya tentang mendapatkan token, lihat Token akses pengguna
.
Siapkan lingkungan Trainium di Slurm Cluster
Untuk memulai pekerjaan pelatihan di cluster Slurm, lakukan hal berikut:
-
SSH ke node kepala cluster Slurm Anda.
-
Setelah Anda masuk, atur lingkungan Neuron. Untuk informasi tentang pengaturan Neuron, lihat Langkah pengaturan neuron
. Kami merekomendasikan untuk mengandalkan Deep learning AMI yang sudah diinstal sebelumnya dengan driver Neuron, seperti Ubuntu 20 dengan DLAMI Pytorch. -
Kloning repositori SageMaker HyperPod resep ke lokasi penyimpanan bersama di cluster. Lokasi penyimpanan bersama dapat berupa sistem FSx file Amazon atau sistem NFS yang dapat diakses dari node cluster.
git clone --recursive https://github.com/aws/sagemaker-hyperpod-recipes.git cd sagemaker-hyperpod-recipes pip3 install -r requirements.txt
-
Ikuti tutorial berikut: HuggingFace Llama3-8B
Pretraining -
Siapkan konfigurasi model. Konfigurasi model tersedia di repo Neuron. Untuk konfigurasi model yang digunakan dalam tutorial ini, lihat konfigurasi model llama3 8b
Luncurkan pekerjaan pelatihan di Trainium
Untuk meluncurkan pekerjaan pelatihan di Trainium, tentukan konfigurasi cluster dan resep Neuron. Misalnya, untuk meluncurkan pekerjaan pra-pelatihan llama3 8b di Trainium, atur skrip peluncuran, ke yang berikut: launcher_scripts/llama/run_hf_llama3_8b_seq8k_trn1x4_pretrain.sh
-
MODEL_CONFIG
: Konfigurasi model dari bagian pengaturan lingkungan -
(Opsional) Anda dapat memberikan HuggingFace token jika Anda membutuhkan bobot yang telah dilatih sebelumnya HuggingFace dengan menetapkan pasangan nilai kunci berikut:
recipes.model.hf_access_token=
<your_hf_token>
#!/bin/bash
#Users should set up their cluster type in /recipes_collection/config.yaml
SAGEMAKER_TRAINING_LAUNCHER_DIR=${SAGEMAKER_TRAINING_LAUNCHER_DIR:-"$(pwd)"}
COMPILE=0
TRAIN_DIR="${TRAIN_DIR}" # Location of training dataset
MODEL_CONFIG="${MODEL_CONFIG}" # Location of config.json for the model
HYDRA_FULL_ERROR=1 python3 "${SAGEMAKER_TRAINING_LAUNCHER_DIR}/main.py" \
base_results_dir="${SAGEMAKER_TRAINING_LAUNCHER_DIR}/results" \
instance_type="trn1.32xlarge" \
recipes.run.compile="$COMPILE" \
recipes.run.name="hf-llama3-8b" \
recipes.trainer.num_nodes=4 \
recipes=training/llama/hf_llama3_8b_seq8k_trn1x4_pretrain \
recipes.data.train_dir="$TRAIN_DIR" \
recipes.model.model_config="$MODEL_CONFIG"
Untuk meluncurkan pekerjaan pelatihan, jalankan perintah berikut:
bash launcher_scripts/llama/run_hf_llama3_8b_seq8k_trn1x4_pretrain.sh
Untuk informasi selengkapnya tentang konfigurasi cluster Slurm, lihat. Jalankan pekerjaan pelatihan di HyperPod Slurm