Harness Anda Akan Menipu Anda Sebelum Model Anda Melakukannya
Papan markah penilaian anda menyatakan kedua-dua enjin gagal.
Llama3.2 gagal dalam 5 daripada 6 kes. Anthropic Sonnet gagal dalam 6 daripada 6 kes.
Labelnya adalah "malformed." Tetapi puncanya berbeza.
Satu kegagalan adalah ralat API kerana kredit telah habis. Satu kegagalan adalah disebabkan bait kawalan terminal daripada arahan CLI yang merosakkan teks. Satu kegagalan adalah JSON yang sah tetapi dibungkus dalam pagar markdown yang tidak dapat dibaca oleh parser.
Jika saya menerbitkan ringkasan pertama itu, saya akan berbohong. Saya akan menyalahkan model atas kegagalan dalam kod saya sendiri.
Saya menemui pepijat ini dengan melihat rekod mentah dan bukannya mempercayai ringkasan tersebut.
Pepijat pertama berlaku kerana saya menggunakan subprocess CLI untuk memanggil Ollama. Arahan tersebut menghasilkan animasi terminal seperti 'spinner' dan pergerakan kursor. Bait kawalan ANSI ini masuk ke dalam data saya. Parser mengesan aksara halimunan dan mengalami kegagalan.
Penyelesaiannya: Tukar daripada subprocess CLI kepada HTTP API secara terus.
Pepijat kedua berlaku kerana LLM sering membungkus JSON dalam pagar markdown. Parser saya menggunakan json.loads() pada rentetan mentah. Ia mengesan tanda backtick dan gagal.
Penyelesaiannya: Tambah fungsi untuk membuang pagar kod sebelum proses parsing.
Sebaik sahaja saya membaiki saluran (pipe) tersebut, keputusan sebenar mula kelihatan.
Model-model tersebut tidaklah "mati". Datanya cuma menjadi bercelaru disebabkan oleh harness tersebut. Selepas pembaikan dibuat, jurang kualiti antara kedua-dua model menjadi jelas dan boleh diukur.
Pengajaran untuk saluran penilaian AI anda:
- Simpan output mentah. Jika ringkasan menyatakan malformed, output mentah adalah satu-satunya sumber kebenaran anda.
- Rekodkan sebab kegagalan. Jangan sekadar menyebut "malformed." Nyatakan "API error" atau "parse error."
- Bekukan piawaian ujian anda. Jangan ubah peraturan anda semata-mata untuk menjadikan keputusan kelihatan lebih baik.
- Anggap harness sebagai sebahagian daripada sistem yang sedang diuji.
Model bukan satu-satunya perkara yang sedang diuji. Kod anda juga sama.
Sumber: https://dev.to/kenielzep97/your-harness-will-lie-to-you-before-your-model-does-662
Komuniti pembelajaran pilihan: https://t.me/GyaanSetuAi
