Membangun Kumpulan Uji Emas
Kurasi 50–200 pasangan (masukan, keluaran yang diharapkan) berkualitas tinggi yang mencakup berbagai kasus penggunaan nyata.
Membangun Kumpulan Uji Emas adalah pelajaran AI Agents gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar AI Agents, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus AI Agents mencakup 4 pelajaran total.
Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.
Apa Itu Set Acuan?
"Kumpulan pengujian acuan" (atau "set acuan") adalah kumpulan pasangan (masukan, keluaran yang diharapkan) yang dikurasi dan mendefinisikan perilaku yang baik.
Setiap perubahan diukur berdasarkan kumpulan ini.
Sifat Set Acuan yang Baik
- Beragam — mencakup kasus umum AND kasus batas
- Dikurasi oleh manusia — bukan dibuat secara otomatis
- Memiliki versi — dibekukan di repositori Anda
- Terdokumentasi — setiap kasus memiliki alasan
Berapa Banyak Kasus?
Aturan praktis:
- 50 kasus — minimum yang layak digunakan
- 200 kasus — cakupan yang baik
- 1000+ kasus — produk yang matang
Kualitas > kuantitas. 50 kasus yang dipilih dengan baik lebih unggul daripada 500 kasus acak.
Sumber Kasus
- Wawancara pengguna — apa yang ditanyakan pengguna nyata
- Log produksi — pertanyaan yang masuk
- Laporan bug — setiap bug menjadi evaluasi
- Pembuatan kasus adversarial — minta LLM untuk merusak agen
Mining Bad Production Traces
for trace in last_week_traces():
if trace.has_thumbs_down or trace.had_error:
case = {
'input': trace.input,
'why_bad': trace.feedback_comment,
'expected': None # to be filled by human reviewer
}
save_to_review_queue(case)Keluaran yang Diharapkan: Persis vs Heuristik
Ada dua jenis keluaran yang diharapkan:
- Kecocokan persis — untuk ekstraksi, klasifikasi, dan perhitungan
- Heuristik — untuk tanya jawab terbuka, nilai apakah fakta penting muncul
Heuristic Scoring
def score_answer(actual, expected_facts):
return sum(1 for f in expected_facts if f.lower() in actual.lower()) / len(expected_facts)
case = {
'input': 'What is our refund policy?',
'expected_facts': ['30 days', 'unopened', 'receipt required'],
'min_score': 0.66 # at least 2 of 3 facts mentioned
}
actual_answer = "You can return items within 30 days if they are unopened."
score = score_answer(actual_answer, case['expected_facts'])
print(f"Score: {score:.2f} (min required: {case['min_score']})")
Kasus Adversarial
Sertakan kasus yang sulit:
- Pertanyaan di luar cakupan ("Bagaimana cuaca di Mars?")
- Permintaan yang ambigu
- Upaya injeksi perintah
- Masukan dalam bahasa asing
- Masukan yang sangat panjang
Pembuatan Versi Set Acuan
Simpan sebagai JSON di repositori Anda. Setiap PR yang memperbarui set tersebut harus menjelaskan alasannya:
// gold-set.json
[
{
"id": "refund-policy-001",
"input": "What is your refund policy?",
"expected_facts": ["30 days", "unopened", "receipt required"],
"added_by": "alice@",
"added_at": "2025-08-12",
"reason": "Top customer support question"
}
]Pembagian Pengujian/Penahanan
Untuk mendeteksi penyesuaian berlebihan, bagi menjadi:
- Set pengembangan — lakukan iterasi di sini (Anda melihatnya)
- Set pengujian — lakukan pengukuran di sini (Anda NOT menyetelnya berdasarkan set ini)
- Set penahanan — hanya digunakan sebelum rilis besar
Pemberian Label Pareto
Beri label pada kasus berdasarkan kategori agar Anda dapat melihat WHERE terjadi regresi:
tag1 = {'tags': ['policy', 'common-question']}
tag2 = {'tags': ['math', 'edge-case']}
print(tag1)
print(tag2)
# Run eval and report:
print("Category 'policy': 0.92")
print("Category 'math': 0.68 <- regression here")
Rubrik Evaluasi
Untuk keluaran yang kompleks, tulis rubrik: apa yang harus ada, apa yang harus NOT ada, dan apa yang lebih disukai:
rubric = {
'must_include': ['30 days'],
'must_not_include': ['no refunds'],
'preferably_includes': ['receipt']
}
for k, v in rubric.items():
print(f"{k}: {v}")
Sumber Kasus
Apa sumber kasus evaluasi dengan sinyal tertinggi?
Ringkasan
50+ kasus yang dikurasi, bersumber dari pengguna nyata dan kegagalan produksi. Buat versinya; beri label; bagi menjadi pengembangan/pengujian/penahanan. Kembangkan setiap kali terjadi bug.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Membangun Kumpulan Uji Emas” gratis?
Ya — teks lengkap “Membangun Kumpulan Uji Emas” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus AI Agents, upgrade ke CoddyKit PRO. Kursus AI Agents mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Membangun Kumpulan Uji Emas”?
Kurasi 50–200 pasangan (masukan, keluaran yang diharapkan) berkualitas tinggi yang mencakup berbagai kasus penggunaan nyata. Kamu berlatih AI Agents dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai AI Agents?
Tidak diperlukan pengalaman sebelumnya. AI Agents di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Membangun Kumpulan Uji Emas” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran AI Agents ini?
Ya. Setiap pelajaran AI Agents menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Pengembangan Agen Berbasis Evaluasi
- Membangun Kumpulan Uji Emas
- Kendala LLM sebagai Juri
- Rangkaian Tolok Ukur: SWE-Bench, GAIA, ToolBench