Menyesuaikan LLM dan model AI

Model bahasa besar (LLM) adalah alat canggih yang dapat membantu berbagai tugas, mulai dari menulis email hingga menjawab pertanyaan kompleks. Namun, terkadang model ini tidak cukup memahami apa yang Anda perlukan untuk project spesifik Anda. Di sinilah, penyesuaian diterapkan. Hal ini seperti mengajari siswa cerdas keterampilan khusus yang mereka butuhkan untuk pekerjaan tertentu.

Penyesuaian Gemini dengan Google AI Studio

Apa itu penyesuaian?

Penyesuaian melibatkan pelatihan lebih lanjut LLM yang terlatih pada set data khusus tugas (proses pemelajaran transfer). Anggap saja seperti ini: model terlatih telah mempelajari banyak informasi umum, dan penyesuaian membantu model tersebut berspesialisasi dalam bidang tertentu.

Kapan harus melakukan penyesuaian versus menggunakan RAG

Penyesuaian dan Retrieval Augmented Generation (RAG) adalah dua cara berbeda untuk menyesuaikan LLM untuk penggunaan tertentu. Memilih metode yang tepat bergantung pada faktor-faktor seperti jenis tugas, apakah Anda memiliki data yang cukup, dan apa yang ingin Anda capai.

Teknik


Perbedaan utama


Kelebihan

Tantangan

Fine tuning

Mengubah parameter model.

Peningkatan akurasi, peningkatan spesifisitas, pengurangan halusinasi, interaksi yang disesuaikan, efektivitas biaya, pengurangan bias.

Risiko "lupa total", biaya resource yang lebih tinggi, tuntutan data yang lebih kuat, dan potensi "overfitting".

RAG


Menambah perintah dengan pengetahuan eksternal.

Integrasi pengetahuan dinamis, relevansi kontekstual, fleksibilitas, berkurangnya kebutuhan akan pelatihan ekstensif.

Akurasi terbatas (misalnya, RAG hanya dapat mereferensikan data yang dapat diaksesnya, dan tidak membuat inferensi berdasarkan pelatihannya), kompleksitas pemeliharaan sistem RAG, potensi halusinasi.

Teknik


Perbedaan utama


Kelebihan

Tantangan

Fine tuning

Mengubah parameter model.

Peningkatan akurasi, peningkatan spesifisitas, pengurangan halusinasi, interaksi yang disesuaikan, efektivitas biaya, pengurangan bias.

Risiko "lupa total", biaya resource yang lebih tinggi, tuntutan data yang lebih kuat, dan potensi "overfitting".

RAG


Menambah perintah dengan pengetahuan eksternal.

Integrasi pengetahuan dinamis, relevansi kontekstual, fleksibilitas, berkurangnya kebutuhan akan pelatihan ekstensif.

Akurasi terbatas (misalnya, RAG hanya dapat mereferensikan data yang dapat diaksesnya, dan tidak membuat inferensi berdasarkan pelatihannya), kompleksitas pemeliharaan sistem RAG, potensi halusinasi.

Anda harus mempertimbangkan penyesuaian jika Anda ingin LLM:

  • Memahami bahasa atau jargon tertentu: Jika project Anda menggunakan banyak istilah khusus industri, penyesuaian dapat membantu model mempelajari dan menggunakan bahasa tersebut dengan benar  
  • Meningkatkan akurasi pada tugas tertentu: Penyesuaian dapat meningkatkan performa model secara signifikan jika Anda memerlukannya untuk melakukan tugas tertentu, seperti mengklasifikasikan ulasan pelanggan atau membuat deskripsi produk 
  • Menyesuaikan gaya atau nada tertentu: Jika Anda ingin model menghasilkan teks yang sesuai dengan gaya penulisan atau suara brand tertentu, penyesuaian dapat membantu  
  • Bekerja dengan data terbatas: Jika Anda memiliki data terbatas, penyesuaian dapat lebih efisien daripada melatih model dari awal karena memanfaatkan pengetahuan yang sudah dimiliki model terlatih  
  • Mengurangi biaya dan latensi: Untuk kasus penggunaan bervolume tinggi, penyesuaian model yang lebih kecil dapat lebih hemat biaya daripada menggunakan model tujuan umum yang lebih besar untuk setiap permintaan
  • Menangani kasus ekstrem: Penyesuaian dapat meningkatkan kemampuan model untuk menangani kasus ekstrem dan perintah kompleks yang sulit ditangani hanya dengan rekayasa perintah

Cara kerja penyesuaian: panduan langkah demi langkah

