Bab 1: Apa itu Prompt Engineering¶
Prompt yang sama bisa dijalankan 100 kali, hasilnya beda-beda. Tugas prompt engineer: bikin variasi itu di-minimize sampai konsisten dapat hasil yang berguna.
Tujuan Bab 1:
- Paham apa itu prompt, LLM, dan kenapa prompt engineering ada
- Tulis prompt pertamamu yang berstruktur
- Mengerti perbedaan prompt jelek vs prompt baik
- Eksperimen langsung di ChatGPT/Claude
1.1. Apa itu Prompt?¶
Prompt = teks input yang kamu kasih ke AI. Itu saja, sederhana.
Tapi prompt yang bagus adalah teks yang menghasilkan output konsisten dan berguna. Bandingkan:
Prompt jelek:
Prompt baik:
Tulis email follow-up ke client yang belum balas proposal saya selama 2 minggu.
Konteks:
- Proposal awal dikirim 1 Mei 2026
- Client = perusahaan F&B mid-size, kontak = Pak Budi (CMO)
- Hubungan baik, tidak mau pushy
- Tujuan: dapat update tanpa terdengar memaksa
Style:
- Formal tapi hangat
- Max 150 kata
- Tanpa subject line yang generic seperti "Following up"
Output: email lengkap, ready to send.
Kedua prompt minta hal yang sama (email). Tapi yang kedua dapat output yang bisa langsung pakai. Yang pertama dapat output generic yang masih harus diedit banyak.
1.2. Apa itu LLM?¶
LLM (Large Language Model) = AI yang dilatih untuk memprediksi kata berikutnya.
Itu intinya. ChatGPT, Claude, Gemini — semuanya prediktor kata berikutnya yang sangat canggih.
flowchart LR
Input["Input prompt:<br/>'Hari ini cuaca'"]
LLM["🧠 LLM<br/>(prediktor kata)"]
Output["Output prediksi:<br/>'cerah dan...'<br/>'mendung...'<br/>'sangat panas...'"]
Input --> LLM
LLM --> Output
style Input fill:#1a1a1a,stroke:#6366f1,color:#fafafa
style LLM fill:#1a1a1a,stroke:#f59e0b,color:#fafafa
style Output fill:#1a1a1a,stroke:#10b981,color:#fafafa
Cara baca diagram
Diagram ini menjelaskan mekanisme dasar LLM — yang sering disalahpahami pemula.
LLM bukan database yang menyimpan jawaban. LLM adalah mesin probabilitas yang dilatih dengan jutaan teks dari internet, buku, kode, dll.
Saat kamu kasih prompt:
- LLM membaca semua teks yang kamu input
- Berdasarkan pola yang dia pelajari, dia menebak: "kata apa yang paling probable muncul setelah ini?"
- Dia output kata itu, lalu proses ulang dengan input + kata baru, prediksi kata selanjutnya
- Berulang sampai "selesai" (model decide stop)
Implikasi penting:
- LLM tidak "tahu" fakta — dia tahu pola teks. Itulah kenapa LLM bisa halusinasi (mengarang yang plausible tapi salah).
- LLM probabilistic — prompt yang sama, output bisa beda tiap kali (kecuali temperature=0).
- LLM bias terhadap pola umum. Kalau kamu minta "puisi tentang sunset", outputnya cenderung mainstream — kecuali kamu prompt agar berbeda.
Kunci: prompt engineering adalah seni mengarahkan probabilitas model ke arah output yang kamu inginkan.
1.3. Eksperimen Pertama¶
Buka ChatGPT atau Claude sekarang. Coba tiga prompt ini, perhatikan hasilnya:
Eksperimen 1: Vague Prompt¶
Output yang biasanya kamu dapat: paragraf umum tentang sifat kucing, sejarah domestifikasi, breed populer. Generic, panjang, tidak fokus.
Eksperimen 2: Specific Prompt¶
Tulis 3 paragraf tentang kucing:
1. Kenapa orang Mesir kuno memuja kucing
2. Mengapa kucing peliharaan modern mendengkur
3. Satu fakta unik yang jarang diketahui
Format: paragraf pendek (3-4 kalimat each), tone natural seperti artikel majalah.
Output: tiga paragraf terstruktur, fokus, length controlled. Jauh lebih useful.
Eksperimen 3: With Constraint¶
Sebagai veterinarian Indonesia dengan 15 tahun pengalaman, jelaskan ke pemilik kucing pemula:
5 hal paling penting tentang merawat kitten yang baru pertama kali punya.
Pakai bahasa yang relatable untuk Indonesian audience (bukan terjemahan langsung dari sumber Inggris). Sertakan rekomendasi makanan brand yang available di Indonesia.
Format:
- Numbered list
- Tiap point: 1 kalimat aturan + 2 kalimat penjelasan
- Total ~250 kata
Output: kontekstual, otoritatif, actionable. Inilah hasil dari prompt engineering.
1.4. Anatomi Prompt yang Baik¶
Dari 3 eksperimen di atas, kita bisa simpulkan 5 elemen prompt yang baik:
1. Konteks — Siapa, kapan, di mana¶
2. Task — Apa yang dikerjakan¶
3. Constraint — Batasan yang harus dipatuhi¶
4. Format Output — Bentuk hasil yang diinginkan¶
5. Examples (kalau perlu) — Contoh yang menunjukkan style¶
Tidak semua prompt butuh kelima elemen. Tapi makin kompleks task, makin kritis kelimanya.
1.5. Common Mistake Pemula¶
Yang sering bikin prompt jadi jelek
-
Terlalu pendek. "Buatin presentasi" → tidak ada konteks, tidak ada constraint. AI tebak-tebakan.
-
Tidak spesifik. "Buatin yang menarik" → "menarik" itu subjektif. Definisikan: "menarik berarti pembaca tertawa minimal sekali, dan ada twist di akhir."
-
Asumsi AI tahu konteks. "Lanjutkan email tadi" → AI tidak ingat conversation kemarin (kecuali dalam satu chat session). Selalu kasih konteks ulang.
-
Mau banyak hal sekaligus dalam 1 prompt. "Tulis email + cek grammar + translate ke Inggris + buat versi formal" → AI confused, hasil setengah-setengah. Pecah jadi 4 prompt terpisah.
-
Tidak kasih example saat butuh style spesifik. "Tulis dengan tone yang fun" → ambigu. Kasih contoh: "tone-nya seperti caption Instagram brand fashion lokal — playful tapi smart."
1.6. Iterasi — Inti dari Prompt Engineering¶
Prompt engineering jarang sekali first-shot. Polanya:
- Tulis prompt v1
- Lihat output
- Identifikasi gap (apa yang kurang/salah?)
- Refine prompt jadi v2
- Lihat output lagi
- Ulangi sampai output cukup
Contoh iterasi:
v1: "Tulis email penolakan kerja"
output: terlalu generic, tidak professional
v2: "Tulis email penolakan offer kerja, profesional"
output: lebih baik, tapi tone-nya kaku
v3: "Tulis email penolakan offer kerja dari recruiter di Tokopedia.
Konteks: kamu memutuskan ambil offer dari company lain.
Tone: profesional tapi hangat, tidak burning bridges.
Length: 100 kata."
output: ✓
3 iterasi, dari output generic sampai email yang ready-to-send.
1.7. Latihan¶
1.1 — Compare Prompts¶
Pakai prompt vague vs specific untuk task berikut. Jalankan keduanya di ChatGPT/Claude, bandingkan output:
- Generate 5 ide nama brand kopi
- Tulis caption Instagram untuk launch produk
- Summary artikel berita teknologi
1.2 — Iterate¶
Pilih satu task praktis dari pekerjaanmu (misalnya "tulis report mingguan"). Tulis prompt v1. Lihat output. Refine sampai v3. Catat apa yang berubah di tiap iterasi.
1.3 — Anatomy Practice¶
Tulis prompt yang lengkap (semua 5 elemen) untuk task: "Generate ide konten YouTube untuk channel cooking Indonesia". Kasih konteks, task, constraint, format, dan example.
1.4 — Find a Bad Prompt¶
Cari prompt jelek yang pernah kamu pakai sebelumnya (atau yang biasa kamu lihat orang pakai). Tulis ulang jadi prompt baik dengan 5 elemen. Bandingkan output.
5 Elemen Prompt yang Baik¶
- Konteks — siapa, di mana, kapan
- Task — apa yang dikerjakan
- Constraint — batasan (length, tone, dll)
- Format — bentuk output
- Examples — contoh style (kalau butuh)
Pattern Template¶
[KONTEKS]
Aku [siapa kamu], lagi [situasi].
[TASK]
Bantu [apa yang dilakukan].
[CONSTRAINT]
- [batasan 1]
- [batasan 2]
[FORMAT]
Output: [bentuk yang diinginkan]
Common Mistake¶
- ❌ Terlalu pendek
- ❌ Tidak spesifik
- ❌ Asumsi AI tahu konteks
- ❌ Mau banyak hal di 1 prompt
- ❌ Tidak kasih example
Iterasi¶
v1 → output → identify gap → v2 → output → ... Iterasi adalah norma, bukan failure.