[Terjemahan] Strategi rekayasa prompt untuk mendapatkan hasil yang lebih baik dari Claude-3 (feat. Anthropic)
(discuss.pytorch.kr)Pengantar
Sekitar pertengahan tahun lalu, saya pernah menerjemahkan dan merangkum 6 strategi penulisan prompt untuk mendapatkan jawaban yang lebih baik saat menggunakan model ChatGPT dari OpenAI. Namun, belakangan ini saya juga mulai menggunakan Claude-3 secara serius, dan saat mencarinya saya menemukan bahwa nuansa prompt contoh yang digunakan terasa sedikit berbeda.
Karena penasaran apakah memang ada perbedaan tertentu, saya mencari referensi dan menemukan dokumen prompt engineering yang dipublikasikan oleh Anthropic. Setelah membacanya secara garis besar, saya merasa banyak bagian yang tumpang tindih dengan 6 strategi penulisan prompt yang sebelumnya dirangkum OpenAI, jadi alih-alih merangkum keseluruhan isi dokumennya, saya meminta model pesaingnya (...) yaitu ChatGPT untuk membuat ringkasan singkat.
Silakan lihat dulu, dan untuk bagian yang masih kurang, mohon baca juga seri Praktik terbaik GPT dari OpenAI: gambaran umum. Enam strategi penulisan prompt untuk mendapatkan jawaban yang lebih baik (Six strategies for getting better results) bersama dokumen asli dari Anthropic. :D
Pengenalan
Dokumen ini membahas strategi prompt engineering untuk Claude-3. Dengan menggunakan strategi-strategi ini, Anda dapat meningkatkan performa Claude-3 dan menyesuaikan responsnya secara halus agar cocok dengan kasus penggunaan tertentu. Teknik-teknik ini tidak wajib, tetapi dapat membantu meningkatkan kualitas input dan output Claude.
Prompt engineering adalah ilmu eksperimental yang mencakup proses mengulangi dan menguji prompt untuk mengoptimalkan performa. Artinya, prompt engineering dilakukan melalui pengembangan dan evaluasi berulang, mulai dari ekstraksi entitas, tanya jawab, dan peringkasan teks hingga tugas-tugas yang lebih kompleks. Proses ini mencakup pembuatan berbagai test case, pengembangan prompt awal, lalu evaluasi dan revisi terhadap respons model.
Dibandingkan dengan Claude dan model AI lainnya, Claude-3 menonjol karena performanya dapat ditingkatkan dengan berbagai teknik prompt engineering, seperti memberikan peran tertentu atau menggunakan tag XML. Teknik-teknik ini membantu Claude memberikan output yang lebih akurat dan konsisten.
Teknik utama
Berikut adalah teknik-teknik utama yang dijelaskan dalam dokumen ini:
Bersikap jelas dan langsung (Be clear & direct)
Berikan instruksi dan konteks yang jelas kepada Claude agar ia memahami respons seperti apa yang Anda inginkan:
- Berikan konteks dan instruksi yang rinci: Untuk menjalankan tugas dengan tepat, Claude perlu diberi konteks sebanyak mungkin serta instruksi yang detail. Misalnya, dalam permintaan untuk menghapus informasi pribadi, Anda perlu menjelaskan secara spesifik informasi apa yang harus dihapus dan bagaimana cara menghapusnya.
| Role | Prompt |
|---|---|
| User | We want to anonymize some text by removing all personally identifiable information (PII). |
Please follow these steps:
- Replace all instances of names, phone numbers, and home and email addresses with 'XXX'.
- If the text contains no PII, copy it word-for-word without replacing anything.
- Output only the processed text, without any additional commentary.
Here is the text to process: {{TEXT}}|
- Gunakan daftar bernomor atau bullet: Saat memberikan instruksi untuk tugas yang kompleks, memisahkan instruksi dengan daftar bernomor atau bullet dapat membantu Claude memahami dan mengikutinya dengan lebih baik. Misalnya, dalam instruksi untuk mengubah satu bab buku pelajaran menjadi rencana pembelajaran, tiap langkah dapat dipisahkan dengan jelas.
| Role | Prompt |
|---|---|
| User | Your task is turn the given textbook chapter into a comprehensive lesson plan. To do this task, you should: |
- Extract and summarize key concepts by section
- Convert each extracted concept into a 30 minute lesson plan, including a list of questions to check comprehension.
- Design an accompanying homework assignment that reinforces learnings from this chapter.
Here is the chapter:
{{CHAPTER}}|
- Nyatakan secara spesifik apa yang Anda inginkan: Jika Anda menginginkan jawaban yang tegas atau posisi tertentu dari Claude, nyatakan hal itu secara eksplisit. Misalnya, untuk pertanyaan “Siapa pemain basket terbaik sepanjang masa?”, Anda dapat secara spesifik memintanya memilih satu pemain saja.
| Role | Prompt |
|---|---|
| User | (contoh buruk) Who is the best basketball player of all time? |
| (contoh baik) Who is the best basketball player of all time? Yes, there are differing opinions, but if you absolutely had to pick one player, who would it be? | |
| Assistant (Claude's response) | There is no definitive answer to who is the best basketball player of all time, as reasonable people can disagree on this. However, if forced to choose just one player, I would say Michael Jordan is most commonly considered the GOAT (Greatest Of All Time) based on his exceptional talent, championships, awards, and cultural impact on the game of basketball. But others like LeBron James, Kareem Abdul-Jabbar, Wilt Chamberlain and Bill Russell are also frequently mentioned in the debate. It's a subjective call without a clear consensus. |
- Aturan emas prompt yang jelas: Tunjukkan prompt Anda kepada orang lain dan periksa apakah mereka bisa menjalankannya sesuai instruksi. Hal yang sama juga berlaku untuk Claude; ini membantu memverifikasi apakah instruksinya sudah cukup jelas.
Memberikan contoh (Use examples)
Sertakan contoh dalam prompt untuk menjelaskan format atau gaya output yang Anda inginkan.
-
Mengapa menggunakan contoh?: Dengan menggunakan contoh, Claude dapat lebih memahami instruksi yang diberikan dan menangkap format output yang diinginkan dengan lebih jelas. Ini dapat membantu model menghasilkan hasil yang lebih akurat dan konsisten.
-
Membuat contoh yang efektif: Contoh yang efektif harus memperlihatkan input dan output yang diharapkan secara jelas. Contoh juga harus mencerminkan kasus penggunaan nyata serta memuat informasi yang cukup agar Claude dapat belajar darinya.
| Role | Content |
|---|---|
| User | Saya akan memberikan beberapa kutipan. Tolong ekstrak penulis dari blok kutipan. |
Berikut contohnya:
Quote: "When the reasoning mind is forced to confront the impossible again and again, it has no choice but to adapt." ― N.K. Jemisin, The Fifth Season Author: N.K. Jemisin
Quote: "Some humans theorize that intelligent species go extinct before they can expand into outer space. If they're correct, then the hush of the night sky is the silence of the graveyard." ― Ted Chiang, Exhalation Author:| |Assistant (respons Claude)|Ted Chiang|
- Memformat output: Dengan menggunakan contoh untuk menentukan format output yang diinginkan, Anda dapat membantu Claude memberikan hasil dengan cara yang dapat diprediksi dan konsisten. Ini sangat berguna terutama untuk tugas seperti ekstraksi data atau pembuatan laporan.
| Role | Content |
|---|---|
| User | `` |
| Text: Sarah Martinez, a dedicated nurse, was known for her compassionate care at the local hospital. David Thompson, an innovative software engineer, worked tirelessly on groundbreaking projects. | |
| Output: |
- Sarah Martinez [NURSE]
- David Thompson [SOFTWARE ENGINEER] ``
`` Text: Chef Oliver Hamilton has transformed the culinary scene with his farm-to-table restaurant. Just down the street, you'll find the library, where head librarian Elizabeth Chen has worked diligently to create a welcoming space for all. Output:
- Oliver Hamilton [CHEF]
- Elizabeth Chen [LIBRARIAN] ``
Text: At the town's bustling farmer's market, you'll find Laura Simmons, a passionate organic farmer known for her delicious produce. In the community center, Kevin Alvarez, a skilled dance instructor, has brought the joy of movement to people of all ages. Output:| |Assistant (respons Claude)|1. Laura Simmons [ORGANIC FARMER] 2. Kevin Alvarez [DANCE INSTRUCTOR]|
-
Hal yang perlu diperhatikan: Saat menggunakan contoh, berhati-hatilah agar tidak terlalu bergantung pada data yang terlalu terbatas, dan cegah Claude agar tidak terlalu bergantung hanya pada pola tertentu.
-
Iterasi dan revisi: Jika Anda tidak mendapatkan hasil yang diinginkan dari contoh yang pertama kali diberikan, Anda harus memperbaiki contoh tersebut atau menambahkan contoh baru untuk melakukan peningkatan secara bertahap. Melalui proses ini, output model dapat terus ditingkatkan.
-
Analisis hasil: Carilah pola dalam jawaban Claude yang berbeda dari yang Anda inginkan. Ini dapat membantu mengidentifikasi bagian yang contoh-contohnya kurang jelas atau berpotensi menyesatkan, atau bagian yang mungkin akan terbantu dengan lebih banyak contoh.
-
Tambahkan contoh: Jika Claude mengalami kesulitan dengan jenis input tertentu, berikan contoh tambahan yang secara spesifik menangani skenario tersebut.
-
Revisi contoh yang ada: Terkadang, sedikit revisi pada contoh dapat menghasilkan perbedaan besar. Bereksperimenlah dengan berbagai ungkapan, format, atau struktur untuk mengetahui mana yang paling efektif.
-
Dapatkan bantuan Claude: Menulis contoh yang baik memang sulit! Anda dapat meminta Claude mengevaluasi keragaman atau relevansi contoh untuk tugas yang diberikan, atau membuat contoh baru dengan mendapatkan kumpulan contoh yang sudah ada sebagai referensi.
-
Memberi Claude peran (Give Claude a role)
Untuk meningkatkan performa pada setiap use case, berikan Claude peran tertentu seperti seorang ahli:
-
Cara kerja role prompting: Dengan memberi Claude peran yang spesifik, Anda dapat membantunya memahami dan merespons situasi atau masalah tertentu dengan lebih akurat. Misalnya, jika Claude diberi peran sebagai 'ahli matematika' untuk menyelesaikan soal matematika, ia dapat menunjukkan performa yang lebih baik.
-
Kapan menggunakan role prompting: Role prompting sangat baik digunakan terutama saat mengerjakan tugas yang teknis atau kompleks, atau ketika diperlukan gaya komunikasi tertentu. Metode ini juga membantu meningkatkan performa dasar Claude.
Sebagai contoh, ketika harus menyelesaikan soal seperti There are two ducks in front of a duck, two ducks behind a duck and a duck in the middle. How many ducks are there?, Anda dapat mencoba pendekatan berikut:
| Role | Content |
|---|---|
| User | You are a master logic bot designed to answer complex logic problems. Solve this logic puzzle. There are two ducks in front of a duck, two ducks behind a duck and a duck in the middle. How many ducks are there? |
| Assistant (respons Claude) | [Automatically outputting thinking step by step as part of its training...] Without additional clarification or assumptions, the logic puzzle does not provide enough information to determine the exact number of ducks. The answer could range from a minimum of 3 ducks to a maximum of 5 ducks, depending on the interpretation of the given information. |
- Contoh role prompting: Ada contoh yang memberi Claude peran berbeda-beda (guru taman kanak-kanak, profesor universitas) untuk menjelaskan 'mengapa langit berwarna biru' kepada audiens yang berbeda. Sesuai dengan setiap peran, gaya penjelasan Claude pun berubah.
| Peran | Konten |
|---|---|
| Pengguna | Anda adalah seorang guru taman kanak-kanak. Jelaskan secara singkat mengapa langit berwarna biru kepada murid-murid Anda. |
| Asisten (respons Claude) | Pernahkah kalian bertanya-tanya mengapa langit terlihat begitu indah dan biru? Alasannya adalah karena sinar matahari! Saat sinar matahari menembus atmosfer Bumi, sinar itu mengenai banyak molekul gas kecil di udara. Warna biru dalam sinar matahari tersebar dan memantul ke segala arah oleh molekul-molekul ini. Itulah yang membuat langit tampak biru di mata kita! Menarik, bukan? Langit biru cerah itu seperti lukisan besar penuh warna dari alam khusus untuk kita. |
| Peran | Konten |
|---|---|
| Pengguna | Anda adalah seorang profesor fisika tingkat pascasarjana. Jelaskan secara singkat mengapa langit berwarna biru kepada mahasiswa Anda. |
| Asisten (respons Claude) | Langit tampak biru karena fenomena hamburan Rayleigh dari sinar matahari oleh molekul-molekul di atmosfer Bumi. Sinar matahari, yang tersusun dari spektrum panjang gelombang, berinteraksi dengan molekul-molekul gas di atmosfer. Panjang gelombang cahaya tampak yang lebih pendek, yang sesuai dengan warna biru dan ungu, dihamburkan lebih efisien oleh molekul-molekul ini dibandingkan panjang gelombang yang lebih panjang. |
Hamburan selektif panjang gelombang biru yang lebih pendek ke segala arah oleh molekul-molekul atmosfer inilah yang menyebabkan langit tampak biru ketika dilihat dari permukaan Bumi. Panjang gelombang yang lebih panjang seperti merah dan oranye, karena lebih sedikit dihamburkan, cenderung melewati atmosfer secara lebih langsung, sehingga menimbulkan rona kemerahan yang kita lihat saat matahari terbit dan terbenam ketika sinar matahari harus menempuh lapisan atmosfer yang lebih tebal.|
- Tips prompting peran yang efektif: Saat memberikan peran kepada Claude, penting untuk menyediakan konteks dan informasi peran yang spesifik. Anda perlu bereksperimen dengan berbagai peran dan prompt untuk menemukan pendekatan yang optimal.
Gunakan tag XML (Use XML tags)
Anda dapat menggunakan tag XML untuk menyusun prompt dan respons agar lebih jelas:
-
Apa itu tag XML?: Tag XML digunakan untuk membungkus isi dalam tag kurung seperti
isi konten. Tag-tag ini membantu memisahkan instruksi, contoh, atau data input sehingga Claude dapat memahami konteks dengan lebih baik dan menghasilkan output yang lebih akurat. Untuk nama tag, tidak ada tag XML standar tertentu yang membuat Claude bekerja secara khusus lebih baik. Sebagai contoh,bekerja sama baiknya dengan. Namun, saat menggunakan fitur pemanggilan fungsi, Anda harus menggunakan nama tag tertentu. -
Mengapa menggunakan tag XML: Dengan menggunakan tag XML, Anda dapat memisahkan berbagai bagian prompt dengan jelas untuk mendorong respons yang lebih akurat. Ini sangat berguna terutama saat menangani prompt yang kompleks atau beragam input.
-
Cara menggunakan tag XML: Anda dapat menggunakan tag XML untuk memisahkan instruksi, konten, dan contoh, dan saat menangani templat prompt yang menyertakan input variabel, Anda juga dapat menggunakan tag XML untuk menentukan lokasi penyisipan konten:
| Peran | Konten |
|---|---|
| Pengguna | Please analyze this document and write a detailed summmary memo according to the instructions below, following the format given in the example: |
| `` | |
| {{DOCUMENT}} | |
| `` |
{{DETAILED_INSTRUCTIONS}}
{{EXAMPLE}}|
Berikut adalah contoh input variabel tertentu:
| Peran | Konten |
|---|---|
| Pengguna | I will tell you the name of an animal. Please respond with the noise that animal makes. |
{{ANIMAL}} |
Ini juga digunakan saat meminta output terstruktur:
| Peran | Konten |
|---|---|
| Pengguna | Please extract the key details from the following email and return them in XML tags: |
- Sender name in `` tags
- Main topic in `` tags
- Any deadlines or dates mentioned in `` tags
`` From: John Smith To: Jane Doe Subject: Project X Update
Hi Jane,
I wanted to give you a quick update on Project X. We've made good progress this week and are on track to meet the initial milestones. However, we may need some additional resources to complete the final phase by the August 15th deadline.
Can we schedule a meeting next week to discuss the budget and timeline in more detail?
Thanks, John ``|
Anda mungkin akan menerima jawaban seperti berikut:
| Peran | Konten |
|---|---|
| Asisten (respons Claude) | John Smith |
Project X Update |
|
| ``August 15th | |
| ` |
- Praktik terbaik penggunaan XML: Untuk memaksimalkan penggunaan tag XML, ingat tip berikut:
-
Gunakan nama tag yang deskriptif dan mencerminkan konten yang ada di dalam tag, seperti
,, atau ``. -
Pertahankan konsistensi nama tag di seluruh prompt, dan tag harus digunakan berpasangan antara tag pembuka
dan tag penutup. -
Anda dapat menyarangkan tag bila diperlukan, tetapi tergantung pada kompleksitasnya, kinerja dapat menurun jika ada lebih dari 5 lapisan sarang.
-
Merangkai prompt (Chain prompts)
Dapatkan hasil yang lebih baik dengan membagi tugas yang kompleks menjadi langkah-langkah yang lebih kecil dan lebih mudah dikelola:
-
Apa itu prompt chaining? (What is prompt chaining?): Prompt chaining adalah metode memproses tugas secara berurutan dengan menggunakan satu output sebagai input berikutnya untuk mencapai tujuan yang kompleks. Pendekatan ini membantu meningkatkan akurasi dan konsistensi.
-
Kapan menggunakan prompt chaining (When to use prompt chaining): Jika tugas memerlukan beberapa langkah atau melibatkan instruksi yang kompleks, Anda dapat menggunakan prompt chaining untuk meningkatkan performa di setiap langkah.
-
Tips untuk penggunaan prompt chaining yang efektif (Tips for effective prompt chaining): Penting untuk menjaga setiap sub-tugas tetap sederhana dan jelas, serta menggunakan tag XML untuk menyusun data.
-
Contoh (Examples): Disajikan cara melakukan tugas seperti menghasilkan jawaban menggunakan dokumen dan kutipan, atau mengidentifikasi kesalahan tata bahasa lalu memverifikasinya, dengan prompt chaining:
Contoh: Menjawab pertanyaan menggunakan dokumen dan kutipan (quotes)
- Saat pertanyaan diberikan bersama dokumen, minta Claude menghasilkan jawaban dengan menggunakan kutipan dari dalam dokumen.
Prompt 1. Mengekstrak kutipan (quotes)
| Role | Content |
|---|---|
| User | Here is a document, in `` XML tags: |
{{DOCUMENT}}
Please extract, word-for-word, any quotes relevant to the question {{QUESTION}}. Please enclose the full list of quotes in `` XML tags. If there are no quotes in this document that seem relevant to this question, please say "I can't find any relevant quotes".|
Prompt 2. (Menjawab dengan menggunakan output {{QUOTES}} dari Prompt 1)
| Role | Content |
|---|---|
| User | I want you to use a document and relevant quotes from the document to answer a question. |
| Here is the document: | |
| `` | |
| {{DOCUMENT}} | |
| `` |
Here are direct quotes from the document that are most relevant to the question:
{{QUOTES}}
Please use these to construct an answer to the question " {{QUESTION}}"
Ensure that your answer is accurate and doesn't contain any information not directly supported by the quotes.|
Membiarkan Claude berpikir (Let Claude think)
Anda dapat meningkatkan kualitas output Claude dengan mendorong pemikiran langkah demi langkah:
- Menangani pertanyaan kompleks: Saat Claude menghadapi masalah yang kompleks, memecah masalah tersebut dan mendekatinya langkah demi langkah dapat menghasilkan jawaban yang lebih rinci dan akurat. Ini terutama berguna untuk masalah yang membutuhkan pemikiran logis atau analitis.
| Role | Content |
|---|---|
| User | Use the following clues to answer the multiple-choice question below, using this procedure: |
- Go through the clues one by one and consider whether each is potentially relevant
- Combine the relevant clues to reason out the answer to the question
- Map the answer to one of the multiple choice options: (a), (b), or (c)
Clues:
- Miss Scarlett was the only person in the lounge.
- The person with the pipe was in the kitchen.
- Colonel Mustard was the only person in the observatory.
- Professor Plum was not in the library nor the billiard room.
- The person with the candlestick was in the observatory.
Question: Was Colonel Mustard in the observatory with the candlestick? (a) Yes; Colonel Mustard was in the observatory with the candlestick (b) No; Colonel Mustard was not in the observatory with the candlestick (c) Unknown; there is not enough information to determine whether Colonel Mustard was in the observatory with the candlestick |
-
Cara membuat Claude berpikir langkah demi langkah: Pengguna dapat menyertakan instruksi seperti “berpikirlah langkah demi langkah” dalam prompt agar Claude mendekati masalah secara analitis. Dengan begitu, Claude akan menjelaskan tiap langkah sambil mencapai kesimpulan akhir.
-
Menangkap proses berpikir: Untuk memvisualisasikan proses berpikir, Anda dapat menggunakan tag XML agar proses berpikir Claude dan jawaban akhirnya terpisah dengan jelas. Ini membantu pengguna memahami proses penalaran Claude dengan lebih jelas.
| Role | Content |
|---|---|
| User | [Rest of prompt] Before answering the question, please think about it step-by-step within tags. Then, provide your final answer within tags. |
| Assistant (prefill) | `` |
(Ini menggunakan teknik prefilling respons yang akan kita lihat di bawah.)
| Role | Konten |
|---|---|
| Assistant (respons Claude) | [Menalar masalah langkah demi langkah] |
| `` |
[Jawaban akhir]|
- Hal yang perlu dipertimbangkan: Saat menggunakan teknik ini, output Claude bisa menjadi lebih panjang sehingga waktu respons dapat bertambah. Karena itu, sebelum menggunakannya, Anda perlu mempertimbangkan karakteristik ini dan memakainya dalam situasi yang tepat.
Mengisi awal respons Claude (Prefill Claude's response)
Untuk mengarahkan output ke arah yang diinginkan, Anda dapat memulai dengan mengisi terlebih dahulu bagian awal respons Claude:
- Alasan mengisi awal respons Claude: Teknik ini berguna ketika pengguna ingin respons mengikuti format atau isi tertentu. Misalnya, Anda dapat menyusun informasi sesuai format yang telah ditentukan sebelumnya, atau membuat respons dimulai dengan kata atau frasa tertentu agar konsistensi jawaban tetap terjaga. Dalam kasus seperti di bawah ini, dengan mengisi awal respons yang dimulai dengan
{, Anda dapat mendorong Claude untuk menjawab dalam format JSON.
| Role | Good Prompt |
|---|---|
| User | Please extract the name, size, price, and color from this product description and output it within a JSON object. |
The SmartHome Mini is a compact smart home assistant available in black or white for only $49.99. At just 5 inches wide, it lets you control lights, thermostats, and other connected devices via voice or app—no matter where you place it in your home. This affordable little hub brings convenient hands-free control to your smart devices.|
|Assistant (prefill)|{|
Respons Claude adalah sebagai berikut.
| Role | Respons |
|---|---|
| Assistant (respons Claude) | "name": "SmartHome Mini", |
| "size": "5 inches wide", | |
| "price": "$49.99", | |
| "colors": [ | |
| "black", | |
| "white" | |
| ] | |
| } |
- Bagaimana cara mengisi awal respons Claude?: Pengguna dapat menetapkan arah respons dengan memberikan teks awal kepada Claude. Metode ini sangat berguna terutama dalam sistem otomatis melalui API, dan memungkinkan Claude memberikan informasi yang dibutuhkan secara akurat dalam format data terstruktur.
Mengontrol format output (Control output format)
Anda dapat menentukan format output yang diinginkan untuk memastikan konsistensi dan keterbacaan:
- Menentukan format yang diinginkan: Jika pengguna menentukan format output yang spesifik kepada Claude, konsistensi dan akurasi hasil dapat ditingkatkan. Ini merupakan elemen yang sangat penting terutama saat pemrosesan data atau penulisan laporan, sehingga pedoman format yang jelas sangat dibutuhkan. Misalnya, Anda dapat mengatur agar respons diberikan dalam berbagai format seperti JSON, XML, HTML, atau Markdown. Dengan memberikan pedoman format yang jelas kepada Claude, Anda dapat menjamin format output yang konsisten.
| Role | Content |
|---|---|
| User | Please write a haiku about a cat. Use JSON format with the keys "first_line", "second_line", and "third_line". |
| Assistant (Claude's response) | { |
| "first_line": "Soft furry feline", | |
| "second_line": "Napping in the warm sunlight", | |
| "third_line": "Purring contentedly" | |
| } |
- Mengisi awal respons: Dengan mengisi terlebih dahulu bagian awal respons, Anda dapat mendorong Claude untuk menghasilkan konten yang sesuai dengan format yang ditentukan. Metode ini sangat berguna terutama saat menggunakan format data terstruktur.
| Role | Konten |
|---|---|
| User | Please generate a recipe for chocolate chip cookies in JSON format. |
| Assistant (prefill) | { |
| Assistant (Claude's response) | "title": "Chocolate Chip Cookies", |
| "ingredients": [ | |
| "2 1/4 cups all-purpose flour", | |
| "1 tsp baking soda", | |
| "1 tsp salt", | |
| "1 cup unsalted butter, softened", | |
| "3/4 cup granulated sugar", | |
| "3/4 cup brown sugar", | |
| "1 tsp vanilla extract", | |
| "2 large eggs", | |
| "2 cups semisweet chocolate chips" | |
| ], | |
| "instructions": [ | |
| "Preheat the oven to 375°F (190°C) and line baking sheets with parchment paper.", | |
| "In a medium bowl, whisk together the flour, baking soda, and salt. Set aside.", | |
| "In a large bowl, beat the butter and sugars with an electric mixer until light and fluffy, about 2-3 minutes.", | |
| "Beat in the vanilla and eggs one at a time until well combined.", | |
| "Gradually stir the flour mixture into the butter mixture until just combined.", | |
| "Fold in the chocolate chips.", | |
| "Drop rounded tablespoons of the dough onto the prepared baking sheets, about 2 inches apart.", | |
| "Bake for 9-11 minutes, until the edges are golden brown.", | |
| "Allow the cookies to cool on the baking sheets for 5 minutes before transferring to a wire rack to cool completely." | |
| ], | |
| "yield": "About 3 dozen cookies" | |
| } |
- Menyediakan contoh: Anda dapat memberikan contoh untuk menyampaikan format keluaran yang tepat dengan lebih jelas. Ini membantu Claude memahami persyaratan dengan lebih baik dan menghasilkan respons dalam format yang sesuai, terutama berguna untuk tugas yang memerlukan format kompleks.
| Role | Konten |
|---|---|
| User | Your task is to write a poem. Here are some examples of ideal formatting for the poem: |
`` Title: "Autumn Leaves" Verse 1: Crisp autumn leaves dance In the gentle, chilly breeze A colorful sight
Verse 2: Red, orange, and gold Painting the world with beauty Before winter comes ``
`` Title: "Moonlit Night" Verse 1: Moonlight casts shadows Across the tranquil garden A peaceful retreat
Verse 2: Stars twinkle above As crickets sing their nightsong Nature's lullaby ``
Now, please write a poem about a sunset, following the formatting of the examples above.| |Assistant (prefill)|``| |Assistant (Claude's response)|Title: "Sunset Symphony" Verse 1: Fiery sun descends Painting the sky with wonder A masterpiece forms
Verse 2: Pinks, purples, and reds Blending in pure harmony Day bids night hello ``|
- Tips untuk mengontrol keluaran: Untuk kontrol keluaran yang efektif, Anda perlu memberikan beragam contoh dan instruksi yang jelas. Berikan sebanyak mungkin jenis contoh, tekankan format yang diinginkan, dan penting untuk menemukan metode terbaik melalui eksperimen. Melalui proses ini, Anda dapat mencoba mengombinasikan berbagai teknik untuk memperoleh hasil optimal sekaligus terus meningkatkan kinerja Claude.
Meminta Claude menulis ulang (Ask Claude for rewrites)
Beri tahu Claude bagian mana yang perlu direvisi dengan pena merah (rubric) agar Claude dapat mengulangi dan memperbaiki keluarannya:
-
Alasan meminta penulisan ulang: Ketika respons awal Claude tidak akurat atau belum memenuhi harapan, Anda dapat meminta penulisan ulang untuk meningkatkan hasilnya. Pengguna dapat memperjelas format, gaya, atau detail isi tertentu agar Claude merespons dengan lebih tepat.
-
Cara meminta penulisan ulang: Melalui API, sertakan teks yang sebelumnya telah dihasilkan lalu tambahkan instruksi spesifik untuk penulisan ulang. Misalnya, Anda dapat meminta agar sebuah paragraf ditulis ulang dengan fokus pada topik tertentu.
| Role | Prompt |
|---|---|
| User | Here's a paragraph: |
| `` | |
| {{PARAGRAPH}} | |
| `` |
I'd like you to rewrite it using the following instructions:
{{INSTRUCTIONS}}
Please put your rewrite in tags.| |Assistant (prefill)||
- Menulis instruksi penulisan ulang yang efektif: Instruksi untuk penulisan ulang harus jelas dan spesifik. Anda perlu menyertakan format, nada, gaya, atau informasi tambahan yang diinginkan agar Claude dapat memahami dengan tepat apa yang diharapkan.
| Role | Prompt |
|---|---|
| User | Tell me about all the ways I can get fitter. |
| Assistant (respons Claude) | Here are some ways you can get fitter: [respons bergaya daftar] |
| User | Rewrite this as a single paragraph of text, focusing on the most effective strategies. |
| Assistant (respons Claude) | If you're looking to get fitter, some of the most effective strategies include: [respons singkat bergaya paragraf] |
- Proses penulisan ulang berulang: Terkadang, sulit mendapatkan hasil yang sempurna hanya dengan satu kali penulisan ulang. Dalam situasi seperti ini, Anda dapat secara bertahap meningkatkan hasil melalui beberapa kali penulisan ulang, serta memberikan umpan balik di setiap tahap agar Claude dapat mempelajari preferensi pengguna.
Tips jendela konteks panjang (Long context window tips)
Anda dapat mengoptimalkan prompt agar memanfaatkan jendela konteks panjang Claude:
Berikut adalah penjelasan terperinci untuk setiap bagian dari dokumen "Tips jendela konteks panjang (Long Context Window Tips)":
- Menangani dokumen panjang (Handling Long Documents): Saat menangani dokumen panjang, informasi penting sebaiknya ditempatkan di bagian awal dokumen, dan pertanyaan diletakkan di bagian akhir dokumen. Dengan begitu, Claude dapat memproses informasi yang diperlukan secara efektif di seluruh dokumen dan memberikan jawaban yang sesuai.
Here are some documents for you to reference for your task:
(a unique identifying source for this item - could be a URL, file name, hash, etc)
(the text content of the document - could be a passage, web page, article, etc)
(a unique identifying source for this item - could be a URL, file name, hash, etc)
(the text content of the document - could be a passage, web page, article, etc)
...
[Rest of prompt]
-
Penempatan dokumen-pertanyaan (Document-query Placement): Pertanyaan yang terkait dengan dokumen harus ditempatkan setelah data dokumen diberikan. Struktur ini memungkinkan Claude merujuk ke seluruh dokumen untuk memberikan jawaban yang lebih akurat.
-
Tips menulis tanya jawab dokumen (Tips for Document Q&A): Saat mengerjakan tugas tanya jawab berbasis dokumen, tempatkan pertanyaan di akhir dokumen, lalu minta Claude menemukan kutipan yang relevan dan mencerminkannya dalam jawaban. Ini membantu meningkatkan akurasi hasil.
| Role | Content |
|---|---|
| User | I'm going to give you a document. Read the document carefully, because I'm going to ask you a question about it. Here is the document: {{TEXT}} |
First, find the quotes from the document that are most relevant to answering the question, and then print them in numbered order in `` tags. Quotes should be relatively short. If there are no relevant quotes, write "No relevant quotes" instead.
Then, answer the question in `` tags. Do not include or reference quoted content verbatim in the answer. Don't say "According to Quote [1]" when answering. Instead make references to quotes relevant to each section of the answer solely by adding their bracketed numbers at the end of relevant sentences.
Thus, the format of your overall response should look like what's shown between the `` tags. Make sure to follow the formatting and spacing exactly.
[Examples of question + answer pairs, with answers written exactly like how Claude's output should be structured]
If the question cannot be answered by the document, say so.
Here is the first question: {{QUESTION}}|
- Pembuatan soal pilihan ganda (Multiple Choice Question Generation): Saat membuat soal pilihan ganda berdasarkan dokumen, sediakan contoh soal dan jawaban yang didasarkan pada isi dokumen. Ini membantu Claude mempertahankan format dan isi yang konsisten saat membuat soal.
| Peran | Konten |
|---|---|
| Pengguna | Tugas Anda adalah membuat beberapa soal pilihan ganda berdasarkan konten dari dokumen berikut: |
| `` | |
| {{DOCUMENT}} | |
| `` |
Berikut adalah beberapa contoh soal pilihan ganda dan jawabannya berdasarkan bagian lain dari teks: `` Q1: [Contoh pertanyaan 1, dibuat dari informasi di dalam dokumen] A. [Opsi jawaban A] B. [Opsi jawaban B] C. [Opsi jawaban C] D. [Opsi jawaban D] Jawaban: [Huruf jawaban yang benar]
Q2: [Contoh pertanyaan 2, dibuat dari informasi di dalam dokumen] A. [Opsi jawaban A] B. [Opsi jawaban B] C. [Opsi jawaban C] D. [Opsi jawaban D] Jawaban: [Huruf jawaban yang benar] ``
Instruksi:
- Buat 5 soal pilihan ganda berdasarkan teks yang diberikan.
- Setiap pertanyaan harus memiliki 4 opsi jawaban (A, B, C, D).
- Tunjukkan jawaban yang benar untuk setiap pertanyaan.
- Pastikan pertanyaan relevan dengan teks dan semua opsi jawaban terdengar masuk akal.|
Bacaan lebih lanjut
https://docs.anthropic.com/claude/docs/prompt-engineering
Tulisan ini disusun berdasarkan artikel yang dirangkum dengan model GPT, sehingga mungkin ada bagian yang diringkas dengan cara yang berbeda dari isi atau maksud naskah asli. Jika Anda tertarik dengan topik ini, silakan lihat juga naskah aslinya! Jika saat membaca Anda menemukan bagian yang terasa janggal atau keliru, mohon beri tahu kami melalui komentar. 🤗
⚠️Iklan⚠️: Apakah tulisan yang dirangkum oleh 🔥Komunitas Pengguna PyTorch Korea🇰🇷 ini bermanfaat bagi Anda? Jika Anda bergabung sebagai anggota, kami akan mengirimkan artikel-artikel utama melalui email💌! (Default-nya Weekly, tetapi bisa diubah ke Daily.)
Belum ada komentar.