Penyempurnaan dibangun di atas fondasi LLM yang telah dilatih. Model terlatih ini telah mempelajari banyak pengetahuan bahasa umum dari set data yang besar. Selama penyesuaian, model akan terpapar set data yang lebih kecil dan spesifik untuk tugas tertentu, dan parameter internal model—anggap saja sebagai jutaan kenop kecil yang mengontrol pengetahuannya—disesuaikan agar lebih cocok dengan contoh dalam set data baru. Proses "pelatihan ulang" ini memperbarui koneksi internal model secara bertahap sehingga model menjadi ahli dalam topik baru. Mari kita uraikan proses penyesuaian ke dalam beberapa langkah praktis:

Langkah 1: Persiapan data

Sebelum memulai penyesuaian, penting untuk menyiapkan data Anda. Kualitas dan struktur data Anda secara langsung memengaruhi performa model yang disesuaikan. Tahap ini melibatkan pengumpulan, pembersihan, pemformatan, dan pembagian data Anda ke dalam set yang sesuai untuk pelatihan, validasi, dan pengujian.

  • Kumpulkan data: Kumpulkan data yang akan Anda gunakan untuk menyesuaikan model; data ini harus relevan dengan tugas spesifik yang Anda inginkan agar model tersebut unggul
  • Bersihkan dan format: Bersihkan data Anda dengan menghapus kesalahan, inkonsistensi, dan informasi yang tidak relevan; pastikan data berada dalam format yang dapat dipahami model
  • Bagi data: Bagi data Anda menjadi tiga set: 1.) pelatihan (digunakan untuk melatih model), 2.) validasi (digunakan untuk memantau performa model dan menyesuaikan setelan), dan 3.) pengujian (digunakan untuk mengevaluasi performa akhir model yang disesuaikan)

Langkah 2: Memilih pendekatan

Dalam hal penyesuaian, Anda memiliki opsi terkait seberapa banyak model terlatih yang ingin Anda sesuaikan. Pendekatan yang Anda pilih bergantung pada faktor-faktor seperti ukuran set data, sumber daya komputasi yang tersedia, dan tingkat akurasi yang diinginkan. Dua pendekatan utama adalah penyesuaian penuh dan parameter-efficient fine-tuning (PEFT).


Penyesuaian penuh

Dalam penyesuaian penuh, semua parameter model diperbarui selama pelatihan. Pendekatan ini cocok jika set data khusus tugasnya besar dan berbeda secara signifikan dari data prapelatihan.  


PEFT 

Parameter-efficient fine-tuning menawarkan cara yang lebih cerdas dan efisien untuk melakukan penyesuaian. Alih-alih melatih ulang seluruh model (yang lambat dan mahal), metode PEFT membekukan LLM asli dan menambahkan lapisan baru yang kecil dan dapat dilatih.

Bayangkan seperti ini: Daripada menulis ulang seluruh buku teks setebal 1.000 halaman, Anda cukup menambahkan beberapa halaman catatan tempel berisi informasi baru yang lebih spesifik. Hal ini membuat prosesnya jauh lebih cepat dan murah. Metode PEFT yang populer mencakup LoRA (Low-Rank Adaptation) dan QLoRA (Quantized Low-Rank Adaptation), yang menawarkan cara yang lebih efisien untuk menyesuaikan LLM. 

Langkah 3: Melatih model

Setelah data disiapkan dan teknik dipilih, saatnya melatih model. Di sinilah model belajar dari data Anda dan menyesuaikan parameternya untuk meningkatkan performa pada tugas spesifik Anda. Pemantauan dan penyesuaian setelan pelatihan yang cermat sangat penting untuk mencapai hasil yang optimal.

  • Tetapkan hyperparameter: Konfigurasikan setelan seperti kecepatan pembelajaran, ukuran batch, dan jumlah epoch; setelan ini membantu mengontrol cara model belajar
  • Mulai pelatihan: Masukkan data pelatihan ke dalam model dan biarkan model belajar; pantau performa model menggunakan set validasi
  • Sesuaikan seperlunya: Jika model tidak berfungsi dengan baik, Anda dapat menyesuaikan hyperparameter atau mencoba teknik penyesuaian yang berbeda

Langkah 4: Evaluasi dan deployment

