View a markdown version of this page

Model pondasi dan hiperparameter untuk fine-tuning - Amazon SageMaker AI

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

Model pondasi dan hiperparameter untuk fine-tuning

Model pondasi mahal secara komputasi dan dilatih pada korpus besar yang tidak berlabel. Fine-tuning model pondasi pra-terlatih adalah cara yang terjangkau untuk memanfaatkan kemampuan mereka yang luas sambil menyesuaikan model pada korpus kecil Anda sendiri. Fine-tuning adalah metode penyesuaian yang melibatkan pelatihan lebih lanjut dan mengubah bobot model Anda.

Fine-tuning mungkin berguna bagi Anda jika Anda membutuhkan:

  • untuk menyesuaikan model Anda dengan kebutuhan bisnis tertentu

  • model Anda untuk berhasil bekerja dengan bahasa khusus domain, seperti jargon industri, istilah teknis, atau kosakata khusus lainnya

  • peningkatan kinerja untuk tugas-tugas tertentu

  • tanggapan akurat, relatif, dan sadar konteks dalam aplikasi

  • tanggapan yang lebih faktual, kurang beracun, dan lebih selaras dengan persyaratan tertentu

Ada dua pendekatan utama yang dapat Anda ambil untuk fine-tuning tergantung pada kasus penggunaan Anda dan model pondasi yang dipilih.

  1. Jika Anda tertarik untuk menyempurnakan model Anda pada data spesifik domain, lihat. Fine-tune model bahasa besar (LLM) menggunakan adaptasi domain

  2. Jika Anda tertarik dengan fine-tuning berbasis instruksi menggunakan contoh prompt dan respons, lihat. Fine-tune model bahasa besar (LLM) menggunakan instruksi cepat

Model foundation tersedia untuk fine-tuning

Anda dapat menyempurnakan salah satu model JumpStart pondasi berikut:

  • Mekar 3B

  • Mekar 7B1

  • BloomZ 3B FP16

  • BloomZ 7B1 FP16

  • Kode Llama 13B

  • Kode Llama 13B Python

  • Kode Llama 34B

  • Kode Llama 34B Python

  • Kode Llama 70B

  • Kode Llama 70B Python

  • Kode Llama 7B

  • Kode Llama 7B Python

  • CyberAgentLM2-7B-Chat (CALM2-7B-Chat)

  • Falcon 40B BF16

  • Falcon 40B Instruksi BF16

  • Falcon 7B BF16

  • Falcon 7B Instruksi BF16

  • Flan-T5 Basis

  • Flan-T5 Besar

  • Flan-T5 Kecil

  • Flan-T5 XL

  • Flan-T5 XXL

  • Gemma 2B

  • Instruksi Gemma 2B

  • Gemma 7B

  • Instruksi Gemma 7B

  • GPT-2 XL

  • GPT-J 6B

  • GPT-Neo 1.3B

  • GPT-Neo 125M

  • GPT-NEO 2.7B

  • Instruksi LightGPT 6B

  • Llama 2 13B

  • Llama 2 13B Obrolan

  • Llama 2 13B Neuron

  • Llama 2 70B

  • Llama 2 70B Obrolan

  • Llama 2 7B

  • Llama 2 7B Obrolan

  • Llama 2 7B Neuron

  • Mistral 7B

  • Mixtral 8x7B

  • Instruksi Mixtral 8x7B

  • RedPajama INCITE Basis 3B V1

  • RedPajama INCITE Basis 7B V1

  • RedPajama INCITE Obrolan 3B V1

  • RedPajama INCITE Obrolan 7B V1

  • RedPajama INCITE Instruksikan 3B V1

  • RedPajama INCITE Instruksikan 7B V1

  • Difusi Stabil 2.1

Hiperparameter fine-tuning yang umumnya didukung

Model pondasi yang berbeda mendukung hiperparameter yang berbeda saat menyempurnakan. Berikut ini adalah hyperparameter yang umumnya didukung yang dapat menyesuaikan model Anda lebih lanjut selama pelatihan:

Parameter Inferensi Deskripsi

epoch

Jumlah lintasan yang diambil model melalui kumpulan data fine-tuning selama pelatihan. Harus bilangan bulat lebih besar dari 1.

learning_rate

Tingkat di mana bobot model diperbarui setelah mengerjakan setiap batch contoh pelatihan fine-tuning. Harus berupa float positif lebih besar dari 0.

instruction_tuned

Apakah akan melatih instruksi-model atau tidak. Harus 'True' atau 'False'.

per_device_train_batch_size

Ukuran batch per inti GPU atau CPU untuk pelatihan. Harus berupa bilangan bulat positif.

per_device_eval_batch_size

Ukuran batch per inti GPU atau CPU untuk evaluasi. Harus berupa bilangan bulat positif.

max_train_samples

Untuk tujuan debugging atau pelatihan yang lebih cepat, potong jumlah contoh pelatihan ke nilai ini. Nilai -1 berarti bahwa model menggunakan semua sampel pelatihan. Harus berupa bilangan bulat positif atau -1.

max_val_samples

Untuk tujuan debugging atau pelatihan yang lebih cepat, potong jumlah contoh validasi ke nilai ini. Nilai -1 berarti bahwa model menggunakan semua sampel validasi. Harus berupa bilangan bulat positif atau -1.

max_input_length

Total panjang urutan input maksimum setelah tokenisasi. Urutan yang lebih panjang dari ini akan terpotong. Jika -1, max_input_length diatur ke minimum 1024 dan model_max_length ditentukan oleh tokenizer. Jika diatur ke nilai positif, max_input_length diatur ke minimum dari nilai yang disediakan dan model_max_length ditentukan oleh tokenizer. Harus berupa bilangan bulat positif atau -1.

validation_split_ratio

Jika tidak ada saluran validasi, rasio validasi kereta terpisah dari data pelatihan. Harus antara 0 dan 1.

train_data_split_seed

Jika data validasi tidak ada, ini memperbaiki pemisahan acak data pelatihan input ke data pelatihan dan validasi yang digunakan oleh model. Harus berupa bilangan bulat.

preprocessing_num_workers

Jumlah proses yang digunakan untuk pra-pemrosesan. JikaNone, proses utama digunakan untuk pra-pemrosesan.

lora_r

Low-rank nilai adaptasi (LoRa) r, yang bertindak sebagai faktor penskalaan untuk pembaruan bobot. Harus berupa bilangan bulat positif.

lora_alpha

Low-rank nilai alfa adaptasi (LoRa), yang bertindak sebagai faktor penskalaan untuk pembaruan bobot. Umumnya 2 sampai 4 kali ukuranlora_r. Harus berupa bilangan bulat positif.

lora_dropout

Nilai putus sekolah untuk lapisan adaptasi peringkat rendah (LoRa) Harus berupa float positif antara 0 dan 1.

int8_quantization

JikaTrue, model dimuat dengan presisi 8 bit untuk pelatihan.

enable_fsdp

JikaTrue, pelatihan menggunakan Fully Sharded Data Parallelism.

Anda dapat menentukan nilai hyperparameter saat menyempurnakan model Anda di Studio. Untuk informasi selengkapnya, lihat Fine-tune model di Studio.

Anda juga dapat mengganti nilai hyperparameter default saat menyempurnakan model Anda menggunakan SDK. SageMaker Python Untuk informasi selengkapnya, lihat Fine-tune model pondasi yang tersedia untuk umum dengan kelas JumpStartEstimator.