0Pricing
AI Prompt Engineering · Pelajaran

Perbandingan Perintah Samar dan Spesifik

Lihat contoh berdampingan yang menunjukkan perbedaan besar akibat kekhususan.

Perbandingan Perintah Samar dan Spesifik adalah pelajaran AI Prompt Engineering gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar AI Prompt Engineering, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus AI Prompt Engineering mencakup 4 pelajaran total.

Metode Perbandingan Berdampingan

Cara tercepat untuk memahami kualitas perintah adalah mempelajari penulisan ulang spesifik secara berdampingan dan menganalisis mengapa setiap perbaikan berhasil.

Dalam pelajaran ini, kita akan memeriksa lima perintah yang samar beserta penulisan ulang spesifiknya. Untuk setiap pasangan, kita mengidentifikasi perubahan persis yang dibuat dan mekanisme yang membuat setiap perbaikan mengarahkan model menuju keluaran yang lebih baik.

Pasangan 1: Artikel Blog

Samar: 'Tulis artikel blog tentang kerja jarak jauh.'

Spesifik: 'Tulis artikel blog sepanjang 600 kata berjudul "3 Kebiasaan Kerja Jarak Jauh yang Menghancurkan Produktivitas Saya (Dan yang Saya Lakukan Sekarang)" untuk audiens pengembang perangkat lunak tingkat menengah. Gunakan sudut pandang orang pertama dan gaya percakapan. Struktur: 1 paragraf pembuka, 3 bagian dengan judul H2, 1 CTA penutup untuk mengunduh templat gratis.'

Mengapa ini berhasil: Menambahkan jumlah kata, judul (dan karenanya sudut pandang), audiens, gaya penyampaian, nada, struktur, serta elemen penutup yang spesifik. Tidak ada dimensi yang tersisa untuk ditebak.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=800,
    messages=[{
        'role': 'user',
        'content': (
            'Write a 600-word blog post titled '
            '"The 3 Remote Work Habits That Killed My Productivity (And What I Do Now)" '
            'for an audience of mid-level software developers. '
            'First-person voice, conversational tone. '
            'Structure: 1-paragraph intro, 3 H2 sections (one per habit), '
            '1 closing paragraph with a CTA to download a free productivity template.'
        )
    }]
)
print(response.content[0].text[:400], '...')

Pasangan 2: Peninjauan Kode

Samar: 'Tinjau kode saya.'

Spesifik: 'Tinjau fungsi Python berikut. Fokus hanya pada: 1) bug kebenaran, 2) kasus tepi yang tidak ditangani. JANGAN mengomentari gaya, penamaan, atau pemformatan. Format keluaran: daftar bernomor berisi masalah, masing-masing dengan: deskripsi masalah (1 kalimat), baris yang terdampak, perbaikan yang disarankan (cuplikan kode).'

Mengapa ini berhasil: Menentukan cakupan peninjauan (kebenaran + kasus tepi), secara jelas mengecualikan dimensi lain (gaya/penamaan), dan menetapkan struktur keluaran yang tepat dengan tiga bidang untuk setiap temuan.

import openai

client = openai.OpenAI(api_key='sk-your-key-here')

code = (
    'def get_user(users, user_id):\n'
    '    for user in users:\n'
    '        if user["id"] == user_id:\n'
    '            return user["name"]\n'
    '    return users[0]["name"]\n'
)

response = client.chat.completions.create(
    model='gpt-4o',
    messages=[{
        'role': 'user',
        'content': (
            'Review the following Python function.\n'
            'Focus ONLY on: 1) correctness bugs, 2) unhandled edge cases.\n'
            'Do NOT comment on style, naming conventions, or formatting.\n'
            'Output format: numbered list. Each item: issue (1 sentence), '
            'affected line, suggested fix as a code snippet.\n\n'
            + code
        )
    }]
)
print(response.choices[0].message.content)

Pasangan 3: Baris Subjek Email

Samar: 'Tulis baris subjek email untuk buletin saya.'

Spesifik: 'Tulis 10 baris subjek email untuk buletin mingguan tentang Python bagi ilmuwan data. Setiap baris subjek harus kurang dari 50 karakter, memiliki pemancing tingkat pembukaan (celah rasa ingin tahu, daftar bernomor, atau klaim mengejutkan), dan menghindari kata pemicu spam seperti FREE atau URGENT. Sajikan sebagai daftar bernomor dengan jenis pemancing diberi label dalam tanda kurung siku.'

Mengapa ini berhasil: Menentukan jumlah, batas panjang, persyaratan pemancing, daftar pengecualian, serta format keluaran berlabel — mengubah tugas kreatif yang samar menjadi tugas pembuatan berbasis aturan.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=400,
    messages=[{
        'role': 'user',
        'content': (
            'Write 10 email subject lines for a weekly newsletter '
            'about Python tips for data scientists. '
            'Requirements:\n'
            '- Each under 50 characters\n'
            '- Must use one of these hooks: [CURIOSITY GAP], [NUMBER], or [SURPRISING CLAIM]\n'
            '- No spam words: FREE, URGENT, ACT NOW, LIMITED TIME\n'
            '- Output as numbered list with hook type in brackets at the end of each line'
        )
    }]
)
print(response.content[0].text)

Pasangan 4: Ringkasan Rapat

Samar: 'Ringkas transkrip rapat ini.'

Spesifik: 'Ringkas transkrip rapat ini menggunakan format berikut: 1) Tujuan Rapat (1 kalimat), 2) Keputusan Utama yang Dibuat (daftar butir, maksimal 5), 3) Item Tindakan (tabel dengan kolom: Tugas, Penanggung Jawab, Tenggat), 4) Pertanyaan Terbuka (daftar bernomor). Jika informasi untuk suatu bidang tidak tersedia, tulis N/A. Jangan sertakan opini apa pun — hanya fakta dan komitmen.'

Mengapa ini berhasil: Menyediakan templat yang tepat, menentukan batas untuk setiap bagian, mendefinisikan skema tabel, menetapkan pengganti untuk data yang tidak tersedia, dan menambahkan batasan nada (hanya fakta).

import openai

client = openai.OpenAI(api_key='sk-your-key-here')

transcript = (
    'John: We need to decide on the launch date. '
    'Sarah: I think Q3 works. We need the API done first. '
    'John: Agreed. Sarah, can you own the API? '
    'Sarah: Yes, I can have it by July 15th. '
    'John: Great. Who handles marketing? '
    'Mike: I will, but I need the feature list first. '
    'John: We still need to confirm pricing — tabled for next week.'
)

response = client.chat.completions.create(
    model='gpt-4o',
    messages=[{
        'role': 'user',
        'content': (
            'Summarize this meeting transcript in this exact format:\n'
            '1. Meeting Purpose: (1 sentence)\n'
            '2. Key Decisions: (bullet list, max 5)\n'
            '3. Action Items: (markdown table: Task | Owner | Deadline)\n'
            '4. Open Questions: (numbered list)\n'
            'Missing info: write N/A. Facts only, no opinions.\n\n'
            'Transcript:\n' + transcript
        )
    }]
)
print(response.choices[0].message.content)

Pasangan 5: Penjelasan

Samar: 'Jelaskan pembelajaran mesin.'

Spesifik: 'Jelaskan pembelajaran mesin dalam 3 paragraf untuk manajer produk di perusahaan layanan kesehatan yang memahami statistika tetapi belum pernah menulis kode. Paragraf 1: apa itu pembelajaran mesin dan perbedaannya dari pemrograman tradisional. Paragraf 2: contoh nyata di bidang layanan kesehatan (diagnosis atau penemuan obat). Paragraf 3: satu kesalahpahaman umum yang harus dihindari. Maksimal 200 kata secara keseluruhan.'

Mengapa ini berhasil: Menentukan struktur (3 paragraf dengan topik yang ditetapkan), audiens (peran + domain + latar belakang tertentu), persyaratan isi setiap paragraf, serta batas jumlah kata secara keseluruhan.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

response = client.messages.create(
    model='claude-opus-4-5',
    max_tokens=350,
    messages=[{
        'role': 'user',
        'content': (
            'Explain machine learning in exactly 3 paragraphs. '
            'Audience: a product manager at a healthcare company who understands statistics '
            'but has never written code.\n'
            'Paragraph 1: what ML is and how it differs from traditional programming.\n'
            'Paragraph 2: a specific real-world healthcare example (diagnosis or drug discovery).\n'
            'Paragraph 3: one common misconception non-technical people have about ML.\n'
            'Max 200 words total. No bullet points — flowing prose only.'
        )
    }]
)
print(response.content[0].text)

Anatomi Penulisan Ulang yang Baik

Jika melihat kelima pasangan tersebut, setiap penulisan ulang yang efektif melakukan hal-hal berikut:

  1. Mengganti kata kerja yang samar ('tulis', 'tinjau', 'jelaskan') dengan tugas yang terstruktur
  2. Menyebutkan format keluaran (daftar, tabel, paragraf dengan isi yang ditetapkan)
  3. Menambahkan batasan yang dapat diukur (jumlah kata, jumlah item, batas karakter)
  4. Menentukan audiens (peran + latar belakang + konteks)
  5. Menambahkan setidaknya satu aturan pengecualian (hal yang harus dihilangkan)
# Pattern extractor: identify improvements between two prompts
def analyze_improvement(vague, specific):
    improvements = []
    words = specific.lower()
    if any(str(n) in words for n in range(10, 10000)):
        improvements.append('Quantitative constraint added')
    if 'do not' in words or 'exclude' in words or 'avoid' in words or 'no ' in words:
        improvements.append('Negative constraint added')
    if 'audience' in words or 'for a' in words or 'targeting' in words:
        improvements.append('Audience specified')
    if 'format:' in words or 'table' in words or 'list' in words or 'paragraph' in words:
        improvements.append('Output format defined')
    if 'example' in words or 'such as' in words or 'like:' in words:
        improvements.append('Example provided')
    print('Improvements detected:')
    for i in improvements:
        print(f'  + {i}')

vague = 'Write a blog post about remote work.'
specific = 'Write a 600-word blog post for mid-level developers with 3 H2 sections and a closing CTA. No bullet points. Avoid generic productivity advice.'
analyze_improvement(vague, specific)

Dampak Penambahan Hanya Satu Dimensi

Menambahkan satu perbaikan saja memang membantu — tetapi spesifikasi sebagian masih menyisakan banyak celah. Bandingkan:

  • 'Tulis artikel blog tentang kerja jarak jauh' — tanpa batasan
  • 'Tulis artikel blog sepanjang 600 kata tentang kerja jarak jauh' — hanya panjang yang ditentukan; sudut pandang, audiens, dan struktur masih samar
  • 'Tulis artikel blog sepanjang 600 kata tentang kerja jarak jauh untuk pengembang, dengan gaya percakapan' — panjang + audiens + nada; struktur, CTA, dan gaya judul masih samar

Setiap dimensi yang tidak Anda tentukan menjadi sebuah undian. Tambahkan sebanyak mungkin dimensi berdasarkan informasi yang Anda miliki.

import openai

client = openai.OpenAI(api_key='sk-your-key-here')

# Progressively more specific prompts
prompts = [
    'Write about Python.',
    'Write a 200-word article about Python.',
    'Write a 200-word article about Python for beginners who know no programming.',
    (
        'Write a 200-word article about Python for beginners who know no programming. '
        'Start with a real-world analogy. Use 3 short paragraphs. '
        'End with one actionable first step they can take today.'
    )
]

for i, p in enumerate(prompts, 1):
    print(f'Prompt {i} ({len(p)} chars): {p[:80]}...' if len(p) > 80 else f'Prompt {i}: {p}')
    print()

Mempraktikkan Teknik Pasangan Perbandingan

Teknik pasangan perbandingan merupakan alat pengawakutuan yang ampuh. Saat Anda mendapatkan keluaran yang buruk:

  1. Simpan perintah samar yang menghasilkan keluaran buruk
  2. Identifikasi satu dimensi yang menyebabkan masalah
  3. Tulis penulisan ulang spesifik yang hanya menargetkan dimensi tersebut
  4. Jalankan kedua perintah dan bandingkan keluarannya
  5. Identifikasi hal yang masih perlu diperbaiki — lalu tambahkan batasan berikutnya

Pendekatan ilmiah ini dengan cepat mengajarkan batasan mana yang paling penting untuk kasus penggunaan Anda.

import anthropic

client = anthropic.Anthropic(api_key='sk-ant-your-key-here')

def compare_prompts(prompt_a, prompt_b, label_a='A', label_b='B'):
    client_ref = anthropic.Anthropic(api_key='sk-ant-your-key-here')
    for label, prompt in [(label_a, prompt_a), (label_b, prompt_b)]:
        response = client_ref.messages.create(
            model='claude-opus-4-5',
            max_tokens=150,
            messages=[{'role': 'user', 'content': prompt}]
        )
        print(f'=== {label} ===')
        print(prompt)
        print('--- OUTPUT ---')
        print(response.content[0].text)
        print()

compare_prompts(
    prompt_a='Explain APIs.',
    prompt_b='Explain APIs in 3 sentences for a non-technical startup founder. Analogy required.',
    label_a='VAGUE',
    label_b='SPECIFIC'
)

Audit Perintah Dua Menit

Sebelum mengirim perintah penting, lakukan audit 2 menit ini. Untuk setiap pertanyaan, jika jawabannya 'tidak', tambahkan detail yang kurang:

  • Apakah format sudah disebutkan? (daftar / tabel / paragraf / JSON)
  • Apakah panjang sudah ditentukan? (jumlah kata / jumlah item)
  • Apakah audiens sudah dijelaskan? (peran + latar belakang)
  • Apakah tujuan sudah jelas? (kegunaan keluaran)
  • Apakah setidaknya ada satu pengecualian? (hal yang harus dihilangkan)
  • Apakah ada contoh atau templat? (jika gaya penting)
def two_minute_audit(prompt):
    score = 0
    checks = {
        'Format specified': any(w in prompt.lower() for w in
            ['list', 'table', 'paragraph', 'json', 'bullet', 'sentence', 'word']),
        'Length given': any(c.isdigit() for c in prompt),
        'Audience named': any(w in prompt.lower() for w in
            ['for a', 'audience', 'targeting', 'developer', 'manager', 'beginner']),
        'Exclusion added': any(w in prompt.lower() for w in
            ['do not', 'avoid', 'exclude', 'no ', 'without', 'never']),
        'Goal stated': any(w in prompt.lower() for w in
            ['goal', 'purpose', 'so that', 'in order to', 'will be used']),
    }
    print('Prompt Audit:')
    for check, passed in checks.items():
        icon = 'PASS' if passed else 'FAIL'
        print(f'  [{icon}] {check}')
        if passed: score += 1
    print(f'Score: {score}/{len(checks)}')

two_minute_audit(
    'Write 5 bullet-point suggestions for improving user onboarding '
    'for a B2B SaaS app targeting first-time non-technical users. '
    'Avoid suggestions that require engineering work. Each bullet: max 25 words.'
)

Membangun Pustaka Perintah Anda

Setiap kali Anda menulis perintah yang menghasilkan keluaran sangat baik, simpanlah. Bangun pustaka perintah pribadi yang diatur berdasarkan jenis tugas.

Entri pustaka perintah yang baik mencakup:

  • Templat perintah dengan penampung seperti [AUDIENCE], [WORD_COUNT]
  • Kasus penggunaan yang menjadi tujuan perancangannya
  • Model dan pengaturan yang digunakan
  • Catatan tentang hal yang membuatnya efektif

Seiring waktu, pustaka Anda menjadi aset produktivitas AI yang paling berharga.

# Example prompt library entry
prompt_library = {
    'meeting_summary': {
        'template': (
            'Summarize the following meeting transcript in this format:\n'
            '1. Purpose: (1 sentence)\n'
            '2. Decisions: (bullet list, max 5)\n'
            '3. Action Items: (table: Task | Owner | Deadline)\n'
            '4. Open Questions: (numbered list)\n'
            'Missing info: N/A. Facts only.\n\nTranscript:\n[TRANSCRIPT]'
        ),
        'use_case': 'Post-meeting automation for Slack or Notion',
        'model': 'claude-opus-4-5',
        'temperature': 0,
        'notes': 'Works best with verbatim transcripts, not paraphrased notes'
    }
}

# Use the template
def run_meeting_summary(transcript):
    template = prompt_library['meeting_summary']['template']
    return template.replace('[TRANSCRIPT]', transcript)

print(run_meeting_summary('Alice: We decided to ship v2 next Friday...')[:200])

Pemeriksaan Pengetahuan

Dengan melihat lima pasangan perbandingan dalam pelajaran ini, perubahan tunggal apa yang paling konsisten meningkatkan kualitas perintah di semua lima contoh?

Samar vs Spesifik — Ringkasan

Lima pasangan perbandingan tersebut menunjukkan pola konsisten tentang hal-hal yang membuat penulisan ulang perintah menjadi efektif:

  • Struktur keluaran merupakan perbaikan dengan ROI tertinggi — selalu tentukan
  • Jumlah kata/item menghilangkan seluruh negosiasi tentang panjang
  • Deskripsi audiens secara otomatis menyesuaikan kosakata dan kedalaman
  • Aturan pengecualian mencegah konten generik yang mudah diprediksi
  • Spesifikasi sebagian masih menyisakan celah — setiap dimensi yang tidak ditentukan menjadi tebakan
  • Pustaka perintah menyimpan templat yang berhasil untuk digunakan kembali

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Perbandingan Perintah Samar dan Spesifik” gratis?

Ya — teks lengkap “Perbandingan Perintah Samar dan Spesifik” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus AI Prompt Engineering, upgrade ke CoddyKit PRO. Kursus AI Prompt Engineering mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Perbandingan Perintah Samar dan Spesifik”?

Lihat contoh berdampingan yang menunjukkan perbedaan besar akibat kekhususan. Kamu berlatih AI Prompt Engineering dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai AI Prompt Engineering?

Tidak diperlukan pengalaman sebelumnya. AI Prompt Engineering di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Perbandingan Perintah Samar dan Spesifik” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran AI Prompt Engineering ini?

Ya. Setiap pelajaran AI Prompt Engineering menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mengapa Kekhususan Itu Penting
  2. Menghilangkan Ambiguitas dari Perintah
  3. Menambahkan Detail Konkret
  4. Perbandingan Perintah Samar dan Spesifik
← Kembali ke AI Prompt Engineering