Selesaikan penyiapan model penilaian dasar untuk menjalankan evaluasi subjektif Anda.
Menyelaraskan dan menguji hakim
Anda memiliki hakim awal, tetapi Anda belum bisa mempercayainya. Hakim Anda hanya siap jika hakim tersebut secara konsisten setuju dengan penilaian manusia.
Membuat set data perataan
Untuk mengalibrasi penilaian Anda, Anda memerlukan set data perataan. Ini adalah kumpulan kecil input dan output berkualitas tinggi yang diberi rating secara manual oleh manusia. Set data ini berfungsi sebagai kebenaran nyata Anda. Anda menggunakannya untuk memverifikasi bahwa logika hakim secara konsisten sesuai dengan harapan Anda.
Set data penyelarasan Anda harus berisi 30-50 pasangan input-output. Set datanya cukup besar untuk mencakup beberapa kasus ekstrem, tetapi cukup kecil sehingga Anda dapat melabelinya dalam waktu singkat.
Dalam contoh ThemeBuilder, entri dalam set data perataan terlihat seperti ini (input, output, label manusia):
{
"id": "sample-014",
"userInput": {
"companyName": "Rawrr!",
"audience": "kids 5-10",
"tone": ["prehistoric", "loud", "fun"]
},
"appOutput": {
"motto": "Experiencing the prehistoric era."
},
"humanEvaluation": {
"mottoBrandFit": {
"label": "FAIL",
"rationale": "While on-theme, this motto is too formal for kids.
It fails to capture the required 'loud' and 'fun' energy."
}
}
}
Untuk membuat input dan output, Anda dapat mengekstrak dari log produksi (jika tersedia), membuat data secara manual, menggunakan LLM (data sintetis), atau memulai dari beberapa sampel pilihan dan meminta LLM untuk memperluas set data Anda.
Setelah input dan output Anda siap, gunakan rubrik Anda untuk memberi label pada output sebagai
PASS atau FAIL bersama tim Anda. Ini akan menjadi kebenaran dasar Anda.
Pastikan set data perataan Anda menyertakan contoh PASS dan contoh FAIL dengan tingkat kesulitan yang bervariasi, misalnya:
- 10 contoh kasus jalur ideal yang diberi label
PASSoleh juri Anda. - 20 contoh kasus yang diberi label
FAILoleh juri Anda:- Kegagalan yang jelas, misalnya motto yang sangat toksik atau sama sekali tidak sesuai merek.
- Kegagalan kecil, misalnya motto yang tata bahasanya sempurna, tetapi terlalu formal untuk merek yang menyenangkan, atau hanya sebagian sesuai dengan nuansa.
Hakim LLM Anda adalah penjaga gerbang. Menyelaraskannya pada set data yang berisi lebih banyak kasus gagal daripada lulus memberikan lebih banyak peluang untuk menyesuaikan rubrik guna mendeteksi kegagalan, dan pada akhirnya meningkatkan kemampuan hakim untuk mendeteksi kegagalan.
Setelah set data perataan Anda siap, tampilannya akan terlihat seperti ini:
Kasus happy path (LULUS)
// Easy, clean input + Good output
{
"id": "sample-001",
"userInput": {
"companyName": "Kinetica",
"description": "Carbon-fiber plated performance footwear engineered for
elite marathon runners.",
"audience": "competitive triathletes and professional runners",
"tone": [
"aggressive",
"high-performance",
"technical"
]
},
"appOutput": {
"motto": "Unlock your kinetic potential.",
"colorPalette": {
"textColor": "#FFFFFF",
"backgroundColor": "#000000",
"primary": "#DC2626",
"secondary": "#E2E8F0"
}
},
"humanEvaluation": {
"mottoBrandFit": {
"label": "PASS",
"rationale": "This motto powerfully aligns the brand's technical
engineering with the ambitious goals of its elite athletic audience.
Relevance: Uses 'kinetic' to expertly link the brand to physical
energy. Audience appeal: 'Unlock your potential' resonates perfectly
with competitive runners. Tone consistency: Nails the required
aggressive, high-performance marks."
},
"mottoToxicity": {
"label": "PASS",
"rationale": "Perfectly clean and motivational. No offensive or
exclusionary language."
},
"colorBrandFit": {
"label": "PASS",
"rationale": "The chosen color palette perfectly mirrors Kinetica's
aggressive and technical brand identity by utilizing high-impact tones
that resonate with elite athletes. Relevance: Psychological association:
Blood red creates urgency and speed. Harmony: Stark contrast against
black/white feels highly technical.
Appropriateness: Extremely effective aesthetic for premium athletic gear."
}
}
}
Kegagalan yang jelas (GAGAL)
// Off-brand color palette
{
"id": "sample-014",
"userInput": {
"companyName": "Rawrr!",
"description": "Dinosaur themed playground and party venue.",
"audience": "kids 5-10",
"tone": [
"prehistoric",
"loud",
"fun"
]
},
"appOutput": {
"motto": "Experiencing the prehistoric era.",
"colorPalette": {
"textColor": "#4A4A4A",
"backgroundColor": "#F5F5DC",
"primary": "#D2B48C",
"secondary": "#C0C0C0"
}
},
"humanEvaluation": {
"mottoBrandFit": {
"label": "FAIL",
"rationale": "While the motto relates to the dinosaur theme, its overly
academic and formal tone fails to capture the loud and fun energy
essential for a children's playground brand. Relevance: Effectively fits
the dinosaur theme. Audience appeal: A bit formal ('Experiencing' versus
something punchy), acceptable for parents booking events but should be
more exciting for kids, it's too formal and academic for a children's
playground, lacks the 'loud' and 'fun' energy requested in the tone.
Tone consistency: It touches on the 'prehistoric' element adequately."
},
"mottoToxicity": {
"label": "PASS",
"rationale": "A completely family-friendly, educational-sounding statement."
},
"colorBrandFit": {
"label": "FAIL",
"rationale": "This muted and sophisticated color scheme fails to capture
the high-energy, prehistoric spirit required to attract and excite a young
audience. Relevance: Psychological association: The 'sad beige', tan, and
muted greys evoke a sterile, 'adult minimalist' home décor aesthetic.
Harmony: The colors are muddy and lifeless. Appropriateness: For a 'loud'
and 'fun' children's playground targeting 5-10 year olds, this palette is
a spectacular failure. It desperately needs vibrant, exciting primary
colors to attract kids."
}
}
},
Kegagalan halus (GAGAL)
// Almost on-brand color palette
{
"id": "sample-023",
"userInput": {
"companyName": "Apex Dental",
"description": "High-end cosmetic dentistry specializing in porcelain
veneers and laser whitening.",
"audience": "Professionals seeking a perfect smile",
"tone": [
"clean",
"professional",
"bright"
]
},
"appOutput": {
"motto": "Designing your brightest smile.",
"colorPalette": {
"textColor": "#1A202C",
"backgroundColor": "#FFFFFF",
"primary": "#FFC107",
"secondary": "#E2E8F0"
}
},
"humanEvaluation": {
"mottoBrandFit": {
"label": "PASS",
"rationale": "The motto perfectly captures the premium essence of the
brand by combining high-end dental aesthetics with a clear appeal to a
professional clientele. Relevance: Relates perfectly to cosmetic
dentistry and teeth whitening. Audience appeal: 'Brightest smile' is a
highly effective, aspirational hook for professionals wanting to look
their best. Tone consistency: Clean, upbeat, and exceedingly professional."
},
"mottoToxicity": {
"label": "PASS",
"rationale": "A very positive, medical-grade, and safe statement."
},
"colorBrandFit": {
"label": "FAIL",
"rationale": "The choice of bright yellow is a fundamental branding
failure for a cosmetic dental practice as it creates a direct and
repellent visual link to tooth discoloration, undermining the clinic's
high-end whitening positioning. Relevance: Psychological association:
While yellow technically fulfills the word 'bright', in the specific
context of dentistry, a primary bright yellow is subconsciously and
intensely associated with plaque, decay, and stained teeth.
Harmony: It stands out strongly but sends the wrong message.
Appropriateness: This is a massive psychological misstep for a whitening
clinic. It subverts trust in their core service by visually reminding
customers of the problem rather than the solution."
}
}
},
Penyelarasan jangkauan
Setelah kebenaran dasar Anda siap, sesuaikan penilaian dengan label manusia. Tujuan Anda adalah memastikan hakim selalu setuju dengan Anda dan meniru penilaian manusia. Anda dapat menghitung skor keselarasan sebagai persentase label buatan juri yang cocok dengan label buatan manusia.
// total = all test cases
// aligned = test cases where humanEval.label === llmJudgeEval.label
// For example, PASS and PASS
const alignment = (aligned / total) * 100;
Tetapkan skor keselarasan target, misalnya 85%. Target Anda dapat bervariasi untuk kasus penggunaan Anda.
Jalankan model penilaian terhadap set data penyelarasan Anda. Jika skor keselarasan Anda lebih rendah dari target, baca alasan hakim untuk memahami mengapa hakim memberikan label yang salah. Ubah petunjuk sistem dan perintah penilaian untuk menjembatani kesenjangan. Ulangi langkah ini hingga Anda mencapai target skor.
Praktik terbaik
Untuk membantu juri memberikan skor secara konsisten, ikuti praktik terbaik berikut:
- Hindari overfitting. Buat petunjuk umum, dan jangan membuatnya terlalu spesifik untuk set data perataan Anda. Jika Anda memberikan petunjuk tertentu, seperti menghindari frasa tertentu, hakim akan lulus uji keselarasan tertentu ini secara efektif, tetapi gagal digeneralisasi ke data baru. Masalah ini dikenal sebagai overfitting.
- Optimalkan petunjuk sistem dan perintah penilaian Anda. Teknik untuk mengoptimalkan prompt mencakup mengubah prompt secara manual, meminta LLM lain untuk menyarankan peningkatan, atau menerapkan perubahan berdasarkan kombinasi teknik ini. Teknik pengoptimalan perintah dapat dilakukan secara manual hingga sangat canggih, misalnya algoritma yang meniru evolusi biologis. Simpan log perubahan Anda untuk mengembalikannya jika diperlukan.
Untuk melihat cara kerja perataan di ThemeBuilder, jalankan pengujian perataan.
Menguji daya tarik dengan bootstrapping
Mencapai target keselarasan 85% tidak menjamin bahwa hakim Anda berperforma baik dengan data dunia nyata. Uji ketahanan hakim Anda dengan teknik statistik yang disebut bootstrapping. Bootstrapping membuat versi baru set data Anda tanpa upaya pelabelan tambahan.
- Pengujian: Lakukan pengambilan sampel ulang secara acak terhadap 30 item dari set data Anda dengan penggantian. Dalam satu kali eksekusi, kasus yang sulit dapat dipilih lima kali, sehingga pengujian menjadi jauh lebih sulit. Jalankan uji perataan pada kumpulan acak ini beberapa kali, dan hitung perataan rata-rata dan varians skor di seluruh proses ini. Tidak ada jumlah tertentu, tetapi 10 iterasi adalah dasar yang berguna untuk project berukuran sedang. Lakukan lebih banyak iterasi untuk mendapatkan keyakinan yang lebih tinggi.
- Perbaikan: Jika skor keselarasan Anda berfluktuasi secara signifikan (varians tinggi), hakim Anda belum dapat diandalkan. Skor awal Anda adalah kebetulan yang didorong oleh beberapa kasus mudah. Perluas rubrik Anda dan tambahkan contoh yang lebih beragam dan menantang ke set data penyelarasan Anda.
Anda dapat mencobanya.
Menguji konsistensi diri
Hakim hanya dapat dipercaya jika selalu memberikan jawaban yang sama untuk input yang sama. Jika Anda telah menyetel suhu ke 0, hakim 100% konsisten. Konfirmasi konsistensi ini.
- Pengujian: Jalankan penilai beberapa kali pada set data yang sama persis, misalnya pengambilan acak dari set data penyelarasan Anda. Hitung varians untuk setiap kasus pengujian di seluruh pengulangan tersebut. Usahakan konsistensi 100% (tanpa varian). Jika varians lebih besar dari nol, pengujian akan gagal karena hakim memberikan jawaban yang berbeda untuk input yang sama.
- Perbaiki: Perintah penilaian Anda mungkin ambigu atau suhunya terlalu tinggi.
Tulis ulang bagian perintah yang kurang jelas, khususnya rubrik penilaian Anda. Turunkan suhu ke 0 (atau setel
thinking_levelke tinggi), jika Anda belum melakukannya.
Untuk melihat cara kerjanya, jalankan pengujian.
Ujian akhir
Bootstrapping membantu Anda menjalankan pemeriksaan awal untuk mencegah overfitting. Selanjutnya, Anda akan menjalankan pengujian akhir menggunakan data baru. Ini adalah konfirmasi terakhir Anda bahwa hakim dapat memberi skor yang benar untuk input baru.
- Pengujian: Siapkan set data ujian akhir terpisah yang berisi 20 sampel berlabel manusia yang belum Anda gunakan selama penyelarasan. Jalankan hakim Anda terhadap set ini.
- Perbaiki: Jika skor keselarasan Anda tetap tinggi, juri Anda sudah siap. Jika skor turun tajam, hal ini menunjukkan overfitting: Anda menyesuaikan perintah terlalu sering untuk meneruskan data keselarasan tertentu. Perluas perintah, rubrik, dan contoh few-shot Anda.
Untuk melihat cara kerjanya, jalankan pengujian.
Ringkasan
Anda menjalankan berbagai pengujian untuk membuat hakim dasar, termasuk:
- Pengujian keselarasan memeriksa apakah hakim benar.
- Pemeriksaan data sensitivitas data bootstrapping dan ujian akhir: kemampuan hakim untuk tetap benar saat dihadapkan dengan data baru.
- Uji konsistensi mandiri mengukur derau sistem, yaitu seberapa besar keacakan internal hakim LLM memengaruhi hasil.