πŸ›‘ Stop Coding by “Vibes”! Ini Cara Bikin Produk AI yang Beneran Bagus (Bukan Hoki)


Siapa yang kalau deploy fitur AI (RAG/Chatbot) tesnya cuma ngetik 3 pertanyaan, merasa “wah oke nih”, terus langsung push to prod? πŸ˜…

Eugene Yan (Amazon) mengingatkan kita: “Jika kamu tidak bisa mengukurnya, kamu tidak bisa memperbaikinya.” Mengandalkan feeling (“Vibe Check”) itu bahaya.

Ini rangkuman strategi Product Evals yang wajib diterapkan:

1. ⚠️ Problem Statement (Masalah)
* The “Vibe” Trap: Developer sering menilai kualitas AI secara subjektif. Hari ini dibilang bagus, besok dibilang jelek, padahal prompt-nya sama.
* Regression Nightmare: Saat kamu ubah prompt untuk memperbaiki satu bug, kamu nggak sadar kalau kamu merusak 10 fitur lain yang sebelumnya jalan lancar.
* Stagnasi: Tanpa metrik angka yang jelas, tim bingung: “Apakah model Llama-3 beneran lebih baik dari Mistral buat kasus kita?”

2. πŸ› οΈ Metodologi & Solusi
Jangan langsung lompat ke tes manusia yang mahal. Gunakan Hirarki Evaluasi 3 Level:
* Level 1: Unit Tests (Assertion): Tes deterministik yang cepat & murah.
* Cek: Apakah outputnya JSON valid? Apakah ada link sumber? Apakah panjangnya < 500 kata?
* Level 2: Model-based Evals (LLM-as-a-Judge): Pakai LLM yang lebih pintar (misal GPT-4) untuk menilai LLM kamu.
* Cek: Apakah jawaban relevan dengan konteks? Apakah ada halusinasi? (Beri skor 1-5).
* Level 3: Human Evals: Tes manual oleh manusia (User/Expert).
* Cek: A/B testing di production. Ini paling akurat tapi paling lambat dan mahal.

3. πŸ“ˆ Findings & Hasil
* Data-Driven Decisions: Kita jadi punya “Skor Kualitas” (misal: 85/100). Kalau update baru bikin skor turun jadi 80, jangan deploy.
* Iterasi Cepat: Level 1 & 2 bisa jalan otomatis di CI/CD pipeline. Bug ketahuan dalam hitungan menit, bukan nunggu komplain user.
* Dataset Emas: Lama-kelamaan, kamu akan punya kumpulan “Golden Dataset” (pertanyaan + jawaban ideal) yang jadi aset berharga perusahaan.

4. πŸ’‘ Key Takeaways
* Start Simple: Nggak perlu tool canggih di awal. Mulai dari assert “error” not in response itu sudah lebih baik daripada nggak ada tes sama sekali.
* Look at the Data: Jangan cuma liat skor rata-rata. Liat sample data di mana AI kamu gagal total. Di situ letak insight-nya.
* Evaluation is Engineering: Perlakukan evaluasi AI sama seriusnya dengan Unit Test di software biasa.

πŸ’» How to Use / Implementation
Bagaimana cara mulai menerapkan ini di kodingan Python kamu?
Tahap 1: Simple Unit Test (pytest)
Cek format dasar tanpa butuh AI lain.
def test_response_format():
response = my_llm.generate(“Siapa presiden RI?”)
# Pastikan tidak kosong & format aman
assert response is not None
assert len(response) > 10
assert “Maaf saya tidak tahu” not in response
Tahap 2: LLM-as-a-Judge (Konsep)
Minta GPT-4 menilai jawaban sistem RAG kamu.
prompt = “””
Kamu adalah juri.
Pertanyaan: {input_user}
Jawaban AI: {output_ai}
Konteks: {dokumen_sumber}
Berikan skor 1-5: Apakah Jawaban AI sesuai dengan Konteks?
“””
score = gpt4.predict(prompt)
assert score >= 4
Pro-Tip: Gunakan library open-source seperti Ragas atau DeepEval untuk mempermudah Level 2.

πŸ”— Baca Panduan Lengkapnya:
https://eugeneyan.com/writing/product-evals/

#DataScience #MachineLearning #LLM #GenAI #ProductEngineering #SoftwareTesting #EugeneYan #TechBlog #MLOps

Leave a Comment