Gunakan model foundation dengan SageMaker Python SDK - Amazon SageMaker

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

Gunakan model foundation dengan SageMaker Python SDK

Semua model JumpStart foundation tersedia untuk diterapkan secara terprogram menggunakan SDK. SageMaker Python Model dasar pembuatan teks yang tersedia untuk umum dapat digunakan menggunakan ID model di file. Tabel model pembuatan teks yang tersedia untuk umum Model berpemilik harus digunakan menggunakan informasi paket model setelah berlangganan model di. AWS Marketplace

Bagian berikut menunjukkan cara menyempurnakan model pondasi menggunakan JumpStartEstimator kelas dan cara menerapkan model menggunakan JumpStartModel kelas, bersama dengan utilitas SDK tambahanPython.

penting

Beberapa model dasar memerlukan penerimaan eksplisit dari perjanjian lisensi pengguna akhir (EULA). Untuk informasi selengkapnya, lihat Penerimaan EULA dengan SDK SageMaker Python.

Untuk mereferensikan ID model yang tersedia untuk semua model dasar yang tersedia untuk umum, lihat Algoritma Bawaan dengan Tabel Model yang telah dilatih sebelumnya. Cari nama model dasar pilihan Anda di bilah Pencarian, ubah jumlah entri yang ditampilkan menggunakan menu tarik-turun Tampilkan entri, atau pilih teks Berikutnya yang disorot dengan warna biru di sisi kiri halaman untuk menavigasi melalui model yang tersedia.

Sempurnakan model foundation yang tersedia untuk umum dengan kelasnya JumpStartEstimator

Anda dapat menyempurnakan algoritma bawaan atau model pra-terlatih hanya dalam beberapa baris kode menggunakan SDK. SageMaker Python

  1. Pertama, temukan ID model untuk model pilihan Anda di Algoritma Bawaan dengan Tabel Model yang telah dilatih sebelumnya.

  2. Dengan menggunakan ID model, tentukan pekerjaan pelatihan Anda sebagai JumpStart penaksir.

    from sagemaker.jumpstart.estimator import JumpStartEstimator model_id = "huggingface-textgeneration1-gpt-j-6b" estimator = JumpStartEstimator(model_id=model_id)
  3. Jalankan estimator.fit() pada model Anda, arahkan ke data pelatihan yang akan digunakan untuk fine-tuning.

    estimator.fit( {"train": training_dataset_s3_path, "validation": validation_dataset_s3_path} )
  4. Kemudian, gunakan deploy metode ini untuk secara otomatis menerapkan model Anda untuk inferensi. Dalam contoh ini, kami menggunakan model GPT-J 6B dari. Hugging Face

    predictor = estimator.deploy()
  5. Anda kemudian dapat menjalankan inferensi dengan model yang diterapkan menggunakan metode inipredict.

    question = "What is Southern California often abbreviated as?" response = predictor.predict(question) print(response)
catatan

Contoh ini menggunakan model dasar GPT-J 6B, yang cocok untuk berbagai kasus penggunaan pembuatan teks termasuk menjawab pertanyaan, pengenalan entitas bernama, ringkasan, dan banyak lagi. Untuk informasi selengkapnya tentang kasus penggunaan model, lihatJelajahi model foundation terbaru.

Anda dapat secara opsional menentukan versi model atau jenis instans saat membuatJumpStartEstimator. Untuk informasi lebih lanjut tentang JumpStartEstimator kelas dan parameternya, lihat JumpStartEstimator.

Periksa jenis contoh default

Anda dapat secara opsional menyertakan versi model atau jenis instance tertentu saat menyempurnakan model yang telah dilatih sebelumnya menggunakan kelas. JumpStartEstimator Semua JumpStart model memiliki tipe instance default. Ambil jenis instance pelatihan default menggunakan kode berikut:

from sagemaker import instance_types instance_type = instance_types.retrieve_default( model_id=model_id, model_version=model_version, scope="training") print(instance_type)

Anda dapat melihat semua jenis instance yang didukung untuk JumpStart model tertentu dengan instance_types.retrieve() metode ini.

Periksa hiperparameter default

Untuk memeriksa hyperparameters default yang digunakan untuk pelatihan, Anda dapat menggunakan retrieve_default() metode dari hyperparameters kelas.

from sagemaker import hyperparameters my_hyperparameters = hyperparameters.retrieve_default(model_id=model_id, model_version=model_version) print(my_hyperparameters) # Optionally override default hyperparameters for fine-tuning my_hyperparameters["epoch"] = "3" my_hyperparameters["per_device_train_batch_size"] = "4" # Optionally validate hyperparameters for the model hyperparameters.validate(model_id=model_id, model_version=model_version, hyperparameters=my_hyperparameters)

Untuk informasi lebih lanjut tentang hiperparameter yang tersedia, lihatHiperparameter fine-tuning yang umumnya didukung.

Periksa definisi metrik default

Anda juga dapat memeriksa definisi metrik default:

print(metric_definitions.retrieve_default(model_id=model_id, model_version=model_version))

Menyebarkan model pondasi yang tersedia untuk umum dengan kelas JumpStartModel

