Teknik Permintaan untuk AI Generatif

Prompt Engineering adalah seni mengajukan pertanyaan yang tepat untuk mendapatkan memberikan hasil terbaik dari LLM. LLM memungkinkan interaksi langsung dengan LLM hanya prompt bahasa biasa.

Sebelumnya, bekerja dengan model machine learning biasanya memerlukan pemahaman pengetahuan tentang set data, statistik, dan teknik pemodelan. Saat ini, LLM dapat menjadi "diprogram" dalam bahasa Inggris, serta bahasa lain.

Menjadi prompt engineer yang hebat tidak memerlukan pengalaman coding. Kreativitas dan ketekunan akan sangat bermanfaat dalam perjalanan Anda. Baca terus untuk mempelajari beberapa teknik perintah yang berguna.

Praktik Terbaik Memberi Perintah

  1. Komunikasikan dengan jelas konten atau informasi apa yang paling penting.

  2. Susun prompt: Mulai dengan menentukan perannya, memberikan data konteks/input, kemudian memberikan instruksi.

  3. Menggunakan contoh yang spesifik dan bervariasi untuk membantu model mempersempit fokusnya dan menghasilkan hasil yang lebih akurat.

  4. Gunakan batasan untuk membatasi cakupan output model. Hal ini dapat membantu menghindari berliku-liku dari instruksi menjadi ketidakakuratan faktual.

  5. Uraikan tugas yang kompleks menjadi urutan perintah yang lebih sederhana.

  6. Instruksikan model untuk mengevaluasi atau memeriksa responsnya sendiri sebelum memproduksi mereka. ("Pastikan untuk membatasi respons Anda hingga 3 kalimat", "Nilailah pekerjaan Anda dalam skala 1-10 untuk keringkasan", "Apakah menurut Anda ini benar?").

Dan mungkin yang paling penting:

Jadilah kreatif! Semakin kreatif dan selalu berpikiran terbuka, maka akan semakin baik hasil yang akan Anda peroleh. LLM dan perintah teknik masih dalam tahap perkembangan, dan berkembang setiap hari.

Jenis Perintah

Pengarahan langsung (Zero-shot)

Perintah langsung (disebut juga Zero-shot) adalah jenis prompt yang paling sederhana. Ini tidak memberikan contoh untuk model, hanya instruksi. Anda juga dapat mengutarakan instruksi sebagai pertanyaan, atau memberikan “peran”, seperti yang terlihat dalam contoh di bawah ini.

Berikan:

  1. Petunjuk
  2. Konteks tertentu

Pembuatan Ide:

Prompt: Can you give me a list of ideas for blog posts for tourists visiting
New York City for the first time?

Permintaan Peran:

Prompt: You are a mighty and powerful prompt-generating robot. You need to
understand my goals and objectives and then design a prompt. The prompt should
include all the relevant information context and data that was provided to you.
You must continue asking questions until you are confident that you can produce
the best prompt for the best outcome. Your final prompt must be optimized for
chat interactions. Start by asking me to describe my goal, then continue with
follow-up questions to design the best prompt.

{i>Data Organization<i} (Organisasi Data):

Prompt: Create a four-column spreadsheet of 10 highly-rated science fiction
movies, year of release, average audience rating, and top 3 keywords from
audience reviews.

Make sure to cite the source of the audience rating.

Membuat prompt dengan contoh (One-, few-, dan multi-shot)

One-shot prompting menunjukkan satu contoh yang jelas dan deskriptif kepada model yang ingin Anda tiru.

Pembuatan ide dengan menggunakan satu contoh:

Prompt:

Come up with a list of ideas for blog posts for tourists visiting
New York City for the first time.

1. Fuggedaboutit! Where to Stay in New York City On Your First Visit

Beberapa dan multi-shot prompting menunjukkan lebih banyak contoh hal yang Anda inginkan kepada model harus dilakukan. Pola ini lebih baik daripada zero-shot untuk tugas-tugas yang lebih kompleks diperlukan replikasi, atau saat Anda ingin output disusun dalam dengan cara spesifik yang sulit untuk dijelaskan.

