View a markdown version of this page

Mempersiapkan data untuk SFT di Amazon Nova 2 - Amazon Nova

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mempersiapkan data untuk SFT di Amazon Nova 2

SFT di Amazon Nova 2 mendukung pemahaman teks, gambar, video, dan dokumen, serta panggilan alat, dengan atau tanpa dukungan penalaran. Halaman ini menjelaskan kendala, format yang didukung, dan praktik terbaik untuk menyiapkan data pelatihan SFT untuk model Amazon Nova 2 Understanding.

Tip

Untuk memvalidasi format dataset Anda sebelum memulai pekerjaan pelatihan, lihatAlat validasi.

Format data

Data Amazon Nova 2 SFT menggunakan format API Converse yang sama dengan Amazon Nova 1, dengan penambahan bidang konten https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ReasoningContentBlock.html penalaran opsional.

Setiap baris dalam file pelatihan JSONL Anda adalah objek JSON dengan bidang tingkat atas berikut. Perluas bagian untuk mempelajari lebih lanjut:

Wajib. Bid messages ang adalah array objek pesan, yang masing-masing mendefinisikan giliran dalam percakapan. Objek pesan berisi bidang berikut:

  • peran - Diperlukan. Mendefinisikan apakah pesan berasal dari user (prompt dikirim ke model) atau assistant (respons model). Giliran pertama harususer, yang terakhir harusassistant, dan belokan harus bergantian.

  • konten - Diperlukan. Array blok konten untuk giliran ini.

Bid content ang memetakan ke array blok konten. Data Amazon Nova 2 SFT mendukung blok berikut:

text

Sebuah string yang menentukan konten teks. Didukung di kedua user dan bel assistant okan.

Berikut ini menunjukkan contoh objek pesan dengan content array yang hanya berisi blok text konten:

{ "role": "user", "content": [ { "text": "string" } ] }
image

Objek gambar yang menentukan format dan lokasi S3. Didukung hanya secara user bergantian.

Berikut ini menunjukkan contoh objek pesan dengan array konten yang hanya berisi blok konten gambar:

{ "role": "user", "content": [ { "image": { "format": "jpeg", "source": { "s3Location": { "uri": "s3://your-bucket/your-image.jpg", "bucketOwner": "account-id" } } } } ] }
video

Objek video yang menentukan format dan lokasi S3. Didukung hanya secara user bergantian.

Berikut ini menunjukkan contoh objek pesan dengan array konten yang hanya berisi blok konten video:

{ "role": "user", "content": [ { "video": { "format": "mp4", "source": { "s3Location": { "uri": "s3://your-bucket/your-video.mp4", "bucketOwner": "account-id" } } } } ] }
document

Objek dokumen yang menentukan format dan lokasi S3. Didukung hanya secara user bergantian.

Berikut ini menunjukkan contoh objek pesan dengan array konten yang hanya berisi blok konten dokumen:

{ "role": "user", "content": [ { "document": { "format": "pdf", "source": { "s3Location": { "uri": "s3://your-bucket/your-document.pdf", "bucketOwner": "account-id" } } } } ] }
reasoningContent

Objek jejak penalaran. Didukung hanya secara assistant bergantian. Hanya penalaran berbasis teks yang didukung; konten penalaran berbasis gambar tidak didukung.

Berikut ini menunjukkan contoh objek pesan dengan array konten yang hanya berisi blok konten penalaran:

{ "role": "assistant", "content": [ { "reasoningContent": { "reasoningText": { "text": "string" } } }, { "text": "final answer" } ] }
toolUse

Objek pemanggilan alat. Didukung hanya secara assistant bergantian. toolUseIdHarus unik per percakapan dan name harus cocok dengan alat yang ditentukan ditoolConfig.

Berikut ini menunjukkan contoh objek pesan dengan array konten yang hanya berisi blok konten penggunaan alat:

{ "role": "assistant", "content": [ { "toolUse": { "toolUseId": "unique-id", "name": "tool-name", "input": { ... } } } ] }
toolResult

Objek hasil alat. Didukung hanya secara user bergantian. Masing-masing toolUseId harus merefer toolUse ensikan sebelumnya dan digunakan tepat sekali. Konten harus berupa teks atau JSON saja.