Anda dapat menerapkan algoritma bawaan atau model pra-terlatih ke SageMaker titik akhir hanya dalam beberapa baris kode menggunakan SDK. SageMaker Python

  1. Pertama, temukan ID model untuk model pilihan Anda di Algoritma Bawaan dengan Tabel Model yang telah dilatih sebelumnya.

  2. Dengan menggunakan ID model, tentukan model Anda sebagai JumpStart model.

    from sagemaker.jumpstart.model import JumpStartModel model_id = "huggingface-text2text-flan-t5-xl" my_model = JumpStartModel(model_id=model_id)
  3. Gunakan deploy metode ini untuk menerapkan model Anda secara otomatis untuk inferensi. Dalam contoh ini, kami menggunakan model FLAN-T5 XL dari. Hugging Face

    predictor = my_model.deploy()
  4. Anda kemudian dapat menjalankan inferensi dengan model yang diterapkan menggunakan metode inipredict.

    question = "What is Southern California often abbreviated as?" response = predictor.predict(question) print(response)
catatan

Contoh ini menggunakan model dasar FLAN-T5 XL, yang cocok untuk berbagai kasus penggunaan pembuatan teks termasuk menjawab pertanyaan, ringkasan, pembuatan chatbot, dan banyak lagi. Untuk informasi selengkapnya tentang kasus penggunaan model, lihatJelajahi model foundation terbaru.

Untuk informasi selengkapnya tentang JumpStartModel kelas dan parameternya, lihat JumpStartModel.

Periksa jenis contoh default

Anda dapat secara opsional menyertakan versi model atau jenis instance tertentu saat menerapkan model yang telah dilatih sebelumnya menggunakan kelas. JumpStartModel Semua JumpStart model memiliki tipe instance default. Ambil jenis instance penerapan default menggunakan kode berikut:

from sagemaker import instance_types instance_type = instance_types.retrieve_default( model_id=model_id, model_version=model_version, scope="inference") print(instance_type)

Lihat semua tipe instance yang didukung untuk JumpStart model tertentu dengan instance_types.retrieve() metode.

Gunakan komponen inferensi untuk menerapkan beberapa model ke titik akhir bersama

Komponen inferensi adalah objek SageMaker hosting yang dapat Anda gunakan untuk menyebarkan satu atau beberapa model ke titik akhir untuk meningkatkan fleksibilitas dan skalabilitas. Anda harus mengubah endpoint_type JumpStart model Anda menjadi inference-component-based bukan titik akhir berbasis model default.

predictor = my_model.deploy( endpoint_name = 'jumpstart-model-id-123456789012', endpoint_type = EndpointType.INFERENCE_COMPONENT_BASED )

Untuk informasi selengkapnya tentang membuat titik akhir dengan komponen inferensi dan penerapan SageMaker model, lihat. Pemanfaatan sumber daya bersama dengan beberapa model

Periksa format inferensi input dan output yang valid

Untuk memeriksa format input dan output data yang valid untuk inferensi, Anda dapat menggunakan retrieve_options() metode dari Serializers dan Deserializers kelas.

print(sagemaker.serializers.retrieve_options(model_id=model_id, model_version=model_version)) print(sagemaker.deserializers.retrieve_options(model_id=model_id, model_version=model_version))

Periksa konten yang didukung dan terima jenis

Demikian pula, Anda dapat menggunakan retrieve_options() metode ini untuk memeriksa konten yang didukung dan menerima jenis untuk model.

print(sagemaker.content_types.retrieve_options(model_id=model_id, model_version=model_version)) print(sagemaker.accept_types.retrieve_options(model_id=model_id, model_version=model_version))

Untuk informasi selengkapnya tentang utilitas, lihat Utility API.

Gunakan model fondasi berpemilik dengan SDK SageMaker Python

Model berpemilik harus digunakan menggunakan informasi paket model setelah berlangganan model di. AWS Marketplace Untuk informasi selengkapnya tentang SageMaker dan AWS Marketplace, lihat SageMakerAlgoritma dan Model Beli dan Jual Amazon di AWS Marketplace. Untuk menemukan AWS Marketplace tautan untuk model kepemilikan terbaru, lihat Memulai Amazon SageMaker JumpStart.

Setelah berlangganan model pilihan Anda AWS Marketplace, Anda dapat menerapkan model foundation menggunakan SageMaker Python SDK dan SDK yang terkait dengan penyedia model. Misalnya, AI21 Labs, Cohere, dan LightOn gunakan"ai21[SM]",, dan lightonsage paketcohere-sagemaker, masing-masing.

Misalnya, untuk menentukan JumpStart model menggunakan Jurassic-2 Jumbo Instruct dari AI21 Labs, gunakan kode berikut:

import sagemaker import ai21 role = get_execution_role() sagemaker_session = sagemaker.Session() model_package_arn = "arn:aws:sagemaker:us-east-1:865070037744:model-package/j2-jumbo-instruct-v1-1-43-4e47c49e61743066b9d95efed6882f35" my_model = ModelPackage( role=role, model_package_arn=model_package_arn, sagemaker_session=sagemaker_session )

Misalnya step-by-step , temukan dan jalankan notebook yang terkait dengan model pondasi berpemilik pilihan Anda di SageMaker Studio Classic. Untuk informasi selengkapnya, lihat Gunakan model foundation di Amazon SageMaker Studio Classic. Untuk informasi selengkapnya tentang SageMaker Python SDK, lihat ModelPackage.