Menu

Prompt Sistem (System Prompt): Arti dan Contohnya

Prompt sistem adalah kumpulan instruksi tetap yang berlaku untuk seluruh percakapan dengan model AI. Pelajari di mana letaknya, apa yang perlu ditulis di dalamnya, dan apa bedanya dengan pesan pengguna.

Setiap prompt di bawah bisa diedit: ubah, lalu buka di ChatGPT, Claude, atau aplikasi AI lain.

Prompt sistem (system prompt) adalah kumpulan instruksi yang diterima model AI sebelum percakapan dimulai, dan berlaku untuk setiap pesan yang menyusul. Prompt ini menetapkan peran model, pembacanya, aturannya, dan format jawaban bawaannya, jadi kamu tidak perlu mengulanginya di setiap pesan. Pengguna menulis prompt-promptnya; prompt sistem membentuk cara model menjawab semuanya.

Setiap aplikasi chat sudah memakainya. Saat kamu membuka ChatGPT, Claude, atau Gemini, modelnya sudah punya instruksi dari perusahaan di baliknya, yang tidak ditampilkan di jendela chat. Saat developer membangun aplikasi di atas sebuah model, prompt sistem adalah tempat mereka mengubah model umum menjadi tutor coding, asisten dukungan pelanggan, atau penulis pesan commit.

Apa yang dilakukan prompt sistem

Input model dalam sebuah chat punya struktur: prompt sistem lebih dulu, lalu percakapan berupa pesan pengguna dan asisten yang bergantian. Prompt sistem berada di atas seluruh percakapan, jadi prompt ini selalu ada di depan model untuk setiap balasan, sepanjang apa pun chat-nya.

Posisi itu membuatnya jadi tempat yang tepat untuk apa pun yang harus selalu berlaku: kepada siapa model berbicara, apa yang boleh dan tidak boleh dilakukannya, seperti apa jawaban seharusnya secara bawaan. Model juga dilatih untuk lebih mengutamakannya daripada pesan pengguna ketika keduanya bertentangan. Itu kecenderungan, bukan kunci. Pengguna yang gigih kadang bisa membujuk model untuk mengabaikan prompt sistemnya, dan itulah kenapa prompt sistem tidak boleh menjadi satu-satunya pengamanmu.

Prompt sistem vs pesan pengguna

Prompt sistemPesan pengguna
Siapa yang menulisDeveloper, atau kamu di pengaturan aplikasiKamu, di kotak chat
CakupanSeluruh percakapanSatu permintaan
Isi umumnyaPeran, pembaca, aturan, fakta, format bawaanTugas dan materinya
Kapan berubahJarangSetiap giliran
Bobot saat bertentanganBiasanya lebih tinggiBiasanya lebih rendah

Tes yang berguna: kalau sebuah kalimat berlaku untuk setiap pesan di chat itu, tempatnya di prompt sistem. Kalau kalimat itu tentang permintaan yang satu ini, tempatnya di pesan pengguna. "Jawab dalam kurang dari 100 kata" bisa ditaruh di mana saja; "ringkas email di bawah ini" selalu masuk ke pesan pengguna.

Di mana mengatur prompt sistem

Di API, prompt sistem adalah input yang terpisah. Di library Python milik OpenAI, prompt sistem adalah pesan pertama dalam list, dengan role system. Dokumentasi OpenAI juga memakai nama developer message untuk jenis instruksi yang sama di model-model yang lebih baru.

from openai import OpenAI

client = OpenAI()
MODEL = "your-model-id"  # e.g. from your provider's model list

response = client.chat.completions.create(
    model=MODEL,
    messages=[
        {"role": "system", "content": "You are a patient Python tutor. Give hints, not full solutions."},
        {"role": "user", "content": "Why does my loop stop at 9?"},
    ],
)
print(response.choices[0].message.content)

Di library Python milik Anthropic, prompt sistem adalah parameter system di tingkat teratas, dan list messages hanya berisi percakapannya:

import anthropic

client = anthropic.Anthropic()
MODEL = "your-model-id"  # e.g. from your provider's model list

message = client.messages.create(
    model=MODEL,
    max_tokens=500,
    system="You are a patient Python tutor. Give hints, not full solutions.",
    messages=[{"role": "user", "content": "Why does my loop stop at 9?"}],
)
print(message.content[0].text)

API Gemini dari Google menyebutnya system instruction. Namanya berbeda, idenya sama.