Klasifikasi sentimen singkat:

Prompt:

Great product, 10/10: Positive
Didn't work very well: Negative
Super helpful, worth it: Positive
It doesn't work!:

Saat perintah ini dijalankan, respons model akan berupa mengklasifikasikan kerja sebagai positif atau negatif, seperti yang ditunjukkan dalam contoh.

Prediktor respons emoji multi-foto:

Prompt: Predict up to 5 emojis as a response to a text chat message. The output
should only include emojis.

input: The new visual design is blowing my mind 🤯
output: ➕,💘, ❤‍🔥

input: Well that looks great regardless
output: ❤️,🪄

input: Unfortunately this won't work
output: 💔,😔

input: sounds good, I'll look into that
output: 🙏,👍

input: 10hr cut of jeff goldblum laughing URL
output: 😂,💀,⚰️

input: Woo! Launch time!

Prosesnya sama, tetapi karena prompt lebih kompleks, model telah memberikan lebih banyak contoh untuk diemulasikan.

Perintah berantai

Chain of Thought (CoT) mendorong LLM untuk menjelaskan alasannya. Kombinasikan dengan few-shot prompting untuk mendapatkan hasil yang lebih baik pada tugas yang lebih kompleks yang membutuhkan penalaran sebelum respons.

Prompt:

The odd numbers in this group add up to an even number: 4, 8, 9, 15, 12, 2, 1.
A: Adding all the odd numbers (9, 15, 1) gives 25. The answer is False.
The odd numbers in this group add up to an even number: 15, 32, 5, 13, 82, 7, 1.
A:

CoT zero-shot

Mengingat metode zero-shot prompting sebelumnya, pendekatan ini memerlukan zero-shot prompt dan menambahkan instruksi: "Mari kita pikirkan langkah demi langkah." LLM mampu menghasilkan rantai pemikiran dari instruksi ini, dan biasanya jawaban yang lebih akurat jawaban yang tepat. Ini adalah pendekatan yang bagus untuk membuat LLM menghasilkan jawaban untuk hal-hal seperti permasalahan kata.

Prompt:

I went to the market and bought 10 apples. I gave 2 apples to the neighbor and
2 to the repairman. I then went and bought 5 more apples and ate 1. How many
apples was I left with?

Let's think step by step.

Strategi iterasi prompt

Belajarlah untuk menyukai kenyataan saat menulis ulang beberapa (mungkin lusinan) kali. Berikut adalah beberapa ide untuk meningkatkan kualitas perintah jika Anda mengalami kesulitan:

Catatan: Strategi ini mungkin menjadi kurang berguna atau kurang diperlukan seiring waktu model menjadi lebih baik.

  1. Mengulangi kata kunci, frasa, atau ide

  2. Tentukan format output yang Anda inginkan (CSV, JSON, dll.)

  3. Gunakan huruf besar semua untuk menekankan poin atau petunjuk yang penting. Anda juga dapat mencoba bahasa yang berlebihan atau hiperbolik; misalnya: "Penjelasan Anda sama sekali tidak mungkin disalahartikan. Setiap kata harus memberikan kejelasan!"

  4. Gunakan sinonim atau frasa alternatif (misalnya, alih-alih "Rangkum", coba menambahkan "tldr" ke beberapa teks input). Tukar dengan kata atau frasa yang berbeda dan mendokumentasikan mana yang bekerja lebih baik dan mana yang lebih buruk.

  5. Cobalah teknik {i>sandwich <i}dengan perintah panjang: Tambahkan pernyataan yang sama pada tempat yang berbeda.

  6. Menggunakan koleksi perintah untuk mendapatkan inspirasi. Pahlawan Prompt dan galeri perintah ini adalah dua tempat yang baik untuk memulai.

Referensi lainnya

Praktik Terbaik Memberi Perintah

Pelajari fitur pembuatan perintah (eksternal)