16 poin oleh darjeeling 2026-01-10 | 1 komentar | Bagikan ke WhatsApp

Ringkasan:

  • Benchmark LLM yang ada saja tidak cukup untuk mengukur secara akurat kinerja 'AI agent' yang menggunakan alat dan melakukan penalaran multi-langkah.
  • Evaluasi agent perlu menggabungkan unit test dan integration test, mirip dengan pengujian perangkat lunak.
  • Efektif untuk menggunakan campuran penilaian deterministik berbasis kode (code-based) dan penilaian berbasis model (model-based) yang memanfaatkan LLM.
  • Sesuai siklus hidup pengembangan agent, perlu beralih dari 'Capability Evals' ke 'Regression Evals'.

Ringkasan detail:

  1. Mengapa evaluasi AI agent sulit
    Tidak seperti chatbot sederhana (single-turn), agent menggunakan alat, mengubah status lingkungan, dan menyelesaikan tugas dalam beberapa tahap (multi-turn). Karena itu, hanya memeriksa jawaban akhir saja tidak cukup; perlu mengevaluasi secara menyeluruh apakah agent menggunakan alat yang tepat, apakah prosesnya efisien, dan sebagainya.

  2. Struktur evaluasi agent (Eval)
    Sistem evaluasi yang efektif terdiri dari elemen-elemen inti berikut.

  • Task: Satu test case dengan input yang ditentukan dan kriteria keberhasilan.
  • Grader: Logika yang memberi skor pada hasil eksekusi agent.
  • Transcript: Catatan eksekusi lengkap yang mencakup proses berpikir agent, pemanggilan alat, hasil antara, dan sebagainya.
  • Outcome: Status akhir lingkungan yang berubah setelah eksekusi agent (misalnya, apakah reservasi benar-benar dibuat di DB).
  1. Perbandingan jenis grader
    Anthropic merekomendasikan untuk menggabungkan tiga jenis grader berikut.
Jenis Deskripsi Kelebihan Kekurangan
Berbasis kode (Code-based) Pencocokan string, regex, analisis statis, menjalankan unit test, dll. Cepat, murah, objektif, dapat direproduksi Bisa melewatkan nuansa yang kompleks, kurang fleksibel
Berbasis model (Model-based) Menggunakan LLM sebagai juri untuk penilaian berbasis rubrik Fleksibel, dapat menangkap nuansa, cocok untuk pertanyaan terbuka Bisa non-deterministik, berbiaya, perlu kalibrasi oleh manusia
Manusia (Human) Review oleh pakar, crowdsourcing 'Gold standard' untuk kualitas Sangat lambat dan mahal
  1. Contoh evaluasi coding agent (konfigurasi YAML)
    Saat mengevaluasi coding agent, yang dilihat bukan hanya apakah kode berjalan (tes deterministik), tetapi juga gaya coding atau ada tidaknya pelanggaran keamanan (analisis statis/penilaian LLM). Berikut contoh hipotetis konfigurasi evaluasi untuk task 'memperbaiki kerentanan keamanan'.
task:  
  id: "fix-auth-bypass_1"  
  desc: "Memperbaiki kerentanan bypass autentikasi yang terjadi saat field kata sandi kosong"  
  graders:  
    # 1. Tes deterministik: periksa apakah kode tes yang sebenarnya lolos  
    - type: deterministic_tests  
      required: [test_empty_pw_rejected.py, test_null_pw_rejected.py]  
    
    # 2. Penilaian rubrik LLM: evaluasi kualitas dan gaya kode  
    - type: llm_rubric  
      rubric: prompts/code_quality.md  
    
    # 3. Analisis statis: jalankan linter dan alat keamanan  
    - type: static_analysis  
      commands: [ruff, mypy, bandit]  
    
    # 4. Pemeriksaan status: verifikasi apakah log keamanan tercatat dengan benar  
    - type: state_check  
      expect:  
        security_logs: {event_type: "auth_blocked"}  
    
    # 5. Verifikasi penggunaan alat: apakah file yang diperlukan dibaca dan dimodifikasi  
    - type: tool_calls  
      required:  
        - {tool: read_file, params: {path: "src/auth/*"}}  
        - {tool: edit_file}  
        - {tool: run_tests}  
  
  # Metrik yang dilacak  
  tracked_metrics:  
    - type: transcript  
      metrics:  
        - n_turns # jumlah turn  
        - n_toolcalls # jumlah pemanggilan alat  
        - n_total_tokens # penggunaan token  
    - type: latency  
      metrics:  
        - time_to_first_token  
  1. Metrik evaluasi
    Untuk menangani sifat non-deterministik agent, selain akurasi sederhana digunakan juga metrik berikut.
  • pass@k: Probabilitas berhasil setidaknya sekali dalam k percobaan (mengukur kemampuan eksplorasi).
  • pass^k: Probabilitas semua percobaan berhasil saat dicoba k kali (mengukur konsistensi/keandalan).
  1. Alat dan framework
    Untuk membangun sistem evaluasi, disarankan memanfaatkan alat seperti Harbor (eksekusi lingkungan kontainer), Promptfoo (konfigurasi tes berbasis YAML), Braintrust, LangSmith, atau membangun framework sendiri yang sesuai dengan workflow tim. Yang penting bukan framework itu sendiri, melainkan tersedianya test case berkualitas tinggi.

1 komentar

 
darjeeling 2026-01-10

Karena isinya bagus, saya menambahkan versi terjemahan bahasa Korea.

https://rosettalens.com/s/ko/demystifying-evals-for-ai-agents