Di aplikasi chat, kamu tidak mendapat akses ke kolom system yang mentah, karena aplikasinya sudah punya sendiri. Yang kamu dapat adalah tempat untuk menambahkan instruksi tetap yang akan disertakan oleh aplikasi. Di ChatGPT, tempatnya adalah instruksi kustom, instruksi proyek, dan instruksi dari GPT kustom. Di Claude, tempatnya adalah instruksi proyek dan preferensi di profilmu. Di Gemini, tempatnya adalah instruksi dari sebuah Gem. Bagaimana tepatnya setiap aplikasi menggabungkan teksmu dengan instruksinya sendiri tidak didokumentasikan sepenuhnya, tapi dalam praktiknya semua itu berperilaku seperti prompt sistem yang kamu pakai bersama aplikasinya.

Apa yang perlu ditulis di prompt sistem

  • Peran dan pembaca. "Kamu adalah tutor untuk siswa di bulan pertama mereka belajar pemrograman" menentukan kosakata dan tingkat setiap jawaban. Role prompting membahas apa yang diubah oleh sebuah peran dan apa yang tidak.
  • Aturan yang berlaku di setiap giliran. Apa yang harus selalu atau tidak boleh dilakukan model: memberi petunjuk alih-alih solusi lengkap, hanya menjawab pertanyaan tentang produk, membalas dalam bahasa pengguna.
  • Apa yang harus dilakukan saat ragu. "Kalau jawabannya tidak ada di fakta di bawah, katakan bahwa kamu tidak tahu" lebih ampuh mencegah jawaban karangan daripada "jawablah dengan akurat" yang umum.
  • Fakta yang dibutuhkan model. Detail produk, kebijakan, tanggal hari ini, paket langganan pengguna. Model tidak bisa menjawab pertanyaan tentang aplikasimu dari data pelatihannya.
  • Format bawaan. Panjang, struktur, perlu tidaknya blok kode. Kalau outputnya dibaca oleh program, berikan bentuk yang persis; lihat output terstruktur.

Apa yang tidak perlu ditulis

Rahasia. Prompt sistem tidak bersifat privat. Pengguna bisa meminta model mengulang instruksinya atau mengakalinya supaya melakukan itu, dan model tidak bisa diandalkan untuk menolak. API key, password, dan apa pun yang tidak ingin kamu publikasikan tidak boleh ada di sana. Anggap prompt sistem sebagai teks yang suatu hari bisa dibaca pengguna, dan lihat prompt injection untuk tahu bagaimana instruksi bisa ditimpa.

Tugas untuk satu pesan. Kalau prompt sistem berbunyi "ringkas artikel ini", pesan kedua di chat itu tidak punya tempat.

Tumpukan aturan yang saling tumpang tindih. Dua puluh aturan yang ditulis di waktu yang berbeda cenderung saling bertentangan, dan model harus menebak mana yang menang. Kelompokkan aturannya, hapus yang ganda, dan nyatakan prioritasnya ketika dua aturan bisa bertabrakan.

Isian yang tidak perlu. Prompt sistem dikirim ulang bersama setiap permintaan dan ikut dihitung dalam context window model, jadi setiap paragraf yang tidak perlu ikut dibayar di setiap giliran.

Contoh prompt sistem

Contoh pertama adalah asisten produk. Prompt sistemnya menetapkan cakupan, panjang jawaban, dan aturan untuk pertanyaan yang tidak bisa dijawabnya, serta membawa fakta yang dibutuhkan model. Pindah-pindah tab untuk mengirim pesan yang berbeda: prompt sistem yang sama membentuk ketiga balasannya.

System prompt
Kamu adalah asisten bantuan di dalam aplikasi pengatur anggaran. Jawab hanya pertanyaan tentang cara memakai aplikasi ini. Setiap jawaban harus kurang dari 80 kata. Kalau pertanyaannya tentang hal lain, katakan bahwa kamu hanya bisa membantu soal aplikasi ini dan tawarkan hal terkait yang bisa kamu bantu. Kalau fakta di bawah tidak mencakup sebuah pertanyaan, katakan bahwa kamu tidak yakin dan sarankan untuk menghubungi tim dukungan. Jangan pernah mengarang nama menu atau fitur. Fakta: Transaksi bisa dibagi: buka transaksinya, ketuk Bagi, lalu pilih kategori dan jumlahnya. Anggaran di-reset setiap tanggal satu tiap bulan.
Fill in
Bagaimana cara membagi satu pembelian antara belanja dapur dan rumah tangga?
Try it
Chat apps receive the system prompt as the start of your message, so this tries its wording, not its priority. To test it as standing instructions, put it in the app's custom instructions or the API's system field.
Example replyReplies vary between models and runs.

Buka pembelian itu di daftar transaksimu lalu ketuk Bagi. Setelah itu pilih dua kategorinya, Belanja Dapur dan Rumah Tangga, lalu masukkan jumlah untuk masing-masing.

