Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Tutorial SageMaker pra-pelatihan pekerjaan pelatihan trainium

Mode fokus
Tutorial SageMaker pra-pelatihan pekerjaan pelatihan trainium - Amazon SageMaker AI

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Tutorial ini memandu Anda melalui proses menyiapkan dan menjalankan pekerjaan pra-pelatihan menggunakan pekerjaan pelatihan dengan SageMaker instance AWS Trainium.

  • Siapkan lingkungan Anda

  • Luncurkan pekerjaan pelatihan

Sebelum Anda mulai, pastikan Anda memiliki prasyarat berikut.

Prasyarat

Sebelum Anda mulai mengatur lingkungan Anda, pastikan Anda memiliki:

  • Sistem FSx file Amazon atau bucket S3 tempat Anda dapat memuat data dan mengeluarkan artefak pelatihan.

  • Minta Kuota Layanan untuk ml.trn1.32xlarge instans di Amazon SageMaker AI. Untuk meminta peningkatan kuota layanan, lakukan hal berikut:

    Untuk meminta peningkatan kuota layanan untuk instance ml.trn1.32xlarge
    1. Arahkan ke konsol AWS Service Quotas.

    2. Pilih AWS layanan.

    3. Pilih JupyterLab.

    4. Tentukan satu contoh untukml.trn1.32xlarge.

  • Buat peran AWS Identity and Access Management (IAM) dengan kebijakan yang AmazonEC2FullAccess dikelola AmazonSageMakerFullAccess dan dikelola. Kebijakan ini memberi Amazon SageMaker AI izin untuk menjalankan contoh.

  • Data dalam salah satu format berikut:

    • JSON

    • JSONGZ (JSON Terkompresi)

    • PANAH

  • (Opsional) Jika Anda memerlukan bobot yang telah dilatih sebelumnya dari HuggingFace atau jika Anda melatih model Llama 3.2, Anda harus mendapatkan HuggingFace token sebelum memulai pelatihan. Untuk informasi selengkapnya tentang mendapatkan token, lihat Token akses pengguna.

Siapkan lingkungan Anda untuk pekerjaan pelatihan Trainium SageMaker

Sebelum Anda menjalankan pekerjaan SageMaker pelatihan, gunakan aws configure perintah untuk mengonfigurasi AWS kredensil dan wilayah pilihan Anda. Sebagai alternatif, Anda juga dapat memberikan kredensil Anda melalui variabel lingkungan sepertiAWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY, dan. AWS_SESSION_TOKEN Untuk informasi selengkapnya, lihat SageMaker AI Python SDK.

Kami sangat menyarankan menggunakan notebook SageMaker AI Jupyter di SageMaker AI JupyterLab untuk meluncurkan pekerjaan SageMaker pelatihan. Untuk informasi selengkapnya, lihat SageMaker JupyterLab.

  • (Opsional) Jika Anda menggunakan notebook Jupyter di Amazon SageMaker Studio, Anda dapat melewatkan menjalankan perintah berikut. Pastikan untuk menggunakan versi >= python 3.9

    # set up a virtual environment python3 -m venv ${PWD}/venv source venv/bin/activate # install dependencies after git clone. git clone --recursive git@github.com:aws/sagemaker-hyperpod-recipes.git cd sagemaker-hyperpod-recipes pip3 install -r requirements.txt
  • Instal SageMaker AI Python SDK

    pip3 install --upgrade sagemaker
    • Jika Anda menjalankan pekerjaan pelatihan multi-modal llama 3.2, transformers versinya harus 4.45.2 atau lebih besar.

      • Tambahkan transformers==4.45.2 ke requirements.txt source_dir hanya saat Anda menggunakan AI SageMaker Python SDK.

      • Jika Anda menggunakan HyperPod resep untuk diluncurkan menggunakan sm_jobs sebagai tipe cluster, Anda tidak perlu menentukan versi transformer.

    • Container: Wadah Neuron diatur secara otomatis oleh SageMaker AI Python SDK.

