Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Fine-tune model bahasa besar (LLM) menggunakan instruksi yang cepat
Instruction-based fine tuning menggunakan contoh berlabel untuk meningkatkan kinerja model pondasi yang telah dilatih sebelumnya pada tugas tertentu. Contoh berlabel diformat sebagai prompt, pasangan respons dan diungkapkan sebagai instruksi. Proses penyempurnaan ini memodifikasi bobot model. Untuk informasi lebih lanjut tentang penyempurnaan berbasis instruksi, lihat makalah Memperkenalkan FLAN: Model Bahasa yang lebih dapat digeneralisasi dengan Model Bahasa Instruksi dan Penskalaan. Fine-Tuning
Fine-tuned Model Language Net (FLAN) menggunakan penyetelan instruksi untuk membuat model lebih mudah untuk menyelesaikan tugas NLP hilir umum. Amazon SageMaker JumpStart menyediakan sejumlah model dasar dalam keluarga model FLAN. Misalnya, FLAN-T5 model adalah instruksi yang disesuaikan pada berbagai tugas untuk meningkatkan kinerja zero-shot untuk berbagai kasus penggunaan umum. Dengan data tambahan dan penyempurnaan, model berbasis instruksi dapat disesuaikan lebih lanjut dengan tugas yang lebih spesifik yang tidak dipertimbangkan selama pra-pelatihan.
Untuk menyempurnakan LLM pada tugas tertentu menggunakan instruksi tugas pasangan prompt-response:
-
Siapkan instruksi Anda dalam file JSON. Untuk informasi selengkapnya tentang format yang diperlukan untuk file pasangan prompt-response dan struktur folder data, lihat. Mempersiapkan dan mengunggah data pelatihan untuk penyempurnaan berbasis instruksi
-
Buat pekerjaan pelatihan penyempurnaan Anda. Untuk petunjuk, lihat Buat pekerjaan pelatihan untuk penyempurnaan berbasis instruksi.
Anda dapat menemukan contoh ujung ke ujung diNotebook contoh.
Hanya sebagian model JumpStart pondasi yang kompatibel dengan penyempurnaan berbasis instruksi. Instruction-based fine tuning tersedia dengan model pondasi berikut:
catatan
Beberapa model JumpStart dasar, seperti Llama 2 7B, memerlukan penerimaan perjanjian lisensi pengguna akhir sebelum menyempurnakan dan melakukan inferensi. Untuk informasi selengkapnya, lihat End-user perjanjian lisensi.
-
Flan-T5 Basis
-
Flan-T5 Besar
-
Flan-T5 Kecil
-
Flan-T5 XL
-
Flan-T5 XXL
-
Lama 2 13B
-
Llama 2 13B Chat
-
Llama 2 13B Neuron
-
Lama 2 70B
-
Llama 2 70B Chat
-
Lama 2 7B
-
Llama 2 7B Chat
-
Llama 2 7B Neuron
-
Mistral 7B
-
RedPajama INCITE Basis 3B V1
-
RedPajama INCITE Basis 7B V1
-
RedPajama INCITE Chat 3B V1
-
RedPajama INCITE Chat 7B V1
-
RedPajama INCITE Instruksi 3B V1
-
RedPajama INCITE Instruksi 7B V1
Mempersiapkan dan mengunggah data pelatihan untuk penyempurnaan berbasis instruksi
Data pelatihan untuk penyempurnaan berbasis instruksi harus disediakan dalam format file teks JSON Lines, di mana setiap baris adalah kamus. Semua data pelatihan harus dalam satu folder. Folder dapat menyertakan beberapa file.jsonl.
Folder pelatihan juga dapat menyertakan file JSON template (template.json) yang menjelaskan format input dan output data Anda. Jika tidak ada file template yang disediakan, file template berikut digunakan:
{ "prompt": "Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.\n\n### Instruction:\n{instruction}\n\n### Input:\n{context}", "completion": "{response}" }
Menurut template.json file, setiap entri .jsonl dari data pelatihan harus menyertakan{instruction},{context}, dan bidang. {response}
Jika Anda menyediakan file JSON template kustom, gunakan "completion" tombol "prompt" dan untuk menentukan bidang wajib Anda sendiri. Menurut file JSON template kustom berikut, setiap entri .jsonl dari data pelatihan harus menyertakan{question},{context}, dan bidang: {answer}
{ "prompt": "question: {question} context: {context}", "completion": "{answer}" }
Pisahkan data untuk pelatihan dan pengujian
Anda dapat secara opsional menyediakan folder lain yang berisi data validasi. Folder ini juga harus menyertakan satu atau lebih file.jsonl. Jika tidak ada dataset validasi yang disediakan, maka sejumlah data pelatihan disisihkan untuk tujuan validasi. Anda dapat menyesuaikan persentase data pelatihan yang digunakan untuk validasi saat memilih hyperparameter untuk menyempurnakan model Anda.
Unggah data penyetelan halus ke Amazon S3
Unggah data yang sudah disiapkan ke Amazon Simple Storage Service (Amazon S3) untuk digunakan saat menyempurnakan model JumpStart dasar. Anda dapat menggunakan perintah berikut untuk mengunggah data Anda:
from sagemaker.s3 import S3Uploader import sagemaker import random output_bucket = sagemaker.Session().default_bucket() local_data_file ="train.jsonl"train_data_location = f"s3://{output_bucket}/dolly_dataset"S3Uploader.upload(local_data_file, train_data_location) S3Uploader.upload("template.json", train_data_location) print(f"Training data: {train_data_location}")
Buat pekerjaan pelatihan untuk penyempurnaan berbasis instruksi
Setelah data diunggah ke Amazon S3, Anda dapat menyempurnakan dan menerapkan model JumpStart dasar Anda. Untuk menyempurnakan model Anda di Studio, lihatFine-tune model di Studio. Untuk menyempurnakan model Anda menggunakan SageMaker Python SDK, lihatFine-tune model pondasi yang tersedia untuk umum dengan ModelTrainer kelas.
Notebook contoh
Untuk informasi selengkapnya tentang penyempurnaan berbasis instruksi, lihat contoh buku catatan berikut: