OpenAI
Halaman ini diterjemahkan oleh mesin. Lihat artikel asli dalam bahasa Inggris.

Praktik terbaik rekayasa prompt dengan API OpenAI

Cara memberi instruksi yang jelas dan efektif kepada model OpenAI

Diperbarui: 8 hours ago

Cara kerja rekayasa prompt

Karena cara model OpenAI dilatih, ada format prompt tertentu yang bekerja sangat baik dan menghasilkan output model yang lebih berguna. Panduan resmi rekayasa prompt dari OpenAI biasanya menjadi tempat terbaik untuk memulai kiat prompting.

Di bawah ini kami menyajikan sejumlah format prompt yang menurut kami bekerja dengan baik, tetapi silakan menjelajahi format lain yang mungkin lebih sesuai dengan tugas Anda.

Aturan Praktis dan Contoh

Catatan: “{text input here}” adalah placeholder untuk teks/konteks sebenarnya

1. Gunakan model terbaru

Untuk hasil terbaik, kami umumnya merekomendasikan penggunaan model terbaru dan paling mumpuni. Model yang lebih baru cenderung lebih mudah direkayasa prompt-nya.


Catatan: Ada beberapa perbedaan yang perlu dipertimbangkan saat melakukan prompting pada model penalaran dibandingkan dengan model GPT. Detail selengkapnya di sini.

2. Letakkan instruksi di awal prompt dan gunakan ### atau """ untuk memisahkan instruksi dan konteks

Kurang efektif ❌:

Ringkas teks di bawah ini sebagai daftar poin-poin dari hal-hal terpenting.

{text input here}

Lebih baik ✅:

Ringkas teks di bawah ini sebagai daftar poin-poin dari hal-hal terpenting.

Teks: """
{text input here}
"""

3. Jelaskan secara spesifik, deskriptif, dan sedetail mungkin tentang konteks, hasil, panjang, format, gaya, dll. yang diinginkan

Jelaskan secara spesifik tentang konteks, hasil, panjang, format, gaya, dll.

Kurang efektif ❌:

Tulis puisi tentang OpenAI. 

Lebih baik ✅:

Tulis puisi pendek yang menginspirasi tentang OpenAI, berfokus pada peluncuran produk DALL-E terbaru (DALL-E adalah model ML teks-ke-gambar) dengan gaya {famous poet}

4. Jelaskan format output yang diinginkan melalui contoh

Kurang efektif ❌:

Ekstrak entitas yang disebutkan dalam teks di bawah ini. Ekstrak 4 jenis entitas berikut: nama perusahaan, nama orang, topik spesifik, dan tema.

Teks: {text}

Tunjukkan, dan jelaskan - model merespons lebih baik ketika ditunjukkan persyaratan format yang spesifik. Ini juga memudahkan penguraian beberapa output secara terprogram dengan andal.

Lebih baik ✅:

Ekstrak entitas penting yang disebutkan dalam teks di bawah ini. Pertama ekstrak semua nama perusahaan, lalu ekstrak semua nama orang, kemudian ekstrak topik spesifik yang sesuai dengan konten, dan terakhir ekstrak tema umum yang menyeluruh

Format yang diinginkan:
Nama perusahaan: <comma_separated_list_of_company_names>
Nama orang: -||-
Topik spesifik: -||-
Tema umum: -||-

Teks: {text}

5. Mulai dengan zero-shot, lalu few-shot; jika keduanya tidak berhasil, lakukan fine-tune

✅ Zero-shot

Ekstrak kata kunci dari teks di bawah ini.

Teks: {text}

Kata kunci:

✅ Few-shot - berikan beberapa contoh

Ekstrak kata kunci dari teks terkait di bawah ini.

Teks 1: Stripe menyediakan API yang dapat digunakan developer web untuk mengintegrasikan pemrosesan pembayaran ke situs web dan aplikasi seluler mereka.
Kata kunci 1: Stripe, pemrosesan pembayaran, API, developer web, situs web, aplikasi seluler
##
Teks 2: OpenAI telah melatih model bahasa mutakhir yang sangat baik dalam memahami dan menghasilkan teks. API kami menyediakan akses ke model-model ini dan dapat digunakan untuk menyelesaikan hampir semua tugas yang melibatkan pemrosesan bahasa.
Kata kunci 2: OpenAI, model bahasa, pemrosesan teks, API.
##
Teks 3: {text}
Kata kunci 3:

✅Fine-tune: lihat praktik terbaik fine-tune di sini.

6. Kurangi deskripsi yang “berbusa” dan tidak presisi

Kurang efektif ❌:

Deskripsi untuk produk ini harus cukup singkat, hanya beberapa kalimat, dan tidak terlalu panjang.

Lebih baik ✅:

Gunakan paragraf 3 hingga 5 kalimat untuk mendeskripsikan produk ini.

7. Alih-alih hanya mengatakan apa yang tidak boleh dilakukan, katakan apa yang harus dilakukan sebagai gantinya

Kurang efektif ❌:

Berikut ini adalah percakapan antara Agen dan Pelanggan. JANGAN MINTA NAMA PENGGUNA ATAU KATA SANDI. JANGAN MENGULANG.

Pelanggan: Saya tidak bisa masuk ke akun saya.
Agen:

Lebih baik ✅:

Berikut ini adalah percakapan antara Agen dan Pelanggan. Agen akan mencoba mendiagnosis masalah dan menyarankan solusi, sambil menahan diri untuk tidak mengajukan pertanyaan apa pun terkait PII. Alih-alih meminta PII, seperti nama pengguna atau kata sandi, arahkan pengguna ke artikel bantuan www.samplewebsite.com/help/faq

Pelanggan: Saya tidak bisa masuk ke akun saya.
Agen:

8. Khusus Pembuatan Kode - Gunakan “kata pembuka” untuk mengarahkan model ke pola tertentu

Kurang efektif ❌:

# Tulis fungsi python sederhana yang
# 1. Meminta saya memasukkan angka dalam mil
# 2. Mengonversi mil ke kilometer

Dalam contoh kode di bawah ini, menambahkan “import” memberi petunjuk kepada model bahwa ia harus mulai menulis dalam Python. (Demikian pula, “SELECT” adalah petunjuk yang baik untuk awal pernyataan SQL.)

Lebih baik ✅:

# Tulis fungsi python sederhana yang
# 1. Meminta saya memasukkan angka dalam mil
# 2. Mengonversi mil ke kilometer

import

9. Gunakan fitur Generate Anything

Developer dapat menggunakan fitur ‘Generate Anything’ untuk mendeskripsikan tugas atau output bahasa alami yang diharapkan dan menerima prompt yang disesuaikan.


Pelajari selengkapnya tentang penggunaan fitur ‘Generate Anything’.

Parameter

Secara umum, kami mendapati bahwa `model` dan `temperature` adalah parameter yang paling umum digunakan untuk mengubah output model.

  1. `model` - Model berperforma lebih tinggi umumnya lebih mahal dan mungkin memiliki latensi lebih tinggi.

  2. `temperature` - Ukuran seberapa sering model menghasilkan token yang kurang mungkin. Semakin tinggi temperature, semakin acak (dan biasanya kreatif) outputnya. Namun, ini tidak sama dengan “kebenaran”. Untuk sebagian besar kasus penggunaan faktual seperti ekstraksi data dan tanya jawab yang benar, temperature 0 adalah yang terbaik.

  3. `max_completion_tokens` (panjang maksimum) - Tidak mengontrol panjang output, melainkan batas tegas untuk pembuatan token. Idealnya Anda tidak sering mencapai batas ini, karena model Anda akan berhenti saat menganggap sudah selesai, atau saat mencapai stop sequence yang Anda tentukan.

  4. `stop` (stop sequence) - Sekumpulan karakter (token) yang, ketika dihasilkan, akan menghentikan pembuatan teks.

Untuk deskripsi parameter lainnya, lihat referensi API.

Apakah artikel ini membantu?