BAB 19

19 - System Prompts dan Konfigurasi AI

Sumber: Disusun berdasarkan dokumentasi Anthropic, OpenAI, dan praktik terbaik industri Estimasi Waktu: 35-45 menit Prasyarat: Pelajaran 08-09 (Description dan Prompting)


Apa Itu Materi Ini?

Materi ini membahas System Prompt - instruksi tersembunyi yang mengarahkan perilaku AI secara konsisten. Memahami system prompt adalah kunci untuk membangun interaksi AI yang dapat diandalkan, baik untuk penggunaan personal maupun saat membangun aplikasi berbasis AI.


Tujuan Pembelajaran

Setelah mempelajari materi ini, kamu akan mampu:


1. Anatomi Pesan ke AI

Tiga Jenis Pesan

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚              STRUKTUR PESAN KE AI                     β”‚
β”‚                                                      β”‚
β”‚  1. SYSTEM MESSAGE (System Prompt)                   β”‚
β”‚     β†’ Instruksi "di balik layar"                     β”‚
β”‚     β†’ Mengatur perilaku, kepribadian, batasan        β”‚
β”‚     β†’ Tidak terlihat oleh user akhir                 β”‚
β”‚     β†’ Konsisten sepanjang percakapan                 β”‚
β”‚                                                      β”‚
β”‚  2. USER MESSAGE                                     β”‚
β”‚     β†’ Input dari pengguna                            β”‚
β”‚     β†’ Pertanyaan, perintah, data                     β”‚
β”‚     β†’ Bisa berupa teks, gambar, dll                  β”‚
β”‚                                                      β”‚
β”‚  3. ASSISTANT MESSAGE                                β”‚
β”‚     β†’ Respons dari AI                                β”‚
β”‚     β†’ Menjadi bagian dari percakapan berikutnya      β”‚
β”‚                                                      β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Contoh Interaksi

System: Kamu adalah asisten customer service untuk toko online
        "TokoKu". Jawab dengan ramah, profesional, dan bahasa
        Indonesia. Jika ada pertanyaan tentang pesanan, minta
        nomor order terlebih dahulu.

User:    Halo, pesanan saya belum sampai!

Assistant: Halo! Saya senang bisa membantu. Untuk mengecek
           status pesanan Anda, boleh saya minta nomor order-nya?

2. Menulis System Prompt yang Efektif

Prinsip Dasar

  1. Tentukan peran - Siapa AI ini?
  2. Tentukan batasan - Apa yang boleh dan tidak boleh dilakukan?
  3. Tentukan format - Bagaimana output harus ditampilkan?
  4. Tentukan gaya - Formal? Kasual? Teknis?
  5. Tentukan edge cases - Bagaimana menangani situasi yang tidak jelas?

Template System Prompt

## IDENTITAS
Kamu adalah [peran], yang [deskripsi singkat kepakaran].

## TUJUAN
Tugasmu adalah [tugas utama].

## CARA BEKERJA
1. [Langkah/langkah pendekatan]
2. [Metodologi]
3. [Framework yang digunakan]

## BATASAN
- KAMU TIDAK BOLEH [batasan kritis 1]
- KAMU TIDAK BOLEH [batasan kritis 2]
- Jika [kondisi], maka [tindakan]

## FORMAT OUTPUT
- [Format yang diharapkan]
- [Panjang/ketebalan]
- [Struktur]

## GAYA KOMUNIKASI
- [Tone of voice]
- [Level detail]
- [Bahasa]

## PENANGANAN KASUS KHUSUS
- Jika user bertanya di luar topik: [tindakan]
- Jika informasi tidak cukup: [tindakan]
- Jika ada potensi bahaya: [tindakan]

Contoh: System Prompt untuk Tutor Pemrograman

## IDENTITAS
Kamu adalah tutor pemrograman senior yang mengajar mahasiswa
pemula hingga menengah. Kamu menguasai Python, JavaScript,
dan konsep computer science fundamental.

## TUJUAN
Membantu mahasiswa memahami konsep pemrograman dan menyelesaikan
masalah kode mereka SENDIRI - bukan menyelesaikan kodenya untuk mereka.

## CARA BEKERJA
1. Pahami dulu MASALAH yang dihadapi mahasiswa
2. Identifikasi konsep apa yang belum dipahami
3. Jelaskan konsep dengan analogi kehidupan sehari-hari
4. Berikan CONTOH KODE SEDERHANA yang mendemonstrasikan konsep
5. Biarkan mahasiswa menerapkan konsep ke masalahnya
6. Review dan berikan feedback

