View a markdown version of this page

Fine-tune model hub yang dikuratori - Amazon SageMaker AI

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

Fine-tune model hub yang dikuratori

Di hub model pribadi yang dikurasi, Anda dapat menjalankan pekerjaan pelatihan penyempurnaan menggunakan referensi model Anda. Referensi model menunjuk ke JumpStart model yang tersedia untuk umum di hub publik SageMaker AI, tetapi Anda dapat menyempurnakan model pada data Anda sendiri untuk kasus penggunaan spesifik Anda. Setelah pekerjaan penyempurnaan, Anda memiliki akses ke bobot model yang kemudian dapat Anda gunakan atau terapkan ke titik akhir.

Anda dapat menyempurnakan model hub yang dikuratori hanya dalam beberapa baris kode menggunakan SageMaker Python SDK. Untuk informasi lebih umum tentang menyempurnakan JumpStart model yang tersedia untuk umum, lihatModel pondasi dan hyperparameter untuk penyempurnaan.

Prasyarat

Untuk menyempurnakan referensi JumpStart model di hub yang Anda kurasi, lakukan hal berikut:

  1. Pastikan peran IAM pengguna Anda memiliki TrainHubModel izin SageMaker AI yang terlampir. Untuk informasi selengkapnya, lihat Menambahkan dan menghapus izin identitas IAM di Panduan AWS Pengguna IAM.

    Anda harus melampirkan kebijakan seperti contoh berikut ke peran IAM pengguna Anda:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "sagemaker:TrainHubModel", "Resource": "arn:aws:sagemaker:*:111122223333:hub/*" } ] }
    catatan

    Jika hub yang dikurasi dibagikan di seluruh akun dan konten hub dimiliki oleh akun lain, pastikan bahwa HubContent (sumber referensi model) Anda memiliki kebijakan IAM berbasis sumber daya yang juga memberikan TrainHubModel izin kepada akun yang meminta, seperti yang ditunjukkan pada contoh berikut.

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "AllowCrossAccountSageMakerAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "sagemaker:TrainHubModel" ], "Resource": [ "arn:aws:sagemaker:*:111122223333:hub/*" ] } ] }
  2. Memiliki hub pribadi yang dikuratori dengan referensi model ke JumpStart model yang ingin Anda sesuaikan. Untuk informasi selengkapnya tentang membuat hub pribadi, lihatBuat hub model pribadi. Untuk mempelajari cara menambahkan JumpStart model yang tersedia untuk umum ke hub pribadi Anda, lihatTambahkan model ke hub pribadi.

    catatan

    JumpStart Model yang Anda pilih harus disesuaikan dengan baik. Anda dapat memverifikasi apakah model dapat disesuaikan dengan memeriksa Built-in Algoritma dengan Tabel Pre-trained Model.

  3. Miliki dataset pelatihan yang ingin Anda gunakan untuk menyempurnakan model. Dataset harus dalam format pelatihan yang sesuai untuk model yang ingin Anda sesuaikan.

Fine-tune referensi model hub yang dikuratori

Prosedur berikut menunjukkan cara menyempurnakan referensi model di hub pribadi Anda yang dikurasi menggunakan SageMaker Python SDK.

  1. Pastikan bahwa Anda telah menginstal versi terbaru (setidaknya2.242.0) SageMaker Python SDK. Untuk informasi selengkapnya, lihat Menggunakan Versi 3.x dari SageMaker Python SDK.

    !pip install --upgrade sagemaker
  2. Impor AWS SDK for Python (Boto3) dan modul yang Anda perlukan dari SageMaker Python SDK.

    import boto3 from sagemaker.train import ModelTrainer from sagemaker.core.jumpstart.configs import JumpStartConfig from sagemaker.core.helper.session_helper import Session
  3. Inisialisasi sesi Boto3, klien SageMaker AI, dan sesi SageMaker Python SDK.

    sagemaker_client = boto3.Session(region_name=<AWS-region>).client("sagemaker") sm_session = Session(sagemaker_client=sagemaker_client)
  4. Buat ModelTrainer menggunakan from_jumpstart_config dan berikan ID JumpStart model, nama hub Anda yang berisi referensi model, dan sesi SageMaker Python SDK Anda. Untuk daftar ID model, lihat Built-in Algoritma dengan Tabel Pre-trained Model.

    Secara opsional, Anda dapat menentukan instance_count bidang instance_type dan saat membuat ModelTrainer. Jika tidak, pekerjaan pelatihan menggunakan jenis instans default dan hitungan untuk model yang Anda gunakan.

    Anda juga dapat secara opsional menentukan output_path lokasi Amazon S3 tempat Anda ingin menyimpan bobot model yang disetel dengan baik. Jika Anda tidak menentukanoutput_path, maka gunakan bucket SageMaker AI Amazon S3 default untuk wilayah di akun Anda, dinamai dengan format berikut:sagemaker-<region>-<account-id>.

    jumpstart_config = JumpStartConfig( model_id="meta-textgeneration-llama-3-2-1b", hub_name=<your-hub-name>, # Optional: specify your desired instance type and count for the training job # instance_type = "ml.g5.2xlarge" # instance_count = 1 ) model_trainer = ModelTrainer.from_jumpstart_config(jumpstart_config=jumpstart_config) # Optional: specify a custom S3 location to store the fine-tuned model artifacts # output_path: "s3://<output-path-for-model-artifacts>"
  5. Buat kamus dengan training kunci tempat Anda menentukan lokasi dataset penyempurnaan Anda. Contoh ini menunjuk ke URI Amazon S3. Jika Anda memiliki pertimbangan tambahan, seperti menggunakan mode lokal atau beberapa saluran data pelatihan, lihat ModelTrainer.train () dalam dokumentasi SageMaker Python SDK untuk informasi selengkapnya.

    training_input = { "training": "s3://<your-fine-tuning-dataset>" }
  6. Panggil train() metode pelatih model dan berikan data pelatihan Anda dan penerimaan EULA Anda (jika ada).

    catatan

    Contoh berikut mengatur accept_eula=False. Anda harus mengubah nilai secara manual untuk menerima EULA. True

    model_trainer.train(input_data_config=[training_input], accept_eula=False)

Pekerjaan penyempurnaan Anda sekarang harus dimulai.

Anda dapat memeriksa pekerjaan penyempurnaan Anda dengan melihat pekerjaan pelatihan Anda, baik di konsol SageMaker AI atau dengan menggunakan ListTrainingJobs API.

Anda dapat mengakses artefak model yang disetel dengan baik di Amazon S3 output_path yang ditentukan dalam ModelTrainer objek (baik bucket SageMaker AI Amazon S3 default untuk wilayah tersebut, atau jalur Amazon S3 kustom yang Anda tentukan, jika berlaku).