Prompt Engineering
Prompt Engineering 09: Mengurangi Halusinasi
Halusinasi tidak bisa dihilangkan sepenuhnya, tetapi bisa dikurangi dan dideteksi. Pelajari cara membatasi jawaban pada sumber, mengizinkan 'tidak tahu', meminta kutipan, dan memverifikasi silang.

Di materi 01 kita melihat bahwa model bisa menghasilkan informasi yang terdengar meyakinkan tetapi salah. Untuk pekerjaan akademik dan profesional, ini risiko serius: referensi palsu di skripsi, angka keliru di laporan, atau fungsi pustaka yang tidak ada di kode. Halusinasi tidak bisa dihilangkan sepenuhnya dengan prompt, tetapi bisa dikurangi secara signifikan dan dibuat lebih mudah dideteksi.
Yang akan dipelajari
- Situasi yang memicu halusinasi
- Membatasi jawaban pada sumber yang diberikan
- Mengizinkan model berkata "tidak tahu"
- Meminta kutipan dan tingkat keyakinan
- Verifikasi silang dan kebiasaan memeriksa
Situasi yang memicu halusinasi
| Situasi | Contoh |
|---|---|
| Meminta detail spesifik tanpa sumber | DOI, nomor halaman, angka statistik, kutipan langsung |
| Topik langka atau sangat baru | Paper yang baru terbit, kebijakan terbaru |
| Prompt yang mengandung asumsi salah | "Jelaskan kenapa Einstein menang Nobel atas teori relativitas" (ia menang untuk efek fotolistrik) |
| Tekanan untuk selalu menjawab | "Pasti ada jawabannya, sebutkan!" |
| Pertanyaan tentang API atau pustaka kode | Nama fungsi atau parameter yang terdengar masuk akal tetapi tidak ada |
Contoh ketiga penting: model cenderung mengikuti premis prompt. Jika pertanyaanmu mengandung asumsi salah, model bisa ikut membangun penjelasan di atasnya.
Teknik 1: batasi pada sumber yang diberikan
Cara paling efektif adalah memberikan sumbernya dan meminta model menjawab hanya dari situ (teknik grounding).
Rawan halusinasi:
Apa hasil utama penelitian Ronneberger dkk. tentang U-Net?
Lebih aman:
<abstrak>
[tempel abstrak paper U-Net]
</abstrak>
Berdasarkan abstrak di atas saja, apa hasil utama penelitian ini?
Jangan menambahkan informasi dari pengetahuanmu sendiri.
Teknik 2: izinkan "tidak tahu"
Model cenderung berusaha membantu dengan selalu memberi jawaban. Izin eksplisit untuk tidak menjawab mengurangi tekanan itu:
Jika informasinya tidak ada di dokumen atau kamu tidak yakin,
jawab "Tidak ditemukan di sumber" dan jangan menebak.
Uji instruksi ini dengan pertanyaan yang memang tidak ada jawabannya di sumber. Jika model tetap menjawab, perkuat instruksinya.
Teknik 3: minta kutipan dan rujukan
Seperti di materi 08, minta kutipan apa adanya sebelum atau bersama jawaban:
Untuk setiap klaim di jawabanmu, sertakan kutipan pendukung
dari dokumen dalam tanda kutip. Hapus klaim yang tidak punya kutipan.
Instruksi "hapus klaim yang tidak punya kutipan" membuat model memeriksa ulang jawabannya sendiri.
Teknik 4: pisahkan fakta dan dugaan
Jika kamu memang butuh pendapat atau analisis model, minta ia menandai mana yang dari sumber dan mana yang inferensi:
Tandai setiap poin dengan:
[Sumber] jika tertulis langsung di dokumen,
[Inferensi] jika kesimpulanmu dari dokumen,
[Umum] jika dari pengetahuan umum di luar dokumen.
Teknik 5: periksa premis
Untuk pertanyaan yang mungkin mengandung asumsi keliru:
Sebelum menjawab, periksa apakah ada asumsi di pertanyaan ini yang
keliru. Jika ada, koreksi dulu asumsinya.
Verifikasi silang
Prompt mengurangi risiko, tetapi verifikasi tetap tanggung jawabmu:
| Jenis keluaran | Cara memverifikasi |
|---|---|
| Referensi/paper | Cari judul di Google Scholar; buka DOI di https://doi.org/ |
| Angka dan statistik | Cari sumber primer (laporan resmi, paper) |
| Kutipan dari dokumen | Ctrl+F di dokumen asli |
| Kode dan API | Jalankan; cek dokumentasi resmi pustaka |
| Fakta hukum/medis | Cek ke sumber resmi atau ahli; jangan andalkan model |
Verifikasi silang dengan model lain bisa membantu menemukan perbedaan, tetapi dua model bisa sama-sama salah. Sumber primer tetap rujukan utama.
Coba sendiri
Uji teknik "izinkan tidak tahu":
<teks>
[tempel satu paragraf dari artikel apa pun]
</teks>
Jawab pertanyaan berikut hanya berdasarkan teks di atas.
Jika teks tidak memuat jawabannya, tulis "Tidak ditemukan di teks".
1. [pertanyaan yang jawabannya ada di teks]
2. [pertanyaan yang jawabannya TIDAK ada di teks]
Model yang baik akan menjawab nomor 1 dan menolak nomor 2.
Kesalahan yang sering terjadi
| Kesalahan | Akibat |
|---|---|
| Meminta daftar referensi tanpa memberi sumber | Referensi palsu yang tampak meyakinkan |
| Pertanyaan berisi premis salah | Model membangun penjelasan di atas premis yang salah |
| Percaya karena jawabannya rinci dan percaya diri | Detail tidak menjamin kebenaran |
| Hanya memverifikasi dengan model lain | Kedua model bisa sama-sama salah |
| Mengira mode pencarian web menghilangkan halusinasi | Model tetap bisa salah membaca atau salah mengutip sumber; klik dan periksa tautannya |
Latihan
- Tulis ulang prompt ini agar lebih tahan halusinasi: "Berikan 10 referensi jurnal tentang deteksi penyakit daun padi dengan deep learning untuk bab 2 skripsi saya."
- Apa masalah prompt ini, dan bagaimana memperbaikinya: "Kenapa Python lebih cepat daripada C untuk komputasi numerik?"
- Rancang prompt untuk memeriksa sebuah draf artikel: model harus menandai klaim yang perlu diverifikasi.
Contoh jawaban
Latihan 1
Pendekatan yang lebih aman memakai dua langkah:
Saya menyusun bab 2 skripsi tentang deteksi penyakit daun padi dengan
deep learning. Jangan menuliskan judul paper, nama penulis, atau DOI.
Bantu saya dengan:
1. 10 kata kunci/kombinasi kata kunci pencarian (Indonesia dan Inggris)
2. Subtopik yang biasanya dibahas di tinjauan pustaka topik ini
3. Kriteria memilih paper yang relevan dan berkualitas
Setelah menemukan paper sendiri di Google Scholar, tempel abstraknya dan minta bantuan merangkum atau membandingkan (materi 10).
Alasannya: model memang tidak bisa diandalkan untuk menyebut referensi spesifik dari ingatan. Prompt ini memakai model untuk hal yang ia kuasai (istilah dan struktur topik), sedangkan pencarian referensi dilakukan di basis data yang nyata.
Latihan 2
Prompt ini mengandung premis salah: untuk komputasi numerik murni, C umumnya lebih cepat; Python cepat karena pustaka seperti NumPy yang inti komputasinya ditulis dalam C. Perbaikannya:
Bandingkan kecepatan Python dan C untuk komputasi numerik. Jelaskan juga
kenapa pustaka Python seperti NumPy bisa cepat. Jika ada anggapan umum
yang keliru tentang topik ini, luruskan.
Latihan 3
Baca draf berikut. Buat tabel klaim yang perlu diverifikasi dengan kolom:
Kalimat | Jenis klaim (angka/fakta/kutipan/referensi) | Kenapa perlu dicek | Saran sumber verifikasi.
Jangan menilai benar atau salahnya klaim; cukup tandai klaim yang
bergantung pada fakta di luar draf.
<draf>...</draf>
Alasannya: model diminta menandai, bukan memutuskan benar-salah (yang justru bisa memicu halusinasi baru), sehingga hasilnya menjadi daftar periksa untuk verifikasi manual.
Diskusi (0)
Kami menyimpan nama (opsional), komentar, dan hash teknis (bukan alamat IP asli) untuk mencegah spam. Cookie fungsional dipakai agar Anda dapat mengedit atau menghapus komentar sendiri dari browser ini. Untuk permintaan penghapusan, gunakan halaman kontak.
Belum ada komentar. Mulai diskusinya.