Evaluasi Prompt
Mengukur kualitas prompt secara sistematis: test set, LLM-as-judge, dan metrik yang bermakna.
Dari "Kayaknya Bagus" ke "Terbukti Bagus"
"Kok prompt baruku kayaknya lebih bagus ya?" Kayaknya bukan metrik. Evaluasi prompt (evals) adalah praktik mengukur kualitas prompt/output AI secara sistematis dan berulang. Di industri, ini yang membedakan tim AI amatir dan profesional: amatir mengandalkan kesan ("coba 2x, bagus!"), profesional punya test set dan angka.
Kamu sudah mempraktikkan versi manualnya di modul prompt-versioning (uji prompt lama vs baru dengan set uji tetap). Modul ini menaikkan ke versi sistematis: merancang eval yang baik, teknik LLM-as-judge, dan metrik yang tidak menipu.
Contoh 1: Merancang Eval yang Baik (Praktik)
Skenario: kamu punya prompt "ubah keluhan user jadi tiket support rapi" yang dipakai setiap hari. Rancang eval-nya:
Langkah 1, kumpulkan 20-30 contoh nyata (bukan buatan): keluhan asli + output ideal yang kamu tulis manual. Ini "kunci jawaban". Pisahkan: 20 untuk pengembangan, 10 untuk uji final (jangan intip saat iterasi!).
Langkah 2, tentukan kriteria penilaian yang konkret:
- Format: apakah ada field Judul/Prioritas/Langkah? (ya/tidak, objektif)
- Prioritas benar: cocok dengan label manual? (cocok/tidak)
- Tidak mengarang: semua info di output ada di input? (ya/tidak)
Hindari kriteria kabur seperti "bagus" atau "natural". Kriteria harus bisa dinilai YA/TIDAK oleh orang lain dengan konsisten.
Langkah 3, jalankan dan catat skor: "v2.1: format 20/20, prioritas 17/20, tidak mengarang 19/20." Sekarang kamu punya BASELINE. Setiap perubahan prompt diuji ulang ke set yang sama: naik atau turun, datanya bicara.
Contoh 2: LLM-as-Judge (Teknik Industri)
Menilai 30 output manual itu melelahkan. Teknik industri: pakai model lain sebagai juri (LLM-as-judge).
Prompt juri: "Kamu adalah penilai kualitas. Berikut KRITERIA: [kriteria konkret]. Berikut INPUT asli, OUTPUT yang dinilai, dan KUNCI JAWABAN. Nilai tiap kriteria YA/TIDAK dengan 1 kalimat alasan. Jangan menilai hal di luar kriteria. Input: [...] Output: [...] Kunci: [...]"
Kapan LLM-judge bisa dipercaya: kriteria objektif dan sempit (format, ada/tidaknya info, kepatuhan instruksi). Kapan tidak: penilaian subjektif ("tulisannya bagus") atau yang butuh pengetahuan domain dalam. Validasi juri: ambil 10 sampel, nilai manual sendiri, bandingkan dengan nilai juri. Kalau cocok >80%, juri cukup andal untuk screening; untuk keputusan final tetap sampling manual.
Catatan teknis: Ekosistem eval profesional: dataset versi (test set di Git), runner otomatis (jalankan prompt ke semua sampel tiap ada perubahan, simpan hasil), dan tracking (grafik skor per versi prompt dari waktu ke waktu). Tools: LangSmith, Braintrust, atau skrip Python sederhana + spreadsheet untuk skala kecil. Metrik lanjutan: untuk tugas terbuka, bandingkan dengan pairwise ("output A vs B, mana lebih baik menurut kriteria?") yang lebih andal daripada skor absolut. Dan prinsip terpenting: eval harus merepresentasikan pemakaian nyata. Eval dengan 100 soal buatan yang tidak mirip input asli = angka cantik yang tidak berarti. Sampel dari data produksi (dianonimkan) selalu lebih baik daripada soal karangan.
Kesalahan Umum
- Eval sekali lalu dilupakan. Model di-update, prompt diubah, data berubah: eval harus dijalankan ULANG berkala. Eval yang tidak dijalankan = pajangan.
- Test set bocor ke prompt. Menyelipkan contoh dari test set ke dalam prompt/few-shot = "mencontek": skor tinggi palsu. Jaga test set final tetap rahasia dari proses pengembangan.
- Terlalu banyak kriteria kabur. 10 kriteria subjektif = penilaian tidak konsisten antar penilai. Sedikit kriteria objektif > banyak kriteria kabur.
- Mengoptimasi skor, bukan kualitas nyata. "Skor eval 95% tapi user komplain." Artinya eval-mu tidak merepresentasikan kebutuhan user. Perbaiki eval-nya, bukan prompt-nya.
Rangkuman
Evaluasi prompt = ukur, jangan kira-kira. Bangun dari: set uji nyata (dipisah dev vs final), kriteria YA/TIDAK yang konkret, baseline skor, dan uji ulang tiap perubahan. LLM-as-judge mempercepat penilaian untuk kriteria objektif (validasi dulu akurasinya). Ini praktik yang membedakan profesional AI dari amatir.
Tantangan
Eval Mini untuk Satu Prompt
Pilih satu prompt yang sering kamu pakai. Buat: (1) 10 contoh uji + kunci jawaban, (2) 3 kriteria YA/TIDAK yang konkret, (3) jalankan dan catat skor baseline. Lalu ubah 1 hal di prompt-mu dan uji ulang: skor naik atau turun? Tulis keputusanmu berdasarkan data.