Persyaratan yang Bertentangan
Pelajari bagaimana batasan yang bertentangan membingungkan model dan menghasilkan respons penuh keraguan.
Persyaratan yang Bertentangan adalah pelajaran AI Prompt Engineering gratis di CoddyKit. Ini adalah pelajaran 2 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.
Masalah Pertentangan
Prompt dengan persyaratan yang saling bertentangan meminta model memenuhi dua tujuan yang tidak dapat dicapai sepenuhnya secara bersamaan. Berbeda dengan ketidakjelasan — yang masalahnya adalah terlalu sedikit informasi — pertentangan memberikan informasi yang saling berkonflik kepada model sehingga memaksanya membuat kompromi secara sembarang.
Model tidak akan memberi tahu Anda bahwa persyaratan tersebut saling bertentangan. Model akan menghasilkan sesuatu, tetapi secara diam-diam akan mengorbankan salah satu persyaratan Anda demi memenuhi persyaratan lainnya. Anda mungkin tidak menyadarinya sampai memeriksa keluaran tersebut dengan saksama.
Pertentangan Klasik 1: Singkat tetapi Komprehensif
"Tulis ikhtisar singkat yang mencakup semua aspek komputasi awan secara komprehensif."
Singkat berarti pendek. Komprehensif berarti menyeluruh. Untuk topik seluas komputasi awan, kedua tujuan ini tidak dapat berjalan bersamaan. Salah satunya harus dikorbankan.
Model biasanya memprioritaskan keluasan (menyinggung banyak topik) daripada kedalaman, sehingga menghasilkan ikhtisar dangkal yang menyerupai daftar. Namun, model akan menyebutnya 'komprehensif' pada kalimat pembuka, sehingga menciptakan kesan kelengkapan yang semu.
Perbaikan: Tentukan mana yang lebih penting, lalu kurangi cakupannya. "Ikhtisar singkat tentang 3 model komputasi awan teratas" dapat mencapai keduanya.
Pertentangan Klasik 2: Formal tetapi Menyenangkan
"Tulis laporan formal yang juga menyenangkan dan menarik."
Penulisan formal mengikuti konvensi: bahasa yang terukur, sudut pandang orang ketiga, bagian-bagian yang terstruktur, dan tanpa ungkapan sehari-hari. Tulisan yang menyenangkan dan menarik biasanya menggunakan humor, sudut pandang orang pertama atau kedua, sudut pandang yang mengejutkan, serta pemikat emosional. Gaya-gaya ini secara aktif saling bertentangan.
Perbaikan: Pilih suatu titik pada spektrum formalitas. "Gunakan nada profesional tetapi percakapan — tidak kaku, tetapi juga tidak santai." Ini adalah instruksi yang selaras; pertentangannya diselesaikan dengan memilih titik tengah dan menamainya secara tepat.
Kontradiksi Klasik 3: Sederhana tetapi Mendetail
"Jelaskan keterikatan kuantum secara sederhana dan dengan detail lengkap."
Penyederhanaan memerlukan abstraksi—menyembunyikan kompleksitas dan menghilangkan nuansa. Detail lengkap memerlukan hal yang sebaliknya. Untuk topik teknis, tidak mungkin menjadi sekaligus sesederhana dan sedetail mungkin pada saat yang sama.
Solusi: Tentukan audiens sasaran dan latar belakang mereka, lalu biarkan kedalaman penjelasan mengikuti keputusan tersebut. "Jelaskan keterikatan kuantum untuk mahasiswa sarjana fisika—anggap mereka memahami fungsi gelombang, tetapi belum memahami QFT." Ini spesifik dan dapat dicapai karena definisi audiens menunjukkan keseimbangan yang tepat.
Mendeteksi Kontradiksi Sebelum Mengirim
Sebelum mengirim perintah dengan beberapa instruksi, lakukan pemeriksaan kontradiksi singkat:
- Catat semua instruksi dan batasan
- Untuk setiap pasangan, tanyakan: dapatkah keduanya dipenuhi secara bersamaan tanpa kompromi?
- Jika suatu pasangan saling bertentangan, tentukan mana yang lebih diprioritaskan
- Nyatakan prioritas tersebut secara eksplisit dalam perintah
Untuk perintah yang kompleks, proses ini memerlukan waktu 30–60 detik dan mencegah pengalaman yang membuat frustrasi ketika Anda baru menyadari setelahnya bahwa keluaran tersebut tidak mungkin memenuhi semua hal yang Anda minta.
Masalah Tumpang Tindih Sebagian
Tidak semua kontradiksi merupakan pertentangan mutlak. Beberapa instruksi memiliki tumpang tindih sebagian, sehingga memenuhi salah satunya membuat yang lain lebih sulit:
- "Tanpa jargon" + "tepat secara teknis"—ketepatan teknis sering memerlukan kosakata teknis
- "Objektif" + "persuasif"—persuasi menyiratkan penyajian fakta secara selektif
- "Kreatif" + "konsisten dengan gaya komunikasi merek"—batasan kreatif mengurangi ruang kreativitas
Tumpang tindih sebagian menghasilkan keluaran yang sebagian benar tetapi terasa sedikit tidak tepat. Model berkompromi pada keduanya, alih-alih mencapai salah satunya secara penuh.
Menyelesaikan Kontradiksi dengan Instruksi Prioritas
Penyelesaian kontradiksi yang paling jelas adalah instruksi prioritas yang eksplisit:
- "Buat sesingkat mungkin sambil mencakup 5 poin ini. Jika Anda tidak dapat mencakup suatu poin sepenuhnya dalam batas jumlah kata, rangkum poin tersebut dalam satu kalimat, bukan menghilangkannya."
- "Gunakan nada profesional, tetapi jika harus memilih antara gaya yang kaku-formal dan gaya santai-menarik, lebih condonglah ke gaya yang menarik."
- "Prioritaskan ketepatan daripada kesederhanaan. Jika suatu konsep memerlukan kosakata teknis, gunakan kosakata tersebut dan jelaskan saat pertama kali digunakan."
Instruksi prioritas menghilangkan kebutuhan model untuk menebak cara menangani kompromi tersebut.
Mendeteksi Kontradiksi dalam Kode
Untuk alur pemrosesan pembuatan perintah otomatis, Anda dapat menambahkan pemeriksaan awal kontradiksi menggunakan panggilan model kedua sebelum membuat konten sebenarnya:
import openai
client = openai.OpenAI(api_key='sk-...')
def check_for_contradictions(prompt_text):
check_prompt = f'''Review the following prompt for contradictory requirements.
List any pairs of instructions that conflict with each other.
For each conflict, suggest how to resolve it.
If there are no conflicts, say "No contradictions found."
Prompt to review:
---
{prompt_text}
---'''
response = client.chat.completions.create(
model='gpt-4o-mini',
messages=[{'role': 'user', 'content': check_prompt}]
)
return response.choices[0].message.content
# Example
test_prompt = '''Write a brief but comprehensive guide to machine learning
that is both simple for beginners and technically detailed for experts.
Keep it under 200 words. Formal and professional but also fun and engaging.'''
print(check_for_contradictions(test_prompt))Kontradiksi Nada: Tinjauan Lebih Dekat
Kontradiksi nada sangat umum karena banyak penanda nada berada pada spektrum yang secara tersirat saling berlawanan:
- Formal ←————————→ Santai
- Berwibawa ←————→ Mudah didekati
- Mendesak ←——————————→ Tenang
- Ringkas ←—————————→ Eksplanatif
Menggabungkan istilah dari ujung yang berlawanan dalam spektrum yang sama akan menciptakan kontradiksi. Alih-alih menggunakan dua istilah yang berlawanan, tentukan posisi yang diinginkan pada spektrum tersebut dan gunakan istilah untuk posisi itu secara spesifik: "bersifat percakapan tetapi profesional" atau "langsung tanpa terkesan dingin."
Kontradiksi Cakupan
Kontradiksi cakupan muncul ketika cakupan konten dan batas panjangnya tidak selaras:
- "Bahas semua 10 fitur dalam 100 kata"—10 kata per fitur tidak cukup untuk pembahasan yang bermakna
- "Berikan analisis komprehensif dengan contoh untuk setiap poin dalam bacaan berdurasi 2 menit"
- "Buat perbandingan produk lengkap berdasarkan 8 dimensi untuk 5 produk dalam satu paragraf"
Ini merupakan kontradiksi matematis. Solusinya selalu berupa mengurangi cakupan atau menambah batas panjang. Jika keduanya terasa tidak dapat dinegosiasikan, tugas tersebut perlu dibagi menjadi beberapa keluaran.
Kontradiksi Audiens
Sebuah perintah dapat mengandung kontradiksi mengenai audiensnya:
- "Tulis untuk pemula dan pakar"—kedalaman penjelasan yang sesuai untuk satu kelompok tidak sesuai untuk kelompok lainnya
- "Tulis untuk tim teknis dan manajemen mereka yang nonteknis"—masalahnya sama
- "Dapat dipahami semua pembaca tanpa memandang latar belakang"—spesifikasi audiens yang terlalu luas dan mustahil
Solusi: Pilih audiens utama dan tulislah untuk mereka. Jika Anda memerlukan dua versi, jalankan templat tersebut dua kali dengan variabel audiens yang berbeda, alih-alih mencoba menghasilkan satu keluaran yang kurang baik untuk kedua audiens.
Pemeriksaan Pengetahuan: Persyaratan yang Saling Bertentangan
Anda perlu menulis pengumuman produk untuk alat perangkat lunak perusahaan baru. Anda ingin pengumuman tersebut: (1) menarik dan penuh antusiasme, (2) formal dan sesuai untuk audiens CEO, (3) kurang dari 80 kata, (4) mencakup semua 7 fitur baru. Kontradiksi mana yang paling penting untuk diselesaikan?
Ringkasan: Persyaratan yang Saling Bertentangan
Persyaratan yang saling bertentangan adalah instruksi yang tidak dapat dipenuhi sepenuhnya secara bersamaan. Berbeda dari ketidakjelasan, kontradiksi memberikan terlalu banyak informasi yang saling bertentangan kepada model. Model akan memenuhi salah satu sisi kontradiksi secara diam-diam, mengorbankan satu tujuan demi tujuan lainnya tanpa memberi tahu Anda.
Pasangan klasiknya adalah: singkat+komprehensif, formal+menyenangkan, sederhana+mendetail. Deteksi kontradiksi dengan mencatat semua instruksi dan memeriksa setiap pasangan. Selesaikan dengan memilih prioritas, mencari istilah jalan tengah, atau membagi tugas menjadi beberapa keluaran.
Pada pelajaran berikutnya, Anda akan membahas konteks yang hilang—kategori utama ketiga dalam kesalahan perintah.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Persyaratan yang Bertentangan” gratis?
Ya — teks lengkap “Persyaratan yang Bertentangan” 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 “Persyaratan yang Bertentangan”?
Pelajari bagaimana batasan yang bertentangan membingungkan model dan menghasilkan respons penuh keraguan. 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 2 dari 4.
Berapa lama pelajaran “Persyaratan yang Bertentangan” 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
- Instruksi yang Terlalu Samar
- Persyaratan yang Bertentangan
- Kesalahan karena Konteks yang Hilang
- Mendiagnosis dan Memperbaiki Perintah yang Buruk