Tahap terakhir melibatkan evaluasi performa model yang telah disesuaikan dan men-deploy-nya untuk penggunaan di dunia nyata. Hal ini memerlukan penilaian akurasi dan efisiensinya, lalu mengintegrasikannya ke dalam aplikasi atau sistem Anda. Pemantauan dan pelatihan ulang yang berkelanjutan mungkin diperlukan untuk mempertahankan performa optimal dari waktu ke waktu.

  • Mengevaluasi performa: Gunakan set pengujian untuk mengevaluasi performa akhir model yang disesuaikan; lihat metrik yang relevan dengan tugas Anda, seperti akurasi, presisi, dan perolehan
  • Deploy model: Jika Anda puas dengan performanya, deploy model ke aplikasi atau sistem Anda
  • Pantau performa: Awasi performa model di dunia nyata dan latih ulang sesuai kebutuhan untuk menjaga akurasi

Jenis penyesuaian

Ada berbagai cara untuk menyesuaikan model, bergantung pada sasaran dan resource Anda:

Jenis

Deskripsi

Kasus penggunaan

Penyesuaian yang diawasi

Model ini dilatih pada set data berlabel dengan pasangan input-output.

Klasifikasi teks, pengenalan entity bernama, analisis sentimen.

Penyesuaian instruksi

Model dilatih dengan set data berisi petunjuk dan respons yang diinginkan.

Chatbot, sistem question answering, pembuatan kode.

Pemelajaran beberapa tahap

Model ini diberi beberapa contoh tugas yang diinginkan dalam perintah.

Beradaptasi dengan tugas baru dengan data terbatas.

Pemelajaran transfer

Model ini memanfaatkan pengetahuan yang diperoleh dari prapelatihan pada set data tujuan umum.

Beradaptasi dengan tugas terkait.

Penyesuaian khusus domain

Model ini diadaptasi ke domain atau industri tertentu.

Analisis dokumen hukum, pembuatan laporan medis, perkiraan keuangan.

Pemelajaran multi-tugas

Model ini dilatih untuk beberapa tugas secara bersamaan.

Meningkatkan performa di seluruh tugas terkait.

Penyesuaian berurutan

Model ini diadaptasi ke serangkaian tugas terkait secara bertahap.

Secara bertahap meningkatkan kemampuan untuk tugas yang kompleks.

Jenis

Deskripsi

Kasus penggunaan

Penyesuaian yang diawasi

Model ini dilatih pada set data berlabel dengan pasangan input-output.

Klasifikasi teks, pengenalan entity bernama, analisis sentimen.

Penyesuaian instruksi

Model dilatih dengan set data berisi petunjuk dan respons yang diinginkan.

Chatbot, sistem question answering, pembuatan kode.

Pemelajaran beberapa tahap

Model ini diberi beberapa contoh tugas yang diinginkan dalam perintah.

Beradaptasi dengan tugas baru dengan data terbatas.

Pemelajaran transfer

Model ini memanfaatkan pengetahuan yang diperoleh dari prapelatihan pada set data tujuan umum.

Beradaptasi dengan tugas terkait.

Penyesuaian khusus domain

Model ini diadaptasi ke domain atau industri tertentu.

Analisis dokumen hukum, pembuatan laporan medis, perkiraan keuangan.

Pemelajaran multi-tugas

Model ini dilatih untuk beberapa tugas secara bersamaan.

Meningkatkan performa di seluruh tugas terkait.

Penyesuaian berurutan

Model ini diadaptasi ke serangkaian tugas terkait secara bertahap.

Secara bertahap meningkatkan kemampuan untuk tugas yang kompleks.

Praktik terbaik untuk penyesuaian

Untuk mengoptimalkan penyesuaian, ikuti praktik terbaik berikut :  

  • Kualitas dan kuantitas data: Gunakan set data berkualitas tinggi yang relevan, beragam, dan cukup besar. Kualitas data sangat penting dalam penyesuaian. Pastikan data akurat, konsisten, dan bebas dari kesalahan atau bias. Misalnya, set data dengan label yang tidak akurat atau format yang tidak konsisten dapat menghambat kemampuan model untuk belajar secara efektif.   
  • Penyesuaian hyperparameter: Bereksperimenlah dengan berbagai setelan hyperparameter untuk menemukan konfigurasi optimal untuk tugas Anda.   
  • Evaluasi rutin: Evaluasi performa model secara rutin selama pelatihan untuk memantau progresnya dan melakukan penyesuaian yang diperlukan.   
  • Hindari overfitting: Gunakan teknik seperti penghentian awal dan regularisasi untuk mencegah overfitting pada data pelatihan.   
  • Atasi bias: Perhatikan potensi bias dalam data dan gunakan teknik untuk memitigasi bias dalam model yang disesuaikan.

Manfaat penyesuaian LLM

Penyesuaian menawarkan beberapa potensi keuntungan:

Akurasi yang ditingkatkan