## BATASAN
- KAMU TIDAK BOLEH memberikan jawaban lengkap untuk tugas/assignment
- KAMU TIDAK BOLEH menulis kode yang menyelesaikan masalah langsung
- Berikan HINTS dan ARAHAN, bukan solusi lengkap
- Jika mahasiswa minta jawaban langsung, arahkan kembali ke proses belajar

## FORMAT OUTPUT
- Gunakan blok kode dengan syntax highlighting
- Jelaskan KENAPA sebelum menunjukkan BAGAIMANA
- Sertakan komentar di kode contoh

## GAYA KOMUNIKASI
- Ramah dan mendorong
- Sabar - mahasiswa bisa saja sangat pemula
- Celebrate progress, tidak hanya correctness
- Gunakan bahasa Indonesia, istilah teknis boleh bahasa Inggris

## PENANGANAN KASUS KHUSUS
- Jika pertanyaan di luar pemrograman: arahkan kembali ke topik
- Jika kode mahasiswa berbahaya (malware, dsb): tolak dan jelaskan mengapa
- Jika mahasiswa frustrasi: validasi perasaan, ingatkan bahwa coding itu memang challenging

3. Parameter Konfigurasi AI

Temperature

Temperature 0.0          Temperature 0.5         Temperature 1.0
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Deterministicβ”‚         β”‚ Balanced     β”‚        β”‚ Creative     β”‚
β”‚ Konsisten    β”‚         β”‚ Fleksibel    β”‚        β”‚ Variatif     β”‚
β”‚ Faktual      β”‚         β”‚ Natural      β”‚        β”‚ Eksploratif  β”‚
β”‚ "Aman"       β”‚         β”‚              β”‚        β”‚ Berisiko     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜        β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Gunakan untuk:           Gunakan untuk:          Gunakan untuk:
- Code generation        - Chatbot                - Brainstorming
- Data extraction        - Writing assistance     - Creative writing
- Factual Q&A            - Translation            - Ideation
- Classification         - Summarization          - Role-playing

Max Tokens

Max tokens = batas panjang output AI

Tips:
- Set ke nilai yang cukup, tapi tidak berlebihan
- Terlalu pendek β†’ output terpotong
- Terlalu panjang β†’ pemborosan biaya dan waktu
- Perkirakan: 1 token β‰ˆ 0.75 kata (bahasa Inggris)
- Bahasa Indonesia: 1 token β‰ˆ 0.5-0.6 kata

Top-P (Nucleus Sampling)

Top-P mengontrol keragaman kata yang dipertimbangkan AI

Top-P 0.1  β†’ Hanya kata paling probable β†’ Deterministic
Top-P 0.5  β†’ Kata probable + moderate   β†’ Balanced
Top-P 0.9  β†’ Banyak opsi dipertimbangkan β†’ Creative

Tip: Biasanya cukup atur temperature SAJA.
     Jika perlu kontrol lebih, gunakan Top-P, bukan keduanya.

Top-K

Top-K membatasi jumlah kata kandidat di setiap langkah

Top-K 1   β†’ Selalu pilih kata paling probable
Top-K 50  β†’ Pilih dari 50 kata teratas
Top-K 0   β†’ Tidak ada batasan

Tip: Jarang perlu diubah. Default biasanya sudah optimal.

Frekuensi Penalti dan Presence Penalti

Frequency Penalty  β†’ Mengurangi pengulangan kata yang sudah sering muncul
Presence Penalty   β†’ Mendorong penggunaan topik/kata baru

Gunakan untuk:
- Mengurangi output yang repetitif
- Mendorong respons yang lebih beragam
- Long-form writing yang perlu variasi

4. Context Window Management

Apa Itu Context Window?

Context Window = "Memori jangka pendek" AI

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                  CONTEXT WINDOW                        β”‚
β”‚  (Total token yang bisa diproses dalam 1 percakapan)   β”‚
β”‚                                                        β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  System  β”‚    Percakapan          β”‚   Space untuk β”‚  β”‚
β”‚  β”‚  Prompt  β”‚    (User + Assistant)  β”‚   Output      β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                        β”‚
β”‚  Total: tergantung model (100K - 200K tokens)          β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Model dan Context Window

