Meskipun tidak ada cara yang benar atau salah untuk mendesain perintah, ada strategi umum yang dapat Anda gunakan untuk memengaruhi respons model. Pengujian dan evaluasi yang ketat tetap penting untuk mengoptimalkan performa model.
Model bahasa besar (LLM) dilatih dengan data teks dalam jumlah besar untuk mempelajari pola dan hubungan antar-unit bahasa. Jika diberi beberapa teks (prompt), model bahasa dapat memprediksi hal yang mungkin akan terjadi berikutnya, seperti alat pelengkapan otomatis yang canggih. Oleh karena itu, saat mendesain perintah, pertimbangkan berbagai faktor yang dapat memengaruhi prediksi model berikutnya.
Alur kerja rekayasa perintah
Rekayasa perintah adalah proses berbasis pengujian dan iterasi yang dapat meningkatkan performa model. Saat membuat perintah, penting untuk menentukan tujuan dan hasil yang diharapkan secara jelas untuk setiap perintah dan mengujinya secara sistematis untuk mengidentifikasi area peningkatan.
Diagram berikut menunjukkan alur kerja rekayasa perintah:

Cara membuat perintah yang efektif
Ada dua aspek perintah yang pada akhirnya memengaruhi efektivitasnya: konten dan struktur.
- Konten:
Untuk menyelesaikan tugas, model memerlukan semua informasi relevan yang terkait dengan tugas tersebut. Informasi ini dapat mencakup petunjuk, contoh, informasi kontekstual, dan sebagainya. Untuk mengetahui detailnya, lihat Komponen perintah.
- Struktur:
Meskipun semua informasi yang diperlukan diberikan dalam perintah, memberikan struktur informasi dapat membantu model menguraikan informasi. Hal-hal seperti pengurutan, pemberian label, dan penggunaan pembatas dapat memengaruhi kualitas respons. Untuk contoh struktur perintah, lihat Contoh template perintah.
Komponen perintah
Tabel berikut menunjukkan komponen penting dan opsional suatu perintah:
Komponen | Deskripsi | Contoh |
---|---|---|
Tujuan | Tujuan yang ingin Anda capai dengan model ini. Jelaskan secara spesifik dan sertakan tujuan utama yang ingin dicapai. Juga disebut "misi" atau "tujuan". | Tujuan Anda adalah membantu siswa mengerjakan persoalan matematika tanpa memberikan jawabannya secara langsung. |
Petunjuk | Petunjuk langkah demi langkah tentang cara melakukan tugas yang sedang dihadapi. Juga disebut "tugas", "langkah", atau "petunjuk". |
|
Komponen opsional | ||
Petunjuk sistem | Perintah teknis atau lingkungan yang dapat melibatkan pengendalian atau perubahan perilaku model dalam serangkaian tugas. Untuk banyak API model, petunjuk sistem ditentukan dalam parameter khusus. Petunjuk sistem tersedia di model Gemini 2.0 Flash dan yang lebih baru. |
Anda adalah pakar coding yang berspesialisasi dalam merender kode untuk antarmuka frontend. Saat saya menjelaskan komponen situs yang ingin saya buat, harap tampilkan HTML dan CSS yang diperlukan untuk melakukannya. Jangan berikan penjelasan untuk kode ini. Juga menawarkan beberapa saran desain UI. |
Persona | Peran atau fungsi yang dimainkan model. Juga disebut "peran" atau "visi". | Anda adalah tutor matematika yang siap membantu siswa menyelesaikan pekerjaan rumah matematika mereka. |
Batasan | Batasan yang berlaku bagi model saat membuat respons, mencakup hal-hal yang boleh dan tidak boleh dilakukan model. Juga disebut "pembatasan", "batas", atau "kontrol". | Jangan memberikan jawaban kepada siswa secara langsung. Sebagai gantinya, berikan petunjuk yang mengarahkan siswa ke langkah berikutnya dalam menyelesaikan soal. Jika siswa benar-benar kesulitan, berikan langkah-langkah mendetail untuk menyelesaikan soal tersebut. |
Nada | Nada respons. Anda juga dapat memengaruhi gaya dan nada respons dengan menentukan persona. Juga disebut "gaya", "suara", atau "suasana hati". | Respons dengan santai tetapi tetap informatif. |
Konteks | Informasi apa pun yang perlu dirujuk oleh model untuk menyelesaikan tugas yang diberikan. Juga disebut "latar belakang", "dokumen", atau "data input". | Salinan rencana pelajaran matematika milik siswa. |
Contoh few-shot | Contoh tampilan respons untuk perintah tertentu. Juga disebut "contoh" atau "sampel". | input: Saya mencoba menghitung jumlah bola golf yang dapat dimasukkan ke dalam kotak yang
memiliki volume satu meter kubik. Saya telah mengonversi satu meter kubik menjadi sentimeter kubik dan
membaginya dengan volume bola golf dalam sentimeter kubik, tetapi sistem mengatakan bahwa jawaban saya
salah.output: Bola golf berbentuk bulat dan tidak dapat dikemas ke dalam ruang dengan
efisiensi yang sempurna. Penghitungan Anda memperhitungkan efisiensi pengepakan maksimum bola. |
Langkah-langkah penalaran | Minta model untuk menjelaskan langkah-langkah penalarannya. Hal ini terkadang dapat meningkatkan kemampuan penalaran model. Juga disebut "langkah-langkah berpikir". | Jelaskan penalaran Anda langkah demi langkah. |
Format respons | Format yang Anda inginkan untuk respons yang diberikan. Misalnya, Anda dapat meminta model untuk menghasilkan respons dalam JSON, tabel, Markdown, paragraf, daftar berbutir, kata kunci, presentasi singkat, dan sebagainya. Juga disebut "struktur", "presentasi", atau "tata letak". | Format respons Anda dalam Markdown. |
Rangkuman | Pengulangan singkat poin-poin utama perintah, terutama batasan dan format respons, di akhir perintah. | Jangan memberikan jawaban langsung, tetapi berikan saja petunjuknya. Selalu format respons Anda dalam format Markdown. |
Pengaman | Memastikan pertanyaan sesuai dengan tujuan bot. Juga disebut "aturan keselamatan". | T/A |
Bergantung pada tugas tertentu yang sedang ditangani, Anda dapat memilih untuk menyertakan atau mengecualikan beberapa komponen opsional. Anda juga dapat menyesuaikan urutan komponen dan memeriksa pengaruhnya terhadap respons.
Contoh template perintah
Template perintah berikut menunjukkan contoh tampilan perintah yang terstruktur dengan baik:
<OBJECTIVE_AND_PERSONA> You are a [insert a persona, such as a "math teacher" or "automotive expert"]. Your task is to... </OBJECTIVE_AND_PERSONA> <INSTRUCTIONS> To complete the task, you need to follow these steps: 1. 2. ... </INSTRUCTIONS> ------------- Optional Components ------------ <CONSTRAINTS> Dos and don'ts for the following aspects 1. Dos 2. Don'ts </CONSTRAINTS> <CONTEXT> The provided context </CONTEXT> <OUTPUT_FORMAT> The output format must be 1. 2. ... </OUTPUT_FORMAT> <FEW_SHOT_EXAMPLES> Here we provide some examples: 1. Example #1 Input: Thoughts: Output: ... </FEW_SHOT_EXAMPLES> <RECAP> Re-emphasize the key aspects of the prompt, especially the constraints, output format, etc. </RECAP> |
Praktik terbaik
Praktik terbaik desain perintah mencakup hal berikut:
- Berikan petunjuk yang jelas dan spesifik
- Menyertakan contoh few-shot
- Menetapkan peran
- Menambahkan informasi kontekstual
- Menggunakan petunjuk sistem
- Perintah struktur
- Memberi petunjuk kepada model untuk menjelaskan penalarannya
- Membagi tugas yang kompleks
- Bereksperimen dengan parameter value
- Strategi iterasi prompt
Langkah berikutnya
- Pelajari contoh perintah di Galeri perintah.
- Pelajari cara mengoptimalkan perintah untuk digunakan dengan model Google menggunakan pengoptimal perintah Vertex AI (Pratinjau).
- Pelajari praktik terbaik responsible AI dan filter keamanan Vertex AI.