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:
-
Pastikan peran IAM pengguna Anda memiliki
TrainHubModelizin 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:
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 memberikanTrainHubModelizin kepada akun yang meminta, seperti yang ditunjukkan pada contoh berikut. -
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 membuat daftar model yang tersedia secara terprogram menggunakan
hub.list_sagemaker_public_hub_models()metode di SageMaker Python SDK. -
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.
-
Pastikan bahwa Anda telah menginstal versi terbaru (setidaknya
3.0.0) SageMaker Python SDK. Untuk informasi selengkapnya, lihat Menggunakan Versi 3.x dari SageMaker Python SDKdi situs web Baca Dokumen. !pip install --upgrade sagemaker -
Impor AWS SDK untuk Python (Boto3) dan modul yang Anda butuhkan dari SageMaker Python SDK.
import boto3 from sagemaker.train import ModelTrainer from sagemaker.train.configs import Compute, InputData from sagemaker.core.jumpstart.configs import JumpStartConfig from sagemaker.core.helper.session_helper import Session -
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) -
Buat
ModelTrainermenggunakanfrom_jumpstart_configdan berikan ID JumpStart model, nama hub Anda yang berisi referensi model, dan sesi SageMaker Python SDK Anda. Untuk mencantumkan ID model yang tersedia secara terprogram, gunakanhub.list_sagemaker_public_hub_models()metode di SageMaker Python SDK.Secara opsional, Anda dapat menentukan
instance_countbidanginstance_typedan 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_pathlokasi 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>, # For gated models, set accept_eula=True to accept the end-user license agreement. # This example uses False. Change it to True to accept the EULA for gated models. accept_eula=False, ) model_trainer = ModelTrainer.from_jumpstart_config( jumpstart_config=jumpstart_config, # Optional: specify your desired instance type and count for the training job. # compute=Compute(instance_type="ml.g5.2xlarge", instance_count=1), # Optional: specify a custom S3 location to store the fine-tuned model artifacts. # output_path="s3://<output-path-for-model-artifacts>", ) -
Buat
InputDataobjek. Aturchannel_nameketraindandata_sourceke lokasi kumpulan data penyempurnaan Anda. Dalam contoh berikut, gantidengan URI Amazon S3 dari dataset Anda. Jika Anda memiliki pertimbangan tambahan, seperti menggunakan mode lokal atau beberapa saluran data pelatihan, lihat SageMaker Melatih<your-fine-tuning-dataset>dalam dokumentasi SageMaker Python SDK di situs web Baca Dokumen. training_input = InputData( channel_name="train", data_source="s3://<your-fine-tuning-dataset>", ) -
Panggil
train()metode pelatih model dan berikan data pelatihan Anda. Nyatakan penerimaan EULA padaJumpStartConfig(ditunjukkan pada langkah sebelumnya), bukan dalamtrain()panggilan.catatan
JumpStartConfigContoh sebelumnya ditetapkanaccept_eula=False. Untuk model terjaga keamanannya, Anda harus mengubah nilTrueainya untuk menerima EULA.model_trainer.train(input_data_config=[training_input])
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).