Kapan Harus Melakukan Fine-Tuning
Tanda-tanda bahwa pemberian prompt telah mencapai batasnya.
Kapan Harus Melakukan Fine-Tuning adalah pelajaran AI Prompt Engineering gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar AI Prompt Engineering, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus AI Prompt Engineering mencakup 4 pelajaran total.
Penyetelan Adalah Keputusan Berdasarkan Bukti
Penyetelan hanya dibenarkan jika Anda dapat menunjukkan data yang membuktikan pemberian instruksi telah mencapai batasnya. Pemicu keputusan tidak pernah berupa dugaan—pemicu tersebut adalah evaluasi yang disisihkan, ketika instruksi terbaik yang jujur tetap plateaued di bawah standar kualitas Anda meskipun tangga optimasi telah dituntaskan.
- Penyetelan menukar fleksibilitas dengan konsistensi, biaya per panggilan yang lebih rendah, dan perilaku yang dipelajari
- Biayanya mencakup alur data, infrastruktur evaluasi, dan penyetelan ulang saat model dasar berganti
- Anda harus dapat menyebutkan kegagalan spesifik yang tidak dapat diperbaiki oleh pemberian instruksi
Sinyal 1: Instruksi Mencapai Titik Jenuh
Sinyal yang paling jelas adalah titik jenuh pada kumpulan evaluasi yang dibekukan. Anda menambahkan contoh, melakukan penguraian, dan menambahkan pemeriksa—lalu skor berhenti meningkat sementara kesalahan tetap sistematis, bukan acak.
Kesalahan sisa yang sistematis (model terus-menerus salah menangani konstruksi yang sama) berarti perilaku tersebut sulit diperoleh melalui instruksi. Ini adalah masalah yang cocok untuk penyetelan. Kesalahan acak yang tersebar biasanya berarti instruksi atau data masih berisik—lanjutkan iterasi.
# Track eval score vs prompt-iteration; flat tail = plateau
scores = [0.62, 0.71, 0.78, 0.79, 0.795, 0.796] # diminishing returns
def plateaued(scores, window=3, eps=0.01):
tail = scores[-window:]
return (max(tail) - min(tail)) < eps
print(plateaued(scores)) # True -> prompting has stalledSinyal 2: Panjang Instruksi Menjadi Produk
Ketika instruksi telah berkembang menjadi ribuan token berisi contoh dan aturan hanya untuk mempertahankan kualitas, Anda membayar beban latensi dan biaya pada setiap panggilan untuk menyimulasikan perilaku yang telah dipelajari.
Jika token tersebut mengodekan perilaku yang stabil dan berulang (format tetap, gaya konsisten, atau keputusan perutean), penyetelan dapat memasukkannya ke dalam bobot—memperkecil instruksi hingga satu tingkat besaran sekaligus mempertahankan perilaku. Ini adalah penyulingan instruksi, kasus penggunaan penyetelan yang sah dan paling umum.
Sinyal 3: Batas Minimum Latensi atau Biaya yang Ketat
Jika Anda memerlukan model yang lebih kecil, lebih cepat, dan lebih murah untuk menyamai perilaku model yang lebih besar pada tugas yang sempit, penyetelan adalah alatnya. Anda menyuling keluaran model besar menjadi model kecil yang disetel.
Hal ini dibenarkan ketika: volume berada di atas titik impas, anggaran latensi ketat, dan tugas cukup sempit sehingga model kecil dapat menguasainya. Di luar kondisi tersebut, beban rekayasanya tidak sepadan.
# Distillation data: teacher (big model) labels -> student (small) trains
def make_distill_pair(prompt, teacher_fn):
completion = teacher_fn(prompt) # high-quality big-model output
return {'messages': [
{'role': 'user', 'content': prompt},
{'role': 'assistant', 'content': completion},
]}Sinyal 4: Format atau Gaya yang Khas
Beberapa keluaran sangat spesifik sehingga menjelaskannya membutuhkan biaya lebih besar daripada mendemonstrasikannya dalam skala besar: DSL milik suatu organisasi, gaya penulisan internal dengan seribu aturan kecil, atau skema domain yang kaku dengan tak terhitung banyaknya bidang bersyarat.
Ketika kepatuhan format harus hampir sempurna dan aturan terlalu banyak untuk dicantumkan dalam instruksi, ratusan contoh mengajarkan polanya lebih andal daripada uraian. Penyetelan unggul dalam menginternalisasi struktur implisit yang sulit diperoleh melalui instruksi eksplisit.
Sinyal 5: Perilaku yang Ditolak Model
Terkadang model menentang suatu instruksi: model terus menambahkan peringatan yang Anda larang, menolak tugas yang sebenarnya tidak berbahaya, atau kembali ke gaya bawaan saat memuat beban tinggi. Jika instruksi kuat yang diulang beserta contoh tidak dapat menekan perilaku tersebut secara andal, penolakan itu merupakan prior yang tertanam dalam bobot dasar.
Penyetelan dapat mengesampingkan prior tersebut. Namun, pastikan terlebih dahulu bahwa penolakan itu benar-benar nyata dan bukan masalah kejelasan instruksi—salah mengatribusikan penolakan akan menyebabkan proses pelatihan yang tidak perlu.
Sinyal Penyangkal: Kapan TIDAK Menyetel
Yang sama pentingnya adalah mengenali alarm palsu. TIDAK perlu melakukan penyetelan ketika:
- Kesenjangannya adalah pengetahuan—ambil pengetahuan tersebut; penyetelan menanamkan fakta yang usang dan lossy
- Spesifikasi masih berubah setiap minggu—Anda akan terus-menerus melatih ulang
- Anda memiliki kurang dari beberapa ratus contoh bersih—sinyalnya terlalu sedikit dan risiko overfit tinggi
- Kesalahannya acak, bukan sistematis—data atau instruksi masih berisik
- Anda tidak memiliki kerangka evaluasi—Anda tidak dapat mengetahui apakah penyetelan benar-benar membantu
Gerbang Kesiapan Data
Kualitas penyetelan dibatasi oleh kualitas data. Sebelum berkomitmen, lewati gerbang kesiapan: jumlah contoh memadai, seimbang di antara kasus yang penting bagi Anda, konsisten dalam pelabelan, dan bebas dari kebocoran yang meningkatkan skor evaluasi secara semu.
Beberapa ratus contoh yang dikurasi dengan teliti lebih baik daripada puluhan ribu contoh yang berisik. Jika label Anda saling bertentangan, model akan mempelajari derau tersebut.
def data_ready(examples, min_n=300, max_dupe_ratio=0.05):
n = len(examples)
texts = [e['messages'][0]['content'] for e in examples]
dupe_ratio = 1 - (len(set(texts)) / n)
return n >= min_n and dupe_ratio <= max_dupe_ratio
# Returns False until you have enough deduped, curated examplesPilih Metode Penyetelan
Tidak semua penyetelan merupakan pelatihan seluruh bobot. Sesuaikan metode dengan sinyalnya:
- LoRA / adaptor - murah, cepat, dapat dibalik; ideal untuk penyulingan gaya dan format
- Penyetelan penuh - lebih berat; untuk perubahan perilaku mendalam pada model terbuka yang mumpuni
- Penyetelan preferensi (gaya DPO) - ketika Anda memiliki penilaian baik/buruk berpasangan, bukan penyelesaian acuan
Mulailah dengan metode paling ringan yang dituntut oleh sinyal. Adaptor bergaya LoRA mencakup sebagian besar kasus produksi dengan biaya yang jauh lebih rendah.
Protokol Sebelum Berkomitmen
Sebelum menjalankan pelatihan, tetapkan eksperimen agar hasilnya dapat ditafsirkan:
- Bekukan kumpulan evaluasi yang disisihkan dan tidak akan pernah dilihat model selama pelatihan
- Catat skor dasar terbaik yang hanya menggunakan instruksi pada kumpulan tersebut
- Tetapkan peningkatan target dan batas biaya sejak awal
- Tentukan pengembalian: jika model yang disetel tidak mengungguli dasar sebesar target, gunakan instruksi tersebut
Tanpa dasar dan target yang telah ditetapkan sebelumnya, Anda tidak dapat membuktikan bahwa penyetelan memberikan manfaat yang sepadan.
Menggabungkan Berbagai Sinyal
Gabungkan berbagai sinyal menjadi satu gerbang lanjut/tidak lanjut. Penyetelan hanya dilanjutkan ketika pemberian instruksi telah plateaued AND data sudah siap AND kesenjangannya adalah perilaku—bukan ketika satu sinyal saja muncul secara terpisah.
def should_fine_tune(plateaued, data_ready, gap_is_behavior,
spec_stable, has_eval_harness):
return all([
plateaued, # prompting stalled on frozen eval
data_ready, # enough clean, deduped examples
gap_is_behavior, # not a knowledge gap (else use RAG)
spec_stable, # task definition has settled
has_eval_harness, # can measure the lift
])
print(should_fine_tune(True, True, True, True, True)) # True -> proceedPemeriksaan Singkat
Pada kumpulan evaluasi yang dibekukan, kesalahan model bersifat acak dan tersebar di antara banyak jenis masukan yang berbeda, dan skor masih melonjak ketika Anda mengubah contoh. Apa yang ditunjukkan hal ini tentang kesiapan penyetelan?
Rangkuman
Lakukan penyetelan berdasarkan bukti, bukan intuisi. Sinyal yang sah: titik jenuh yang nyata dengan kesalahan sistematis, panjang instruksi yang telah menjadi produk, batas minimum latensi/biaya yang ketat, format yang khas, atau perilaku yang ditolak model dasar.
- Sinyal penyangkal: kesenjangan pengetahuan, spesifikasi yang berubah, data terlalu sedikit, kesalahan acak, atau tidak adanya kerangka evaluasi
- Lepasi gerbang kesiapan data sebelum pelatihan—kualitas membatasi hasil
- Pilih metode paling ringan (mulai dengan gaya LoRA) yang dituntut oleh sinyal
- Tetapkan sebelumnya evaluasi yang dibekukan, dasar, peningkatan target, dan pengembalian
- Lanjutkan hanya jika titik jenuh AND data siap AND kesenjangan perilaku semuanya terpenuhi
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Kapan Harus Melakukan Fine-Tuning” gratis?
Ya — teks lengkap “Kapan Harus Melakukan Fine-Tuning” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus AI Prompt Engineering, upgrade ke CoddyKit PRO. Kursus AI Prompt Engineering mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Kapan Harus Melakukan Fine-Tuning”?
Tanda-tanda bahwa pemberian prompt telah mencapai batasnya. Kamu berlatih AI Prompt Engineering dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai AI Prompt Engineering?
Tidak diperlukan pengalaman sebelumnya. AI Prompt Engineering di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Kapan Harus Melakukan Fine-Tuning” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran AI Prompt Engineering ini?
Ya. Setiap pelajaran AI Prompt Engineering menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Kapan Pemberian Prompt Sudah Cukup
- Kapan Harus Melakukan Fine-Tuning
- Hibrida: Prompt + Penyetelan Ringan
- Mengevaluasi Keputusan