Berikut ini menunjukkan contoh objek pesan dengan array konten yang hanya berisi blok konten hasil alat:

{ "role": "user", "content": [ { "toolResult": { "toolUseId": "matching-id", "content": [ { "text": "result" } ] } } ] }

Array opsional yang mendefinisikan prompt sistem — instruksi atau konteks untuk model tentang tugas yang harus dilakukan atau persona yang harus diadopsi. Gunakan prompt sistem yang sama selama pelatihan dan inferensi untuk hasil terbaik.

"system": [ { "text": "You are a helpful assistant." } ]

Objek opsional yang mendefinisikan alat yang tersedia untuk model untuk digunakan selama percakapan. Setiap alat didefinisikan dengan nama, deskripsi, dan Skema JSON untuk parameter inputnya.

"toolConfig": { "tools": [ { "toolSpec": { "name": "tool-name", "description": "tool-description", "inputSchema": { "json": { "type": "object", "properties": { "param": { "type": "string", "description": "param-description" } }, "required": ["param"] } } } } ] }

Wajib. Sebuah bidang string yang mengidentifikasi versi skema. Bisa berupa nilai string apa pun.

"schemaVersion": "bedrock-conversation-2024"

Memvalidasi data Anda

Sebelum mengirimkan pekerjaan pelatihan Anda, validasi dataset Anda untuk menangkap masalah pemformatan lebih awal. Untuk alat validasi yang tersedia, lihatAlat validasi.

Sampel masukan

Berikut ini adalah contoh lengkap objek JSON yang menunjukkan cara menggabungkan bidang dan blok konten untuk modalitas yang berbeda.

Text-only (Nova 1.0 compatible)
{ "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are a digital assistant with a friendly personality" } ], "messages": [ { "role": "user", "content": [ { "text": "What country is right next to Australia?" } ] }, { "role": "assistant", "content": [ { "text": "The closest country is New Zealand" } ] } ] }
Image + text input
{ "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are a helpful assistant." } ], "messages": [ { "role": "user", "content": [ { "image": { "format": "jpeg", "source": { "s3Location": { "uri": "s3://your-bucket/your-path/your-image.jpg", "bucketOwner": "your-aws-account-id" } } } }, { "text": "Which country is highlighted in the image?" } ] }, { "role": "assistant", "content": [ { "reasoningContent": { "reasoningText": { "text": "I will determine the highlighted country by examining its location on the map and using my geographical knowledge" } } }, { "text": "The highlighted country is New Zealand" } ] } ] }
Video + text input
{ "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are a helpful assistant." } ], "messages": [ { "role": "user", "content": [ { "video": { "format": "mp4", "source": { "s3Location": { "uri": "s3://your-bucket/your-path/your-video.mp4", "bucketOwner": "your-aws-account-id" } } } }, { "text": "What is shown in this video?" } ] }, { "role": "assistant", "content": [ { "reasoningContent": { "reasoningText": { "text": "I will analyze the video content to identify key elements" } } }, { "text": "The video shows a map with New Zealand highlighted" } ] } ] }
Document + text input
{ "schemaVersion": "bedrock-conversation-2024", "messages": [ { "role": "user", "content": [ { "text": "What are the ways in which a customer can experience issues during checkout on Amazon?" }, { "document": { "format": "pdf", "source": { "s3Location": { "uri": "s3://my-bucket-name/path/to/documents/customer_service_debugging.pdf", "bucketOwner": "123456789012" } } } } ] }, { "role": "assistant", "content": [ { "reasoningContent": { "reasoningText": { "text": "I need to find the relevant section in the document to answer the question." } } }, { "text": "Customers can experience issues with 1. Data entry, 2. Payment methods, 3. Connectivity while placing the order. Which one would you like to dive into?" } ] } ] }
Text with tool calling
{ "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are an expert in composing function calls." } ], "toolConfig": { "tools": [ { "toolSpec": { "name": "getItemAvailability", "description": "Retrieve whether an item is available in a given location", "inputSchema": { "json": { "type": "object", "properties": { "zipcode": { "type": "string", "description": "The zipcode of the location to check in" }, "quantity": { "type": "integer", "description": "The number of items to check availability for" }, "item_id": { "type": "string", "description": "The ASIN of item to check availability for" } }, "required": ["item_id", "zipcode"] } } } } ] }, "messages": [ { "role": "user", "content": [ { "text": "I need to check whether there are twenty pieces of the following item available. Here is the item ASIN on Amazon: id-123. Please check for the zipcode 94086" } ] }, { "role": "assistant", "content": [ { "reasoningContent": { "reasoningText": { "text": "The user wants to check how many pieces of the item with ASIN id-123 are available in the zipcode 94086" } } }, { "toolUse": { "toolUseId": "getItemAvailability_0", "name": "getItemAvailability", "input": { "zipcode": "94086", "quantity": 20, "item_id": "id-123" } } } ] }, { "role": "user", "content": [ { "toolResult": { "toolUseId": "getItemAvailability_0", "content": [ { "text": "[{\"name\": \"getItemAvailability\", \"results\": {\"availability\": true}}]" } ] } } ] }, { "role": "assistant", "content": [ { "text": "Yes, there are twenty pieces of item id-123 available at 94086. Would you like to place an order or know the total cost?" } ] } ] }
Text with reasoning
{ "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are a digital assistant with a friendly personality" } ], "messages": [ { "role": "user", "content": [ { "text": "What country is right next to Australia?" } ] }, { "role": "assistant", "content": [ { "reasoningContent": { "reasoningText": { "text": "I need to use my world knowledge of geography to answer this question" } } }, { "text": "The closest country to Australia is New Zealand, located to the southeast across the Tasman Sea." } ] } ] }

Fitur yang didukung

Tabel berikut membandingkan dukungan fitur untuk SFT di seluruh versi model Nova.

Dukungan fitur SFT berdasarkan versi model
Fitur SFT pada Nova 2.0
Pemahaman teks Didukung pada Nova 2.0 Lite. Lihat General/Text pengertian.
Pemahaman gambar Didukung pada Nova 2.0 Lite. Lihat Pemahaman gambar.
Pemahaman video Didukung pada Nova 2.0 Lite. Lihat Pemahaman video.
Pemahaman dokumen Didukung pada Nova 2.0 Lite. Lihat Pemahaman dokumen.
Panggilan alat Didukung pada Nova 2.0 Lite. Lihat Panggilan alat.
Penalaran Didukung pada Nova 2.0 Lite. Lihat Penalaran.

General/Text pengertian

Bagian ini merangkum kendala umum untuk menyiapkan SFT pada data pelatihan Amazon Nova 2.

Batasan

Kendala kumpulan data umum
Kendala Rincian
Format kumpulan data JSONL (satu objek JSON per baris). Nama file hanya dapat terdiri dari karakter alfanumerik, garis bawah, tanda hubung, garis miring, dan titik.
Sampel minimum 8
Sampel maksimum 20k
Panjang konteks 32k
Homogenitas kumpulan data Dataset tidak dapat mencampur modalitas media yang berbeda. Gunakan teks dengan gambar, teks dengan video, atau teks dengan dokumen — tetapi bukan kombinasi.
Kata kunci terpesan User:,Bot:,Assistant:,System:,<image>,<video>,[EOS]. Permintaan yang berisi kata kunci ini akan menyebabkan pekerjaan pelatihan gagal. Ganti mereka dengan kata kunci yang berbeda dengan makna yang sama.

Praktik terbaik

  • Ukuran data minimum untuk penyempurnaan tergantung pada tugas (yaitu, kompleks atau sederhana) tetapi kami sarankan Anda memiliki setidaknya 200 sampel untuk setiap tugas yang ingin Anda pelajari model.

  • Sebaiknya gunakan prompt yang dioptimalkan dalam pengaturan zero-shot selama pelatihan dan inferensi untuk mencapai hasil terbaik.

  • Prioritaskan kualitas daripada kuantitas. Beberapa ratus contoh berkualitas tinggi dan konsisten biasanya mengungguli ribuan contoh yang berisik atau kontradiktif.

Sampel masukan

  • schemaVersionbisa berupa nilai string apa pun

  • Peran yang didukung adalah user danassistant. Giliran (opsional) system dapat berupa prompt sistem kustom yang disediakan pelanggan.

  • Giliran pertama messages harus selalu dimulai dengan"role": "user". Giliran terakhir adalah respons bot, dilambangkan dengan"role": "assistant".

{ "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are a digital assistant with a friendly personality" } ], "messages": [ { "role": "user", "content": [ { "text": "What country is right next to Australia?" } ] }, { "role": "assistant", "content": [ { "text": "The closest country is New Zealand" } ] } ] }

Pemahaman gambar

SFT mendukung pelatihan tentang tugas berbasis gambar, memungkinkan model Anda mempelajari cara menganalisis dan menanggapi pertanyaan tentang gambar.

Batasan

Kendala gambar
Kendala Rincian
Format yang didukung PNG, JPEG, GIF, WebP
Gambar maksimum per sampel 10
Ukuran file gambar maksimum 10 MB
Homogenitas kumpulan data Sampel dapat memiliki gambar dan teks, tetapi tidak dapat memiliki gambar yang digabungkan dengan modalitas lain (video, dokumen).
Lokasi S3 image.source.s3Location.uriHarus berada di bucket Amazon S3 yang sama dengan dataset Anda. Misalnya, jika dataset Anda masuks3://amzn-s3-demo-bucket/train/train.jsonl, maka gambar atau video Anda harus ada s3://amzn-s3-demo-bucket

Praktik terbaik

  • Pastikan gambar berkualitas tinggi dan relevan dengan tugas.

  • Berikan beragam contoh yang mencakup berbagai jenis gambar dan format pertanyaan.

  • Sertakan pertanyaan yang jelas yang mereferensikan aspek spesifik dari konten gambar.

Masukan sampel

{ "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are a helpful assistant." } ], "messages": [ { "role": "user", "content": [ { "image": { "format": "jpeg", "source": { "s3Location": { "uri": "s3://your-bucket/your-path/your-image.jpg", "bucketOwner": "your-aws-account-id" } } } }, { "text": "Which country is highlighted in the image?" } ] }, { "role": "assistant", "content": [ { "text": "The highlighted country is New Zealand" } ] } ] }

Pemahaman video

SFT mendukung pelatihan tentang tugas berbasis video, memungkinkan model Anda mempelajari cara menganalisis dan menanggapi pertanyaan tentang konten video.

Batasan

Kendala video
Kendala Rincian
Format yang didukung MOV, MKV, MP4, WebM
Maksimum video per sampel 1
Ukuran file video maksimum 50 MB
Durasi video maksimum 15 menit
Homogenitas kumpulan data Sampel dapat memiliki video dan teks, tetapi tidak dapat menggabungkan video dengan modalitas lain (gambar, dokumen).
Lokasi S3 video.source.s3Location.uriHarus berada di bucket Amazon S3 yang sama dengan dataset Anda. Misalnya, jika dataset Anda masuks3://amzn-s3-demo-bucket/train/train.jsonl, maka video Anda harus masuk s3://amzn-s3-demo-bucket

Praktik terbaik

  • Jaga agar video ringkas dan fokus pada konten yang relevan dengan tugas Anda.

  • Pastikan kualitas video cukup bagi model untuk mengekstrak informasi yang berarti.

  • Berikan pertanyaan yang jelas yang mereferensikan aspek spesifik dari konten video.

  • Sertakan beragam contoh yang mencakup berbagai jenis video dan format pertanyaan.

Masukan sampel

{ "schemaVersion": "bedrock-conversation-2024", "messages": [ { "role": "user", "content": [ { "text": "What are the ways in which a customer can experience issues during checkout on Amazon?" }, { "video": { "format": "mp4", "source": { "s3Location": { "uri": "s3://my-bucket-name/path/to/videos/customer_service_debugging.mp4", "bucketOwner": "123456789012" } } } } ] }, { "role": "assistant", "content": [ { "text": "Customers can experience issues with 1. Data entry, 2. Payment methods, 3. Connectivity while placing the order. Which one would you like to dive into?" } ] } ] }

Pemahaman dokumen

SFT mendukung pelatihan tentang tugas berbasis dokumen, memungkinkan model Anda mempelajari cara menganalisis dan menanggapi pertanyaan tentang dokumen PDF.

Batasan

Kendala dokumen
Kendala Rincian
Format yang didukung PDF
Ukuran dokumen maksimum 10 MB
Homogenitas kumpulan data Sampel dapat memiliki dokumen dan teks, tetapi tidak dapat memiliki dokumen yang dicampur dengan modalitas lain (gambar, video).
Lokasi S3 document.source.s3Location.uriHarus berada di bucket Amazon S3 yang sama dengan dataset Anda. Misalnya, jika dataset Anda masuks3://amzn-s3-demo-bucket/train/train.jsonl, maka dokumen Anda harus masuk s3://amzn-s3-demo-bucket

Praktik terbaik

  • Pastikan dokumen diformat dengan jelas dan teks dapat diekstraksi.

  • Berikan beragam contoh yang mencakup berbagai jenis dokumen dan format pertanyaan.

  • Sertakan konten penalaran untuk membantu model mempelajari pola analisis dokumen.

Masukan sampel

{ "schemaVersion": "bedrock-conversation-2024", "messages": [ { "role": "user", "content": [ { "text": "What are the ways in which a customer can experience issues during checkout on Amazon?" }, { "document": { "format": "pdf", "source": { "s3Location": { "uri": "s3://my-bucket-name/path/to/documents/customer_service_debugging.pdf", "bucketOwner": "123456789012" } } } } ] }, { "role": "assistant", "content": [ { "text": "Customers can experience issues with 1. Data entry, 2. Payment methods, 3. Connectivity while placing the order. Which one would you like to dive into?" } ] } ] }

Panggilan alat

SFT mendukung model pelatihan tentang pola panggilan alat, memungkinkan model Anda mempelajari kapan dan bagaimana memanggil alat atau fungsi eksternal.

Batasan

Kendala pemanggilan alat
Kendala Rincian
Format yang didukung Teks atau JSON untuk ToolResult konten
ToolUse penempatan ToolUse harus muncul di giliran asisten saja
ToolResult penempatan ToolResult harus muncul di giliran pengguna saja
Format InputSchema InputSchema dalam ToolSpec harus menjadi objek Skema JSON yang valid
pen UseId cocokan alat Masing-masing ToolResult harus mereferensikan alat yang valid UseId dari asisten sebelumnya ToolUse, dengan setiap alat UseId digunakan tepat sekali per percakapan

Praktik terbaik

  • Pastikan definisi alat Anda konsisten di semua sampel pelatihan.

  • Model mempelajari pola pemanggilan alat dari demonstrasi yang Anda berikan.

  • Sertakan beragam contoh kapan harus menggunakan setiap alat dan kapan tidak menggunakan alat.

Sampel masukan

{ "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are an expert in composing function calls." } ], "toolConfig": { "tools": [ { "toolSpec": { "name": "getItemAvailability", "description": "Retrieve whether an item is available in a given location", "inputSchema": { "json": { "type": "object", "properties": { "zipcode": { "type": "string", "description": "The zipcode of the location to check in" }, "quantity": { "type": "integer", "description": "The number of items to check availability for" }, "item_id": { "type": "string", "description": "The ASIN of item to check availability for" } }, "required": ["item_id", "zipcode"] } } } } ] }, "messages": [ { "role": "user", "content": [ { "text": "I need to check whether there are twenty pieces of the following item available. Here is the item ASIN on Amazon: id-123. Please check for the zipcode 94086" } ] }, { "role": "assistant", "content": [ { "toolUse": { "toolUseId": "getItemAvailability_0", "name": "getItemAvailability", "input": { "zipcode": "94086", "quantity": 20, "item_id": "id-123" } } } ] }, { "role": "user", "content": [ { "toolResult": { "toolUseId": "getItemAvailability_0", "content": [ { "text": "[{\"name\": \"getItemAvailability\", \"results\": {\"availability\": true}}]" } ] } } ] }, { "role": "assistant", "content": [ { "text": "Yes, there are twenty pieces of item id-123 available at 94086. Would you like to place an order or know the total cost?" } ] } ] }

Penalaran

Konten penalaran (juga disebut rantai pemikiran) menangkap langkah-langkah pemikiran menengah model sebelum menghasilkan jawaban akhir.

Batasan

Kendala penalaran
Kendala Rincian
Format yang didukung Hanya teks. Image-based konten penalaran tidak didukung.
Penempatan Asisten hanya berputar, melalui reasoningContent lapangan.
Pemformatan Gunakan teks biasa. Hindari tag markup seperti <thinking> dan </thinking> kecuali secara khusus diminta oleh tugas Anda.

Praktik terbaik

  • High-quality konten penalaran harus mencakup pemikiran menengah, deduksi logis, pendekatan pemecahan masalah langkah demi langkah, dan hubungan eksplisit antara langkah dan kesimpulan.

  • Anda dapat menyertakan reasoningContent beberapa giliran asisten dalam percakapan multi-putaran.

  • Jika dataset Anda tidak memiliki jejak penalaran, Anda dapat membuatnya menggunakan model yang mampu bernalar seperti Nova Premier.

Masukan sampel

{ "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are a digital assistant with a friendly personality" } ], "messages": [ { "role": "user", "content": [ { "text": "What country is right next to Australia?" } ] }, { "role": "assistant", "content": [ { "reasoningContent": { "reasoningText": { "text": "I need to use my world knowledge of geography to answer this question" } } }, { "text": "The closest country to Australia is New Zealand, located to the southeast across the Tasman Sea." } ] } ] }

Catatan tambahan

Bagaimana kerugian dihitung:

  • Dengan konten penalaran — Kerugian pelatihan mencakup token penalaran dan token keluaran akhir.

  • Tanpa konten penalaran — Kerugian pelatihan dihitung hanya pada token keluaran akhir.

Tetapkan reasoning_enabled: true dalam konfigurasi pelatihan Anda ketika data pelatihan Anda memiliki token penalaran, Anda ingin model menghasilkan token pemikiran sebelum menghasilkan output akhir, atau Anda memerlukan peningkatan kinerja pada tugas-tugas penalaran yang kompleks.

Atur reasoning_enabled: false ketika data pelatihan Anda tidak memiliki token penalaran, Anda berlatih tentang tugas-tugas langsung yang tidak mendapat manfaat dari langkah-langkah penalaran eksplisit, atau Anda ingin mengoptimalkan kecepatan dan mengurangi penggunaan token.

Melatih Nova pada kumpulan data non-penalaran reasoning_enabled = true diizinkan. Namun, hal itu dapat menyebabkan model kehilangan kemampuan penalarannya, karena Nova terutama belajar menghasilkan tanggapan yang disajikan dalam data tanpa menerapkan penalaran. Secara umum, aktifkan penalaran untuk pelatihan dan inferensi saat menggunakan kumpulan data penalaran, dan nonaktifkan untuk keduanya saat menggunakan kumpulan data non-penalaran.

Merancang contoh pelatihan yang efektif

Data pelatihan Anda harus menunjukkan perilaku yang Anda inginkan untuk ditunjukkan model. SFT mengajarkan model bagaimana mer espons, bukan apa yang harus diketahui. Jika Anda menemukan diri Anda membuat contoh pelatihan terutama untuk menyuntikkan pengetahuan faktual (misalnya, “Apa E-45 arti kode kesalahan?” dengan jawaban "E-45 menunjukkan batas waktu sensor”), pertimbangkan apakah RAG atau rekayasa cepat dapat mencapai hasil yang sama tanpa penyempurnaan.

Saat mengonversi data sumber ke dalam format percakapan, ikuti prinsip-prinsip ini:

  1. Mulai dari permintaan pengguna nyata. Tulis pengguna mengubah cermin bagaimana pengguna akhir benar-benar akan meminta model dalam produksi. Hindari pertanyaan buatan atau terlalu disederhanakan yang tidak mencerminkan pola penggunaan nyata.

  2. Tulis tanggapan asisten standar emas. Setiap putaran asisten harus menjadi respons ideal yang Anda ingin menghasilkan model — benar, diformat dengan baik, dan konsisten dalam nada dan struktur di semua contoh.

  3. Gunakan prompt sistem secara strategis. Tempatkan instruksi persisten seperti format output, persona, dan konteks domain di giliran sistem. Gunakan prompt sistem yang sama selama pelatihan dan inferensi untuk mencapai hasil terbaik.

  4. Tetap fokus contoh pada satu keterampilan per sampel. Jika Anda membutuhkan model untuk mengklasifikasikan, menjawab pertanyaan, dan meringkas, buat set contoh terpisah untuk setiap keterampilan daripada menggabungkan beberapa keterampilan dalam satu sampel.

  5. Prioritaskan kualitas daripada kuantitas. Beberapa ratus contoh berkualitas tinggi dan konsisten biasanya mengungguli ribuan contoh yang berisik atau kontradiktif. Deduplikat dan tinjau data Anda sebelum pelatihan.

Pola transformasi data umum

Pola berikut menggambarkan cara mengubah format data perusahaan umum menjadi contoh pelatihan SFT yang efektif.

Pola 1: Catatan terstruktur untuk klasifikasi atau pencarian

Ketika data sumber Anda adalah tabel atau database catatan dengan bidang sepertiissue,, dan causeresolution, bingkai setiap catatan sebagai pertanyaan pengguna dengan bidang input yang relevan dan respons asisten sebagai bidang keluaran target.

// train.jsonl { "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are a technical support assistant. Given an issue description, identify the most likely root cause and recommended resolution." } ], "messages": [ { "role": "user", "content": [ { "text": "A user reports: 'Application crashes on startup after the latest update.' What is the likely cause and resolution?" } ] }, { "role": "assistant", "content": [ { "text": "Cause: Incompatible configuration file from the previous version.\nResolution: Delete the local configuration cache and restart the application to regenerate default settings." } ] } ] }
Pola 2: Data hierarkis atau taksonomi ke Q &amp; A terstruktur

Jika data sumber Anda adalah hierarki kode atau taksonomi seperti pohon kategori produk atau sistem klasifikasi, buat pertanyaan yang meminta model untuk menavigasi hierarki. Sertakan konteks klasifikasi dalam prompt sistem atau giliran pengguna.

// train.jsonl { "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are a product catalog assistant. Answer questions about product categories and classifications accurately." } ], "messages": [ { "role": "user", "content": [ { "text": "What top-level category does product code 'EL-4520' belong to, and what subcategories does it include?" } ] }, { "role": "assistant", "content": [ { "text": "Product code EL-4520 belongs to the Electronics category. It includes the subcategories: Audio Equipment, Portable Speakers, and Wireless Accessories." } ] } ] }
Pola 3: Dokumen prosedural untuk dialog instruksional

Ketika data sumber Anda terdiri dari prosedur operasi standar, runbook, atau panduan langkah demi langkah, ubah prosedur menjadi pertanyaan berorientasi tugas. Pengguna bertanya bagaimana melakukan tugas dan asisten memberikan langkah-langkah dalam format yang konsisten.

// train.jsonl { "schemaVersion": "bedrock-conversation-2024", "system": [ { "text": "You are an IT operations assistant. Provide step-by-step instructions based on approved runbooks and standard operating procedures." } ], "messages": [ { "role": "user", "content": [ { "text": "How do I reset a user's multi-factor authentication when they have lost access to their device?" } ] }, { "role": "assistant", "content": [ { "text": "Follow these steps to reset a user's multi-factor authentication:\n1. Verify the user's identity using the approved verification procedure.\n2. Disable the existing MFA configuration in the identity management console.\n3. Generate a new temporary access code and send it to the user's verified email.\n4. Instruct the user to log in with the temporary code and re-enroll their new device.\n5. Confirm the new MFA device is working by requesting a test authentication.\n6. Document the reset in the support ticket." } ] } ] }
catatan

Dalam Pola 1 dan 2, jika konten faktual (seperti kode, kategori, atau resolusi) belum ada dalam data pra-pelatihan model, pertimbangkan untuk menggunakan RAG untuk memberikan informasi ini pada waktu inferensi daripada hanya mengandalkan SFT untuk menghafalnya. SFT paling efektif untuk mengajarkan model format respons dan pola penalaran, sementara RAG menangani landasan faktual.