ModelContext WindowKeterangan
Claude 4 Sonnet200K tokens (~150K kata)Sangat besar
Claude 4 Opus200K tokens (~150K kata)Sangat besar
GPT-4o128K tokens (~96K kata)Besar
GPT-4 Turbo128K tokens (~96K kata)Besar
Gemini 1.5 Pro1M tokens (~750K kata)Terbesar
Gemini 1.5 Flash1M tokens (~750K kata)Terbesar

Strategi Mengelola Context Window

1. Ringkas Percakapan Panjang

Ketika percakapan mulai panjang:

"Ringkas diskusi kita sejauh ini dalam 3-4 poin kunci,
 lalu kita lanjutkan dari sana."

2. Mulai Percakapan Baru untuk Topik Baru

Jangan campur terlalu banyak topik dalam satu percakapan.
Setiap topik baru β†’ percakapan baru.
Ini menjaga konteks tetap fokus dan relevan.

3. Prioritaskan Informasi Penting

Informasi penting di awal:
1. System prompt (selalu di paling awal)
2. Konteks/instruksi utama
3. Data pendukung
4. Pertanyaan spesifik

4. Gunakan Referensi Bukan Pengulangan

Buruk: Menyalin ulang dokumen yang sama berkali-kali
Baik: "Merujuk pada data yang sudah saya bagikan sebelumnya tentang X..."

5. Pre-filling Assistant Response

Teknik: Memulai Respons AI

Kamu bisa β€œmenyisipkan” awal respons AI untuk mengarahkan format:

System: Kamu adalah ahli matematika yang selalu menunjukkan langkah kerja.

User: Hitung luas segitiga dengan alas 8 cm dan tinggi 5 cm.

Assistant (pre-fill): Mari kita hitung langkah demi langkah.

AI melanjutkan:
β†’ Langkah 1: Rumus luas segitiga = 1/2 Γ— alas Γ— tinggi
β†’ Langkah 2: Substitusi: 1/2 Γ— 8 Γ— 5
β†’ Langkah 3: = 20 cmΒ²

Kegunaan Pre-filling


6. XML Tags untuk Struktur

Menggunakan XML Tags dalam Prompt

Claude (dan beberapa model lain) merespons baik terhadap XML tags untuk memisahkan bagian-bagian prompt:

<role>
Kamu adalah data analyst senior.
</role>

<task>
Analisis dataset berikut dan temukan insight utama.
</task>

<data>
[Dataset dalam format CSV atau JSON]
</data>

<constraints>
- Fokus pada 3 insight terpenting
- Sertakan visualisasi yang direkomendasikan
- Gunakan bahasa non-teknis untuk kesimpulan
</constraints>

<output_format>
## Insight 1: [Judul]
- Data: ...
- Interpretasi: ...
- Rekomendasi: ...
</output_format>

Keuntungan XML Tags


Latihan: Bangun System Prompt (~20 menit)

Tugas

Buat system prompt lengkap untuk salah satu use case berikut:

Pilihan A: Asisten Riset Akademis

AI yang membantu mahasiswa melakukan riset: mencari paper, meringkas, mengidentifikasi gap, dan menyusun literature review.

Pilihan B: Code Reviewer

AI yang me-review pull request: memeriksa bug, security issues, best practices, dan memberikan feedback konstruktif.

Pilihan C: Content Calendar Planner

AI yang membantu merencanakan konten media sosial: ide konten, caption, hashtag, scheduling, dan analisis performa.

Gunakan template di atas dan pastikan mencakup semua bagian: identitas, tujuan, cara kerja, batasan, format output, gaya komunikasi, dan penanganan kasus khusus.


Poin-Poin Utama

  1. System prompt adalah β€œinstruksi tersembunyi” yang mengarahkan perilaku AI
  2. Tulis system prompt yang mencakup peran, batasan, format, gaya, dan edge cases
  3. Temperature mengontrol kreativitas: rendah untuk faktual, tinggi untuk kreatif
  4. Context window terbatas - kelola dengan ringkasan, percakapan baru, dan prioritas
  5. Pre-filling dan XML tags adalah teknik lanjutan untuk kontrol yang lebih baik
  6. Parameter seperti temperature, top-p, dan max tokens mempengaruhi output secara signifikan
  7. Test dan iterasi system prompt - versi pertama jarang optimal

Referensi Lanjutan


Informasi Kursus