Contoh kedua adalah jenis teks yang bisa kamu taruh di instruksi kustom atau instruksi proyek di aplikasi chat. Teksnya menjelaskan tentang dirimu dan bagaimana kamu ingin dijawab, jadi setiap chat dimulai dari situ.

Prompt
System prompt
Tentang aku: aku backend developer yang bekerja dengan TypeScript di Node.js. Anggap aku sudah paham dasar-dasarnya dan lewati penjelasan untuk pemula. Bagaimana aku ingin dijawab: kode dulu, lalu maksimal tiga kalimat penjelasan. Sebutkan kalau sebuah jawaban bergantung pada versi atau pengaturan tertentu.
Fill in
Bagaimana cara membaca file JSON?
Try it
Chat apps receive the system prompt as the start of your message, so this tries its wording, not its priority. To test it as standing instructions, put it in the app's custom instructions or the API's system field.
Example replyReplies vary between models and runs.
import { readFile } from "node:fs/promises";

const config = JSON.parse(await readFile("config.json", "utf8"));

Memberikan encoding membuat readFile mengembalikan string, yang lalu diubah JSON.parse menjadi objek. await di tingkat teratas hanya berjalan di ES module ("type": "module" di package.json atau file .mts); kalau tidak, bungkus pemanggilannya dalam fungsi async. Tambahkan try/catch kalau file-nya mungkin tidak ada atau formatnya rusak.

Tanpa prompt sistem, pertanyaan sependek "bagaimana cara membaca file JSON?" membuat model harus menebak bahasanya, dan balasannya sering kali dalam Python atau JavaScript biasa, lengkap dengan satu paragraf tentang apa itu JSON. Dengan prompt sistem, balasannya memakai bahasa dan runtime yang tepat, melewati dasar-dasarnya, dan mengikuti bentuk yang diminta.

Struktur yang sama bisa dipakai untuk asisten apa pun yang kamu siapkan: siapa yang dilayaninya, aturannya, apa yang harus dilakukan saat ragu, fakta yang dibutuhkannya, dan format jawabannya. Tulis sekali, uji dengan satu pertanyaan biasa, satu pertanyaan di luar topik, dan satu yang mencoba melanggar aturan, lalu sesuaikan sampai ketiga balasannya sesuai keinginanmu.

Pertanyaan yang sering diajukan

Apa itu prompt sistem (system prompt)?

Prompt sistem adalah kumpulan instruksi yang diberikan ke model AI sebelum percakapan dimulai, dan berlaku untuk setiap pesan yang menyusul. Biasanya isinya menetapkan peran, pembaca, aturan, dan format jawaban bawaan. Di API, prompt sistem adalah kolom atau pesan system yang terpisah; di aplikasi chat, instruksi kustom dan instruksi proyek punya fungsi yang sama.

Apa bedanya prompt sistem dengan prompt pengguna?

Prompt sistem berisi instruksi tetap untuk seluruh percakapan dan biasanya ditulis oleh developer atau diatur sekali di pengaturan. Prompt pengguna adalah satu pesan yang meminta satu hal. Ketika keduanya bertentangan, model dilatih untuk lebih mengutamakan prompt sistem, meskipun itu kecenderungan, bukan jaminan.

Bisakah prompt sistem diatur di ChatGPT, Claude, atau Gemini?

Kolom system yang mentah tidak bisa, tapi ada yang mendekati. ChatGPT punya instruksi kustom, instruksi proyek, dan instruksi untuk GPT kustom. Claude punya instruksi proyek dan preferensi profil. Gemini punya instruksi untuk Gems. Aplikasinya menggabungkan apa yang kamu tulis di sana dengan instruksi sistemnya sendiri lalu menerapkannya ke chat-chatmu.

Bisakah pengguna melihat atau mengambil isi prompt sistem?

Sering kali bisa. Pengguna bisa meminta model mengulang instruksinya atau mengakalinya supaya melakukan itu, dan model tidak bisa diandalkan untuk merahasiakannya. Jangan pernah menaruh password, API key, atau detail bisnis yang rahasia di prompt sistem, dan jangan mengandalkannya sebagai batas keamanan.

Seberapa panjang sebuah prompt sistem sebaiknya?

Cukup panjang untuk mencakup hal-hal yang berlaku di setiap pesan, tidak lebih. Prompt sistem untuk pemakaian pribadi bisa cukup tiga atau empat kalimat. Prompt sistem untuk sebuah produk sering kali sepanjang satu halaman, berisi peran, aturan, fakta, dan format output. Setiap katanya dikirim bersama setiap permintaan, jadi setiap kali itu juga memakan token.

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai