Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh resep evaluasi
Amazon Nova menyediakan empat jenis resep evaluasi, yang tersedia di GitHub repositori SageMaker HyperPod resep.
Resep-resep ini memungkinkan Anda untuk mengevaluasi kemampuan dasar model Amazon Nova di seluruh rangkaian tolok ukur khusus teks yang komprehensif. Mereka disediakan dalam formatxxx_general_text_benchmark_eval.yaml.
Resep ini memungkinkan Anda untuk membawa dataset Anda sendiri untuk benchmarking dan membandingkan output model untuk referensi jawaban menggunakan berbagai jenis metrik. Mereka disediakan dalam formatxxx_bring_your_own_dataset_eval.yaml.
Berikut ini adalah persyaratan dataset Anda sendiri:
-
Persyaratan format file
-
Anda harus menyertakan satu
gen_qa.jsonlfile yang berisi contoh evaluasi. -
Dataset Anda harus diunggah ke lokasi S3 di mana pekerjaan SageMaker pelatihan dapat mengaksesnya.
-
File harus mengikuti format skema yang diperlukan untuk kumpulan data Tanya Jawab umum.
-
-
Persyaratan format skema - Setiap baris dalam file JSONL harus berupa objek JSON dengan bidang berikut:
-
query: (Wajib) String yang berisi pertanyaan atau instruksi yang membutuhkan jawaban -
response: (Wajib) String yang berisi output model yang diharapkan -
system: (Opsional) String yang berisi prompt sistem yang menetapkan perilaku, peran, atau kepribadian model AI sebelum memproses kueri -
metadata: (Opsional) String yang berisi metadata yang terkait dengan entri untuk tujuan penandaan.
-
Berikut ini adalah entri contoh kumpulan data Anda sendiri
{ "system":"You are a english major with top marks in class who likes to give minimal word responses: ", "query":"What is the symbol that ends the sentence as a question", "response":"?" } { "system":"You are a pattern analysis specialist that provides succinct answers: ", "query":"What is the next number in this series? 1, 2, 4, 8, 16, ?", "response":"32" } { "system":"You have great attention to detail that follows instructions accurately: ", "query":"Repeat only the last two words of the following: I ate a hamburger today and it was kind of dry", "response":"of dry" }
Untuk menggunakan kumpulan data kustom Anda, ubah resep evaluasi Anda dengan bidang wajib berikut, jangan ubah konten apa pun:
evaluation: task: gen_qa strategy: gen_qa metric: all
Batasan berikut berlaku:
-
Hanya satu file JSONL yang diizinkan per evaluasi.
-
File harus benar-benar mengikuti skema yang ditentukan.
-
Batas panjang konteks: Untuk setiap sampel dalam kumpulan data, panjang konteks (termasuk permintaan kueri sistem +) harus kurang dari 3,5k.
Amazon Nova LLM sebagai Hakim adalah fitur evaluasi model yang memungkinkan pelanggan membandingkan kualitas respons dari satu model ke respons model dasar pada kumpulan data khusus. Dibutuhkan kumpulan data dengan petunjuk, respons dasar, dan respons penantang, dan menggunakan model Nova Judge untuk memberikan metrik winrate berdasarkan probabilitas Bradley-Terry dengan perbandingan berpasangan.
Resep disediakan dalam formatxxx_llm_judge_eval.yaml.
Berikut ini adalah LLM sebagai persyaratan Hakim:
-
Persyaratan format file
-
Sertakan satu
llm_judge.jsonlfile yang berisi contoh evaluasi. Nama file harusllm_judge.jsonl. -
Dataset Anda harus diunggah ke lokasi S3 yang dapat diakses SageMaker AI SageMaker HyperPod RIG.
-
File harus mengikuti format skema yang diperlukan untuk
llm_judge.jsonlkumpulan data. -
Dataset input harus memastikan semua catatan berada di bawah panjang konteks 12k.
-
-
Persyaratan format skema - Setiap baris dalam file JSONL harus berupa objek JSON dengan bidang berikut:
-
prompt: (Wajib) String yang berisi prompt untuk respons yang dihasilkan. -
response_A: String yang berisi respons dasar. -
response_B: String yang berisi respons alternatif dibandingkan dengan respons dasar.
-
Berikut adalah LLM sebagai entri contoh juri
{ "prompt": "What is the most effective way to combat climate change?", "response_A": "The most effective way to combat climate change is through a combination of transitioning to renewable energy sources and implementing strict carbon pricing policies. This creates economic incentives for businesses to reduce emissions while promoting clean energy adoption.", "response_B": "We should focus on renewable energy. Solar and wind power are good. People should drive electric cars. Companies need to pollute less." } { "prompt": "Explain how a computer's CPU works", "response_A": "CPU is like brain of computer. It does math and makes computer work fast. Has lots of tiny parts inside.", "response_B": "A CPU (Central Processing Unit) functions through a fetch-execute cycle, where instructions are retrieved from memory, decoded, and executed through its arithmetic logic unit (ALU). It coordinates with cache memory and registers to process data efficiently using binary operations." } { "prompt": "How does photosynthesis work?", "response_A": "Plants do photosynthesis to make food. They use sunlight and water. It happens in leaves.", "response_B": "Photosynthesis is a complex biochemical process where plants convert light energy into chemical energy. They utilize chlorophyll to absorb sunlight, combining CO2 and water to produce glucose and oxygen through a series of chemical reactions in chloroplasts." }
Untuk menggunakan kumpulan data kustom Anda, ubah resep evaluasi Anda dengan bidang wajib berikut, jangan ubah konten apa pun:
evaluation: task: llm_judge strategy: judge metric: all
Batasan berikut berlaku:
-
Hanya satu file JSONL yang diizinkan per evaluasi.
-
File harus benar-benar mengikuti skema yang ditentukan.
-
Model Amazon Nova Judge sama di semua spesifikasi keluarga model (yaitu, Lite, Micro, dan Pro).
-
Model juri khusus tidak didukung saat ini.
-
Batas panjang konteks: Untuk setiap sampel dalam kumpulan data, panjang konteks (termasuk permintaan kueri sistem +) harus kurang dari 7k.
Nova LLM Judge for multi-modal (image), kependekan dari Nova MM_LLM Judge, adalah fitur evaluasi model yang memungkinkan Anda membandingkan kualitas respons dari satu model dengan respons model dasar menggunakan kumpulan data khusus. Ini menerima kumpulan data yang berisi petunjuk, respons dasar, dan respons penantang, dan gambar dalam bentuk string yang dikodekan Base64, kemudian menggunakan model Nova Judge untuk memberikan metrik tingkat kemenangan berdasarkan probabilitas Bradley-Terry melalui perbandingan berpasangan.xxx_mm_llm_judge _eval.yaml.
Persyaratan set data Nova LLM
Format berkas:
-
mm_llm_judge.jsonlFile tunggal yang berisi contoh evaluasi. Nama file harus persisllm_judge.jsonl. -
Anda harus mengunggah kumpulan data Anda ke lokasi S3 tempat SageMaker Training Jobs dapat mengaksesnya.
-
File harus mengikuti format skema yang diperlukan untuk
mm_llm_judgekumpulan data. -
Dataset input harus memastikan semua catatan berada di bawah panjang konteks 12 k, tidak termasuk atribut gambar.
Format skema - Setiap baris dalam .jsonl file harus berupa objek JSON dengan bidang berikut.
-
Bidang yang diperlukan.
prompt: String yang berisi prompt untuk respons yang dihasilkan.images: Array yang berisi daftar objek dengan atribut data (nilainya adalah string gambar yang dikodekan Base64).response_A: String yang berisi respons dasar.response_B: String yang berisi respons alternatif dibandingkan dengan respons dasar.
Entri contoh
Untuk keterbacaan, contoh berikut mencakup baris dan lekukan baru, tetapi dalam kumpulan data yang sebenarnya, setiap catatan harus berada pada satu baris.
{ "prompt": "what is in the image?", "images": [ { "data": "data:image/jpeg;Base64,/9j/2wBDAAQDAwQDAwQEAwQFBAQFBgo..." } ], "response_A": "a dog.", "response_B": "a cat.", } { "prompt": "how many animals in echo of the images?", "images": [ { "data": "data:image/jpeg;Base64,/9j/2wBDAAQDAwQDAwQEAwQFBAQFBgo..." }, { "data": "data:image/jpeg;Base64,/DKEafe3gihn..." } ], "response_A": "The first image contains one cat and the second image contains one dog", "response_B": "The first image has one aminal and the second has one animal", }
Untuk menggunakan kumpulan data kustom Anda, ubah resep evaluasi Anda dengan bidang wajib berikut, jangan ubah konten apa pun:
evaluation: task: mm_llm_judge strategy: judge metric: all
Batasan
-
Hanya satu
.jsonlfile yang diizinkan per evaluasi. -
File harus benar-benar mengikuti skema yang ditentukan.
-
Model Nova MM Judge hanya mendukung referensi gambar.
-
Model Nova MM Judge sama di seluruh spesifikasi Amazon Nova Lite.
-
Model juri khusus saat ini tidak didukung.
-
URI gambar Amazon S3 tidak didukung.
-
Dataset input harus memastikan semua catatan berada di bawah panjang konteks 12 k, tidak termasuk atribut gambar.
Rubric Judge adalah model LLM-as-a-judge evaluasi yang disempurnakan yang dibangun di atas Nova 2.0 Lite. Berbeda dengan model hakim asli
Kemampuan kunci:
-
Pembuatan kriteria dinamis: Secara otomatis membuat dimensi evaluasi yang relevan berdasarkan prompt input
-
Skor tertimbang: Menetapkan bobot kepentingan untuk setiap kriteria untuk mencerminkan signifikansi relatifnya
-
Penilaian granular: Memberikan skor terperinci berdasarkan biner (benar/salah) atau skala (1-5) untuk setiap kriteria
-
Metrik kualitas: Menghitung skor kualitas berkelanjutan (skala 0-1) yang mengukur besarnya perbedaan antara respons
Contoh kriteria yang dihasilkan oleh model:
price_validation: description: "The response includes validation to ensure price is a positive value." type: "scale" weight: 0.3
Model mengevaluasi kedua tanggapan terhadap semua kriteria yang dihasilkan, kemudian menggunakan skor tingkat kriteria ini untuk menginformasikan keputusan preferensi akhirnya.
Konfigurasi resep
Resep Rubrik Hakim
Aktifkan Rubric Judge dengan mengatur task: rubric_llm_judge resep Anda:
run: name: nova-eval-job-name # [MODIFIABLE] Unique identifier for your evaluation job model_type: amazon.nova-2-lite-v1:0:256k # [FIXED] Rubric Judge model type model_name_or_path: "nova-lite-2/prod" # [FIXED] Path to model checkpoint or identifier replicas: 1 # [MODIFIABLE] Number of replicas for SageMaker Training job data_s3_path: "" # [FIXED] Leave empty for SageMaker Training job output_s3_path: "" # [FIXED] Leave empty for SageMaker Training job evaluation: task: rubric_llm_judge # [FIXED] Evaluation task - enables Rubric Judge strategy: judge # [FIXED] Evaluation strategy metric: all # [FIXED] Metric calculation method inference: max_new_tokens: 12000 # [MODIFIABLE] Maximum tokens to generate top_k: -1 # [MODIFIABLE] Top-k sampling parameter top_p: 1.0 # [MODIFIABLE] Nucleus sampling parameter temperature: 0 # [MODIFIABLE] Sampling temperature (0 = deterministic)
LLM asli sebagai resep Hakim (untuk perbandingan)
Model juri asli menggunakantask: llm_judge:
run: name: eval-job-name # [MODIFIABLE] Unique identifier for your evaluation job model_type: amazon.nova-micro-v1:0:128k # [FIXED] Model type model_name_or_path: "nova-micro/prod" # [FIXED] Path to model checkpoint or identifier replicas: 1 # [MODIFIABLE] Number of replicas for SageMaker Training job data_s3_path: "" # [FIXED] Leave empty for SageMaker Training job output_s3_path: "" # [FIXED] Leave empty for SageMaker Training job evaluation: task: llm_judge # [FIXED] Original judge task strategy: judge # [FIXED] Evaluation strategy metric: all # [FIXED] Metric calculation method inference: max_new_tokens: 12000 # [MODIFIABLE] Maximum tokens to generate top_k: -1 # [MODIFIABLE] Top-k sampling parameter top_p: 1.0 # [MODIFIABLE] Nucleus sampling parameter temperature: 0 # [MODIFIABLE] Sampling temperature (0 = deterministic)
Format dataset masukan
Format dataset input identik dengan model juri asli
Bidang yang diperlukan:
-
prompt: String yang berisi prompt input dan instruksi -
response_A: String yang berisi keluaran model dasar -
response_B: String yang berisi output model yang disesuaikan
Contoh kumpulan data (format JSONL):
{"prompt": "What is the most effective way to combat climate change?", "response_A": "The most effective way to combat climate change is through a combination of transitioning to renewable energy sources and implementing strict carbon pricing policies. This creates economic incentives for businesses to reduce emissions while promoting clean energy adoption.", "response_B": "We should focus on renewable energy. Solar and wind power are good. People should drive electric cars. Companies need to pollute less."} {"prompt": "Explain how a computer's CPU works", "response_A": "CPU is like brain of computer. It does math and makes computer work fast. Has lots of tiny parts inside.", "response_B": "A CPU (Central Processing Unit) functions through a fetch-execute cycle, where instructions are retrieved from memory, decoded, and executed through its arithmetic logic unit (ALU). It coordinates with cache memory and registers to process data efficiently using binary operations."} {"prompt": "How does photosynthesis work?", "response_A": "Plants do photosynthesis to make food. They use sunlight and water. It happens in leaves.", "response_B": "Photosynthesis is a complex biochemical process where plants convert light energy into chemical energy. They utilize chlorophyll to absorb sunlight, combining CO2 and water to produce glucose and oxygen through a series of chemical reactions in chloroplasts."}
Persyaratan format:
-
Setiap entri harus berupa objek JSON satu baris
-
Pisahkan entri dengan baris baru
-
Ikuti penamaan bidang yang tepat seperti yang ditunjukkan pada contoh
Keluaran evaluasi
Struktur keluaran
Rubric Judge menghasilkan metrik evaluasi yang ditingkatkan dibandingkan dengan model juri asli:
{ "config_general": { "lighteval_sha": "string", "num_fewshot_seeds": "int", "max_samples": "int | null", "job_id": "int", "start_time": "float", "end_time": "float", "total_evaluation_time_secondes": "string", "model_name": "string", "model_sha": "string", "model_dtype": "string | null", "model_size": "string" }, "results": { "custom|rubric_llm_judge_judge|0": { "a_scores": "float", "a_scores_stderr": "float", "b_scores": "float", "b_scores_stderr": "float", "ties": "float", "ties_stderr": "float", "inference_error": "float", "inference_error_stderr": "float", "score": "float", "score_stderr": "float", "weighted_score_A": "float", "weighted_score_A_stderr": "float", "weighted_score_B": "float", "weighted_score_B_stderr": "float", "score_margin": "float", "score_margin_stderr": "float", "winrate": "float", "lower_rate": "float", "upper_rate": "float" } }, "versions": { "custom|rubric_llm_judge_judge|0": "int" } }
Metrik baru di Rubric Judge
Enam metrik berikut unik untuk Rubric Judge dan memberikan penilaian kualitas terperinci:
Metrik |
Deskripsi |
|---|---|
Weighted_score_a |
Skor kualitas rata-rata yang dinormalisasi untuk Response_a di semua kriteria evaluasi yang dihasilkan model. Skor ditimbang berdasarkan kriteria kepentingan dan dinormalisasi ke skala 0-1 (lebih tinggi = kualitas yang lebih baik) |
Weighted_Score_A_Stderr |
Kesalahan standar rata-rata untuk Weighted_score_A, menunjukkan ketidakpastian statistik |
Weighted_Score_B |
Skor kualitas rata-rata yang dinormalisasi untuk Response_b di semua kriteria evaluasi yang dihasilkan model. Skor ditimbang berdasarkan kriteria kepentingan dan dinormalisasi ke skala 0-1 (lebih tinggi = kualitas yang lebih baik) |
Weighted_Score_B_Stderr |
Kesalahan standar rata-rata untuk Weighted_score_B, menunjukkan ketidakpastian statistik |
score_margin |
Perbedaan antara skor tertimbang (dihitung sebagai Weighted_score_A - Weighted_score_b). Rentang: -1.0 hingga 1.0. Positif = response_A lebih baik; negatif = response_B lebih baik; mendekati nol = kualitas serupa |
score_margin_stderr |
Kesalahan standar rata-rata untuk score_margin, menunjukkan ketidakpastian dalam pengukuran perbedaan kualitas |
Memahami metrik skor tertimbang
Tujuan: Skor tertimbang memberikan pengukuran kualitas berkelanjutan yang melengkapi putusan preferensi biner, memungkinkan wawasan yang lebih dalam tentang kinerja model.
Perbedaan utama dari hakim asli:
-
Hakim asli: Hanya menampilkan preferensi diskrit (A> B, B> A, A = B)
-
Hakim Rubrik: Menghasilkan preferensi DAN skor kualitas berkelanjutan (skala 0-1) berdasarkan kriteria khusus
Menafsirkan score_margin:
-
score_margin = -0.128: Response_B mencetak 12,8 poin persentase lebih tinggi dari Response_a -
|score_margin| < 0.1: Perbedaan kualitas yang sempit (keputusan dekat) -
|score_margin| > 0.2: Perbedaan kualitas yang jelas (keputusan percaya diri)
Kasus penggunaan:
-
Peningkatan model: Identifikasi area spesifik di mana model Anda berkinerja buruk
-
Kuantifikasi kualitas: Ukur besarnya kesenjangan kinerja, bukan hanya rasio win/loss
-
Penilaian kepercayaan: Bedakan antara keputusan dekat dan perbedaan kualitas yang jelas
penting
Putusan akhir masih didasarkan pada label preferensi eksplisit model hakim untuk mempertahankan penalaran holistik dan memastikan mitigasi bias posisi yang tepat melalui evaluasi. forward/backward Skor tertimbang berfungsi sebagai alat observabilitas, bukan sebagai pengganti putusan utama.
Metodologi perhitungan
Skor tertimbang dihitung melalui proses berikut:
-
Ekstrak data kriteria: Parse output YAMM juri untuk mengekstrak skor kriteria dan bobot
-
Menormalkan skor:
-
Kriteria tipe skala (1-5): Normalisasi ke 0-1 dengan menghitung
(score - 1) / 4 -
Kriteria biner (benar/salah): Konversi ke 1.0/0.0
-
-
Terapkan bobot: Kalikan setiap skor yang dinormalisasi dengan berat kriterianya
-
Agregat: Jumlahkan semua skor tertimbang untuk setiap respons
-
Hitung margin: Hitung
score_margin = weighted_score_A - weighted_score_B
Contoh: Jika response_A memiliki jumlah tertimbang 0,65 dan response_B memiliki 0,78, score_margin maka akan menjadi -0,13, menunjukkan response_B adalah 13 poin persentase lebih tinggi dalam kualitas di semua kriteria tertimbang.
Dukungan model penalaran
Dukungan model penalaran memungkinkan evaluasi dengan model Nova berkemampuan penalaran yang melakukan penalaran internal eksplisit sebelum menghasilkan tanggapan akhir. Fitur ini menggunakan kontrol tingkat API melalui reasoning_effort parameter untuk mengaktifkan atau menonaktifkan fungsionalitas penalaran secara dinamis, berpotensi meningkatkan kualitas respons untuk tugas analitis yang kompleks.
Model yang didukung:
-
amazon.nova-2-lite-v 1:0:256 k
Konfigurasi resep
Aktifkan penalaran dengan menambahkan reasoning_effort parameter ke inference bagian resep Anda:
run: name: eval-job-name # [MODIFIABLE] Unique identifier for your evaluation job model_type: amazon.nova-2-lite-v1:0:256k # [FIXED] Must be a reasoning-supported model model_name_or_path: nova-lite-2/prod # [FIXED] Path to model checkpoint or identifier replicas: 1 # [MODIFIABLE] Number of replicas for SageMaker Training job data_s3_path: "" # [MODIFIABLE] Leave empty for SageMaker Training job; optional for job output_s3_path: "" # [MODIFIABLE] Output path for job (not compatible with SageMaker Training jobs) evaluation: task: mmlu # [MODIFIABLE] Evaluation task strategy: generate # [MODIFIABLE] Evaluation strategy metric: all # [MODIFIABLE] Metric calculation method inference: reasoning_effort: high # [MODIFIABLE] Enables reasoning mode; options: low/medium/high or null to disable max_new_tokens: 200 # [MODIFIABLE] Maximum tokens to generate top_k: 50 # [MODIFIABLE] Top-k sampling parameter top_p: 1.0 # [MODIFIABLE] Nucleus sampling parameter temperature: 0 # [MODIFIABLE] Sampling temperature (0 = deterministic)
Menggunakan parameter reasing_effort
reasoning_effortParameter mengontrol perilaku penalaran untuk model berkemampuan penalaran.
Prasyarat:
-
Kompatibilitas model: Setel
reasoning_efforthanya ketikamodel_typemenentukan model berkemampuan penalaran (saat ini)amazon.nova-2-lite-v1:0:256k -
Penanganan kesalahan: Menggunakan
reasoning_effortdengan model yang tidak didukung akan gagalConfigValidationError: "Reasoning mode is enabled but model '{model_type}' does not support reasoning. Please use a reasoning-capable model or disable reasoning mode."
Pilihan yang tersedia:
Opsi |
Perilaku |
Batas Token |
Kasus Penggunaan |
|---|---|---|---|
null (default) |
Menonaktifkan mode penalaran |
N/A |
Evaluasi standar tanpa overhead penalaran |
rendah |
Memungkinkan penalaran dengan kendala |
4.000 token untuk penalaran internal |
Skenario yang membutuhkan penalaran ringkas; mengoptimalkan kecepatan dan biaya |
tinggi |
Memungkinkan penalaran tanpa kendala |
Tidak ada batasan token pada penalaran internal |
Masalah kompleks yang membutuhkan analisis dan step-by-step penalaran ekstensif |
Kapan mengaktifkan penalaran
Gunakan mode penalaran (low,medium, atauhigh) untuk:
-
Tugas pemecahan masalah yang kompleks (matematika, teka-teki logika, pengkodean)
-
Pertanyaan analitis multi-langkah yang membutuhkan penalaran menengah
-
Tugas di mana penjelasan atau step-by-step pemikiran terperinci meningkatkan akurasi
-
Skenario di mana kualitas respons diprioritaskan daripada kecepatan
Gunakan mode non-penalaran (hilangkan parameter) untuk:
-
Tanya Jawab sederhana atau pertanyaan faktual
-
Tugas menulis kreatif
-
Ketika waktu respons yang lebih cepat sangat penting
-
Pembandingan kinerja di mana overhead penalaran harus dikecualikan
-
Optimalisasi biaya saat penalaran tidak meningkatkan kinerja tugas
Pemecahan masalah
Kesalahan: “Mode penalaran diaktifkan tetapi model tidak mendukung penalaran”
Penyebab: reasoning_effort Parameter diatur ke nilai non-null, tetapi yang ditentukan model_type tidak mendukung penalaran.
Resolusi:
-
Verifikasi jenis model Anda
amazon.nova-2-lite-v1:0:256k -
Jika menggunakan model yang berbeda, beralihlah ke model berkemampuan penalaran atau hapus
reasoning_effortparameter dari resep Anda