Hal ini dapat meningkatkan akurasi dan relevansi output model secara signifikan untuk kasus penggunaan spesifik Anda, sehingga berpotensi mengurangi halusinasi AI.  

Pelatihan lebih cepat

Penyesuaian lebih cepat dan memerlukan lebih sedikit data dibandingkan melatih model dari awal.

Hemat biaya

Hal ini dapat lebih hemat biaya daripada melatih model baru karena memerlukan daya komputasi dan data yang lebih sedikit. 

Penyesuaian

Penyesuaian memungkinkan Anda menyesuaikan perilaku model agar selaras dengan kebutuhan dan sasaran spesifik Anda. 

Penurunan bias

Hal ini dapat memberikan kontrol yang lebih baik atas perilaku model, sehingga berpotensi mengurangi risiko pembuatan konten yang bias atau kontroversial.

Jendela konteks yang lebih besar

Penyesuaian dapat digunakan untuk meningkatkan jendela konteks LLM, sehingga memungkinkan LLM memproses dan menyimpan lebih banyak informasi.

Tantangan umum saat melakukan penyesuaian

Meskipun penyesuaian dapat memberikan banyak manfaat, ada juga beberapa tantangan yang mungkin perlu diwaspadai: 

  • Overfitting: Model mempelajari data pelatihan terlalu baik dan tidak dapat digeneralisasi dengan baik ke data baru. Anda dapat menggunakan teknik seperti regularisasi dan augmentasi data untuk mengurangi overfitting.  
  • Keterbatasan data: Data yang tidak memadai dapat membatasi efektivitas penyesuaian. Pertimbangkan untuk menggunakan teknik augmentasi data atau pemelajaran transfer dari tugas terkait lainnya.  
  • Catastrophic forgetting: Jika Anda terlalu mempersempit spesialisasi model, model tersebut dapat melupakan pengetahuan umumnya. Hal ini seperti dokter ahli yang menjadi ahli bedah superspesialis tetapi melupakan pertolongan pertama dasar. Anda dapat menggunakan teknik seperti regularisasi dan replay buffer untuk mengurangi catastrophic forgetting.  
  • Resource komputasi: Penyesuaian model besar dapat memerlukan biaya komputasi yang tinggi dan memori yang signifikan. Pertimbangkan untuk menggunakan teknik seperti PEFT, kuantisasi, dan pelatihan terdistribusi untuk mengurangi persyaratan komputasi.  
  • Evaluasi: Mengevaluasi performa LLM yang disesuaikan dapat menjadi rumit, sehingga memerlukan pemilihan metrik dan tolok ukur yang cermat.  
  • Tantangan pemelajaran multi-tugas: Penyesuaian LLM untuk pemelajaran multi-tugas menimbulkan tantangan unik, seperti interferensi tugas, yang terjadi ketika tujuan yang berbeda bertentangan selama pelatihan, dan ketidakseimbangan data, yang terjadi ketika tugas dengan lebih banyak data dapat mendominasi.

Kasus penggunaan penyesuaian

Penyesuaian dapat diterapkan ke berbagai kasus penggunaan:

Layanan pelanggan

Menyesuaikan LLM untuk memahami dan merespons pertanyaan pelanggan secara lebih efektif, termasuk dalam chatbot.  

Kemampuan LLM untuk menghasilkan ringkasan yang ringkas dan akurat dalam domain atau gaya penulisan tertentu dapat ditingkatkan melalui penyesuaian.

Pembuatan konten

Buat postingan blog, artikel, atau deskripsi produk dalam gaya tertentu dengan model yang disesuaikan.  

Analisis data

Menyesuaikan model untuk mengklasifikasikan dan menganalisis data teks, seperti postingan media sosial atau ulasan pelanggan.

Buat kode dalam bahasa pemrograman atau framework tertentu dengan model yang telah disesuaikan. 

Terjemahan mesin

Google Terjemahan menggunakan penyesuaian untuk meningkatkan kualitas terjemahan mesin dengan mengadaptasi model ke pasangan bahasa dan domain tertentu. 

Penyesuaian skala besar dengan Google Cloud

Google Cloud menawarkan ekosistem yang tangguh untuk mendukung upaya penyesuaian model Anda, menyediakan semuanya mulai dari platform machine learning terpadu hingga hardware khusus yang diperlukan untuk mempercepat komputasi yang kompleks. Entah Anda menyesuaikan model dasar atau menyempurnakan model Anda sendiri, layanan ini menyederhanakan seluruh alur kerja.

Langkah selanjutnya

Mulailah membangun solusi di Google Cloud dengan kredit gratis senilai $300 dan lebih dari 20 produk yang selalu gratis.