Prompt Engineering
Prompt Engineering 04: Belajar dari Contoh (Few-shot)
Kadang menunjukkan lebih efektif daripada menjelaskan. Pelajari zero-shot, one-shot, dan few-shot, cara memilih contoh yang beragam, serta jebakan saat model terlalu meniru contoh.

Ada hal yang sulit dijelaskan dengan kata-kata tetapi mudah ditunjukkan: gaya penulisan, format label, atau cara mengubah data mentah menjadi kalimat. Untuk hal seperti ini, memberi contoh di dalam prompt sering jauh lebih efektif daripada menambah paragraf instruksi.
Yang akan dipelajari
- Zero-shot, one-shot, dan few-shot
- Kapan contoh lebih efektif daripada instruksi
- Cara memilih contoh yang baik
- Jebakan: model terlalu meniru contoh
- Menandai contoh agar tidak tercampur dengan input
Zero-, one-, dan few-shot
| Istilah | Artinya | Kapan cocok |
|---|---|---|
| Zero-shot | Hanya instruksi, tanpa contoh | Tugas umum yang jelas: merangkum, menerjemahkan, menjelaskan |
| One-shot | Satu contoh | Format atau gaya sederhana |
| Few-shot | Beberapa contoh (biasanya 2–5) | Klasifikasi, gaya khas, format yang tidak umum, kasus yang punya pengecualian |
Kata "shot" berarti satu contoh pasangan input dan output yang ditunjukkan ke model.
Contoh: mengklasifikasi masukan mahasiswa
Zero-shot (tanpa contoh):
Klasifikasikan masukan mahasiswa berikut ke kategori:
materi, dosen, fasilitas, atau administrasi.
Masukan: "Proyektor di ruang 3.2 sering mati di tengah kuliah."
Untuk masukan yang jelas, ini sudah cukup. Masalah muncul pada kasus ambigu: apakah "Slide dosen tidak diunggah ke LMS" termasuk dosen atau materi? Model akan menebak, dan tebakannya bisa berbeda-beda.
Few-shot (dengan contoh yang menetapkan aturan):
Klasifikasikan masukan mahasiswa ke salah satu kategori:
materi, dosen, fasilitas, administrasi.
Jawab hanya dengan nama kategori.
Masukan: "Contoh soal di modul tidak sesuai dengan yang keluar di UTS."
Kategori: materi
Masukan: "Slide tidak pernah diunggah ke LMS setelah kuliah."
Kategori: dosen
Masukan: "Wi-Fi perpustakaan tidak bisa dipakai sejak minggu lalu."
Kategori: fasilitas
Masukan: "Jadwal KRS bentrok dengan jadwal praktikum."
Kategori: administrasi
Masukan: "Proyektor di ruang 3.2 sering mati di tengah kuliah."
Kategori:
Contoh kedua menetapkan keputusan untuk kasus ambigu: urusan unggah slide dianggap tanggung jawab dosen. Aturan ini sulit dijelaskan dengan singkat, tetapi jelas dari contoh. Format jawaban ("hanya nama kategori") juga ikut ditiru.
Memilih contoh yang baik
- Beragam. Contoh harus mewakili variasi input yang nyata: panjang dan pendek, formal dan santai, kasus mudah dan kasus sulit.
- Mencakup kasus batas. Sertakan contoh untuk kasus yang paling sering membingungkan.
- Seimbang. Kalau tiga dari empat contoh berlabel "positif", model bisa cenderung menjawab "positif".
- Benar. Contoh yang salah akan ditiru dengan setia.
- Mirip dengan input sebenarnya. Contoh tentang film kurang membantu untuk mengklasifikasi masukan akademik.
Jebakan: model terlalu meniru contoh
Model sering meniru lebih dari yang kamu maksud. Jika semua contoh ringkasan dimulai dengan "Penelitian ini…", hasil ringkasanmu juga akan selalu dimulai dengan kalimat itu. Jika semua contoh panjangnya dua kalimat, hasil akan dua kalimat walaupun input-nya sangat panjang.
Cara mengatasinya:
- Variasikan pembuka, panjang, dan gaya di antara contoh.
- Tulis instruksi tentang hal yang tidak boleh ditiru: "Contoh di bawah hanya menunjukkan format, bukan isi atau panjangnya."
- Untuk tugas kreatif, kadang lebih baik memakai deskripsi gaya daripada contoh lengkap.
Menandai contoh dengan jelas
Saat contoh dan input bercampur, model bisa bingung mana contoh dan mana tugas. Gunakan pembatas yang konsisten, misalnya tag:
Ubah catatan rapat menjadi daftar tindak lanjut dengan format
"- [Nama]: [tugas] (tenggat)".
<contoh>
<catatan>Budi akan cek server lab sebelum Jumat. Sari menyiapkan slide seminar.</catatan>
<hasil>
- Budi: cek server lab (Jumat)
- Sari: siapkan slide seminar (tidak disebutkan)
</hasil>
</contoh>
<catatan>
[tempel catatan rapat di sini]
</catatan>
Tag ini bukan sintaks khusus; model memahaminya sebagai penanda struktur. Kamu bebas memilih nama tag, asal konsisten.
Coba sendiri
Kumpulkan tiga sampai lima contoh nyata dari pekerjaanmu (misalnya judul skripsi yang ingin diubah menjadi bahasa Inggris dengan gaya tertentu), lalu susun dengan pola:
[Instruksi singkat + format jawaban]
<contoh>
<input>…</input>
<output>…</output>
</contoh>
(ulangi untuk contoh lain)
<input>
[input baru]
</input>
Jalankan dengan dan tanpa contoh, lalu bandingkan konsistensi hasilnya.
Catatan bahasa Inggris
Contoh sebaiknya memakai bahasa yang sama dengan input dan output yang kamu harapkan. Kalau contohnya berbahasa Inggris tetapi input-nya berbahasa Indonesia, model bisa menjawab dalam bahasa Inggris atau mencampur keduanya. Jika memang ingin jawaban dalam bahasa lain, katakan secara eksplisit.
Kesalahan yang sering terjadi
| Kesalahan | Akibat |
|---|---|
| Semua contoh mirip | Model gagal pada input yang berbeda dari contoh |
| Label contoh tidak seimbang | Model cenderung memilih label yang paling sering muncul |
| Contoh mengandung kesalahan | Kesalahan ikut ditiru |
| Contoh dan input tidak dibedakan | Model ikut mengolah contoh, atau mengira input adalah contoh |
| Terlalu banyak contoh panjang | Konteks penuh; biaya naik; instruksi utama tenggelam |
Latihan
-
Buat prompt few-shot untuk mengubah kalimat informal menjadi kalimat formal untuk email ke dosen. Gunakan tiga contoh.
-
Prompt few-shot berikut menghasilkan ringkasan yang selalu dimulai dengan "Artikel ini membahas". Apa penyebabnya dan bagaimana memperbaikinya?
Contoh 1: Artikel ini membahas dampak AI pada pendidikan... Contoh 2: Artikel ini membahas penggunaan drone untuk pertanian... Contoh 3: Artikel ini membahas keamanan data di rumah sakit... -
Kapan kamu sebaiknya tidak memakai few-shot? Sebutkan dua situasi.
Contoh jawaban
Latihan 1
Ubah kalimat informal menjadi kalimat formal yang sopan untuk email kepada dosen.
Pertahankan maksud asli. Jawab hanya dengan kalimat hasil.
<contoh>
<informal>Pak, tugasnya dikumpul kapan ya?</informal>
<formal>Mohon maaf, Bapak, kapan batas waktu pengumpulan tugasnya?</formal>
</contoh>
<contoh>
<informal>Bu, saya nggak bisa masuk besok soalnya sakit.</informal>
<formal>Ibu, saya mohon izin tidak mengikuti perkuliahan besok karena sedang sakit.</formal>
</contoh>
<contoh>
<informal>Pak, file revisi skripsi udah saya kirim lewat drive, tolong dicek ya kalau sempat.</informal>
<formal>Bapak, saya telah mengirimkan berkas revisi skripsi melalui Google Drive. Mohon kesediaan Bapak untuk memeriksanya ketika ada waktu.</formal>
</contoh>
<informal>[kalimat baru]</informal>
Alasannya: tiga contoh punya panjang dan situasi yang berbeda (pertanyaan, izin, permohonan), sehingga model belajar pola "formal dan sopan", bukan satu kalimat template.
Latihan 2
Penyebabnya: ketiga contoh dimulai dengan frasa yang sama, sehingga model menganggapnya bagian dari format. Perbaikannya: variasikan pembuka contoh (misalnya "Dengan data 1.200 sekolah, penulis…", "Drone multispektral ternyata…", "Kebocoran data rumah sakit…") dan tambahkan instruksi "Variasikan kalimat pembuka; jangan memulai dengan 'Artikel ini'."
Latihan 3
Dua situasi yang umum: (1) tugas umum yang sudah jelas dengan instruksi, misalnya menerjemahkan paragraf, sehingga contoh hanya menambah panjang prompt; (2) tugas kreatif yang membutuhkan variasi, karena contoh cenderung membuat hasil seragam. Situasi lain: kamu tidak punya contoh yang benar-benar representatif. Contoh yang buruk lebih merugikan daripada tanpa contoh.
Discussion (0)
We store your optional name, your comment, and technical hashes (not your raw IP address) to prevent spam. A functional cookie lets you edit or delete your own comments from this browser. To request deletion, use the contact page.
No comments yet. Start the discussion.