Luncurkan pekerjaan pelatihan dengan Notebook Jupyter

Anda dapat menggunakan kode Python berikut untuk menjalankan pekerjaan SageMaker pelatihan menggunakan resep Anda. Ini memanfaatkan PyTorch estimator dari AI SageMaker Python SDK untuk mengirimkan resep. Contoh berikut meluncurkan resep llama3-8b sebagai AI Training Job. SageMaker

  • compiler_cache_url: Cache yang akan digunakan untuk menyimpan artefak yang dikompilasi, seperti artefak Amazon S3.

import os import sagemaker,boto3 from sagemaker.debugger import TensorBoardOutputConfig from sagemaker.pytorch import PyTorch sagemaker_session = sagemaker.Session() role = sagemaker.get_execution_role() recipe_overrides = { "run": { "results_dir": "/opt/ml/model", }, "exp_manager": { "explicit_log_dir": "/opt/ml/output/tensorboard", }, "data": { "train_dir": "/opt/ml/input/data/train", }, "model": { "model_config": "/opt/ml/input/data/train/config.json", }, "compiler_cache_url": "<compiler_cache_url>" } tensorboard_output_config = TensorBoardOutputConfig( s3_output_path=os.path.join(output, 'tensorboard'), container_local_output_path=overrides["exp_manager"]["explicit_log_dir"] ) estimator = PyTorch( output_path=output_path, base_job_name=f"llama-trn", role=role, instance_type="ml.trn1.32xlarge", sagemaker_session=sagemaker_session, training_recipe="training/llama/hf_llama3_70b_seq8k_trn1x16_pretrain", recipe_overrides=recipe_overrides, ) estimator.fit(inputs={"train": "your-inputs"}, wait=True)

Kode sebelumnya membuat objek PyTorch estimator dengan resep pelatihan dan kemudian cocok dengan model menggunakan metode. fit() Gunakan training_recipe parameter untuk menentukan resep yang ingin Anda gunakan untuk pelatihan.

Luncurkan pekerjaan pelatihan dengan peluncur resep

  • Perbarui ./recipes_collection/cluster/sm_jobs.yaml

    • compiler_cache_url: URL yang digunakan untuk menyimpan artefak. Ini bisa berupa URL Amazon S3.

    sm_jobs_config: output_path: <s3_output_path> wait: True tensorboard_config: output_path: <s3_output_path> container_logs_path: /opt/ml/output/tensorboard # Path to logs on the container wait: True # Whether to wait for training job to finish inputs: # Inputs to call fit with. Set either s3 or file_system, not both. s3: # Dictionary of channel names and s3 URIs. For GPUs, use channels for train and validation. train: <s3_train_data_path> val: null additional_estimator_kwargs: # All other additional args to pass to estimator. Must be int, float or string. max_run: 180000 image_uri: <your_image_uri> enable_remote_debug: True py_version: py39 recipe_overrides: model: exp_manager: exp_dir: <exp_dir> data: train_dir: /opt/ml/input/data/train val_dir: /opt/ml/input/data/val
  • Perbarui ./recipes_collection/config.yaml

    defaults: - _self_ - cluster: sm_jobs - recipes: training/llama/hf_llama3_8b_seq8k_trn1x4_pretrain cluster_type: sm_jobs # bcm, bcp, k8s or sm_jobs. If bcm, k8s or sm_jobs, it must match - cluster above. instance_type: ml.trn1.32xlarge base_results_dir: ~/sm_job/hf_llama3_8B # Location to store the results, checkpoints and logs.
  • Luncurkan pekerjaan dengan main.py

    python3 main.py --config-path recipes_collection --config-name config

Untuk informasi selengkapnya tentang mengonfigurasi pekerjaan SageMaker pelatihan, lihatSageMaker pelatihan pekerjaan pra-pelatihan tutorial (GPU).

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.