Prompt Engineering Basics: A Practical Glossary Entry
Penjelasan yang jelas dan langsung tentang dasar-dasar prompt engineering, lengkap dengan contoh dan teknik yang bisa langsung Anda terapkan.
Prompt engineering adalah praktik menulis input teks agar model bahasa menghasilkan output yang benar-benar Anda inginkan. Ini berada di antara menulis dan debugging: Anda tidak coding dalam arti tradisional, namun Anda memang menguji hipotesis tentang bagaimana model menginterpretasikan instruksi dan melakukan iterasi ketika model salah.
Apa itu prompt sebenarnya
Prompt adalah semua yang Anda kirim ke model sebelum model menghasilkan respons — instruksi, konteks, contoh, dan pertanyaan atau tugas yang sesungguhnya. Kebanyakan model chat modern membagi ini menjadi role: system message (menetapkan perilaku dan batasan), user messages (permintaan yang sebenarnya), dan kadang-kadang assistant messages (percakapan sebelumnya atau contoh). Jika Anda menggunakan API seperti OpenAI atau Anthropic, Anda akan menetapkan ini secara eksplisit dalam kode. Jika Anda menggunakan chat interface, system prompt sering kali tersembunyi atau ditetapkan sekali di awal percakapan.
Mengapa pertanyaan yang sama mendapat jawaban berbeda
Model bahasa memprediksi token berikutnya berdasarkan semua yang mendahuluinya, termasuk phrasing Anda, urutan kata, bahkan punctuation. Tanya "Explain recursion" dan Anda akan dapat jawaban textbook yang umum. Tanya "Explain recursion to a junior developer who understands loops but not recursion, using a single Python example with a base case and recursive case" dan Anda akan dapat sesuatu yang jauh lebih berguna. Spesifisitas input Anda secara langsung membentuk spesifisitas output. Ini adalah insight inti yang pemula perlu tahu: model bukan membaca pikiran Anda, model melakukan pattern-matching terhadap kata-kata Anda.
Teknik inti yang patut dipelajari terlebih dulu
Zero-shot prompting berarti bertanya langsung tanpa contoh: "Write a regex that matches US phone numbers." Ini berfungsi baik untuk tugas yang umum dan terdefinisi dengan baik.
Few-shot prompting berarti memberikan model satu atau lebih contoh pola input/output yang Anda inginkan sebelum meminta model melanjutkan pola tersebut. Jika Anda ingin model mengklasifikasikan support tickets ke dalam kategori, menunjukkan tiga contoh berlabel terlebih dulu akan menghasilkan hasil yang lebih konsisten daripada hanya mendeskripsikan kategori dalam prosa.
Chain-of-thought prompting meminta model untuk bernalar langkah demi langkah sebelum memberikan jawaban final, sering kali dengan secara harfiah menambahkan "think step by step" atau dengan meminta model menunjukkan pekerjanya. Ini membantu dengan math, logic, dan tugas multi-langkah, meskipun juga meningkatkan token usage dan panjang respons.
Role prompting memberikan model sebuah persona — "You are a senior security engineer reviewing this code for vulnerabilities" — yang dapat menggeser tone, vocabulary, dan jenis detail yang diprioritaskan model. Ini tidak memberikan model kemampuan baru, namun memang menambatkan style output-nya.
Struktur lebih penting daripada kejelian
Pemula sering kali mengasumsikan prompt engineering adalah tentang menemukan magic phrase. Dalam praktik, struktur mengalahkan kejelian hampir setiap saat. Bagi prompt Anda menjadi bagian yang jelas: konteks, tugas, batasan, dan format. Sebagai contoh:
Context: You're reviewing a Python Flask app for a security audit.
Task: Identify SQL injection risks in the code below.
Constraints: Only flag issues in the /login and /search routes.
Format: Return a numbered list with the line number and a one-sentence explanation.
Jenis formatting eksplisit ini mengurangi ambiguitas dan membuat output lebih mudah diparsing secara programmatic jika Anda mengrantai prompts bersama dalam script.
Kesalahan umum di awal
Kesalahan yang sering terjadi adalah vagueness yang menyamar sebagai brevity — bertanya "make this better" tanpa mendefinisikan apa arti "better" (lebih cepat? lebih readable? lebih secure?). Yang lain adalah memenuhi satu prompt dengan lima tugas yang tidak terkait, yang cenderung menghasilkan jawaban dangkal untuk semua lima daripada jawaban solid untuk satu. Pemula juga lupa bahwa model tidak memiliki memory antara API calls terpisah kecuali Anda secara eksplisit melewatkan prior conversation history kembali, yang membuat orang bingung ketika membangun apa pun yang stateful.
Testing dan iterating seperti engineer
Perlakukan prompts seperti kode yang Anda version dan test, bukan teks one-off yang Anda buang. Simpan log variasi prompt dan output-nya, khususnya untuk apa pun yang akan Anda gunakan ulang dalam production, seperti customer support bot atau code review assistant. Perubahan wording kecil — "summarize" vs "summarize in exactly three bullet points" — dapat menghasilkan hasil yang meaningfully berbeda, dan satu-satunya cara untuk tahu apa yang bekerja untuk use case Anda adalah menjalankan perbandingan sendiri daripada mengasumsikan.
Di mana ini cocok dalam membangun hal nyata
Setelah prompts menjadi reliable, langkah berikutnya biasanya adalah programmatic use: memanggil API dengan temperature dan max_tokens settings yang disetel untuk tugas Anda, menambahkan retry logic untuk output yang malformed, dan memvalidasi responses sebelum mereka mencapai user. Di situlah prompt engineering mulai overlapping dengan regular software engineering discipline, dan ini adalah titik yang baik untuk pindah dari bereksperimen di chat window ke menulis scripts yang sebenarnya.
Jika Anda ingin melangkah lebih jauh, lihat segments Korra Studio tentang working with LLM APIs in Python dan tentang building small AI-powered tools from scratch.
Ditulis dengan bantuan AI, ditinjau dan dipublikasikan oleh Michal Pilch (CISSP), Korra Studio.
Ini satu catatan dari basis pengetahuan Korra Studio — platform ini memasangkan setiap topik dengan bimbingan privat.
Mulai gratisarrow_forward