← Semua pembelajaran / AWS untuk AI Engineer
Fase 7 · Observability, Biaya & Evaluasi

Bedrock Evaluations

Tanpa evaluasi, satu-satunya detektor penurunan kualitas adalah keluhan pengguna. Bedrock evaluations memberi angka yang bisa dibandingkan antar rilis.

Intisari

  • Tiga bentuk: otomatis (metrik terhitung), judge model (LLM menilai LLM), dan manusia.
  • Judge model memberi skor beserta penjelasan untuk setiap respons.
  • Bisa memakai dataset prompt bawaan, atau dataset buatanmu sendiri untuk kasus spesifik.
  • Bisa mengevaluasi model dan knowledge base di dalam maupun di luar Bedrock.
  • Evaluasi manusia dipakai saat kualitasnya bernuansa dan butuh penilaian pakar.

Tiga bentuk evaluasi

BentukCara kerjaCocok untuk
OtomatisMetrik terhitung atas dataset promptPerbandingan cepat antar model dan konfigurasi
Judge modelLLM kedua menilai respons dan menjelaskan alasannyaKualitas yang tidak bisa diukur metrik sederhana
ManusiaTim penilai — karyawan atau pakar bidangNuansa, kepatuhan, dan preferensi yang halus

Judge model adalah titik tengah yang praktis. Ia jauh lebih murah dan cepat daripada penilai manusia, dan lebih peka terhadap nuansa daripada metrik string. Penjelasan yang menyertai skor juga berharga: ia memberi tahu kenapa sebuah jawaban dinilai buruk, bukan sekadar angkanya.

Dataset evaluasi

{"prompt":"Berapa hari cuti tahunan karyawan tetap?","referenceResponse":"12 hari kerja per tahun."}
{"prompt":"Bisakah cuti tahunan diuangkan?","referenceResponse":"Tidak. Cuti tahunan tidak dapat diuangkan."}
{"prompt":"Siapa yang menyetujui cuti lebih dari 5 hari?","referenceResponse":"Kepala departemen dan HR."}

Dataset yang baik punya empat golongan, dan yang ketiga paling sering hilang:

GolonganContohMenguji
Pertanyaan lugas"Berapa hari cuti tahunan?"Jalur normal
Perlu penalaran"Kalau saya masuk Maret, berapa jatah cuti tahun ini?"Kemampuan menyimpulkan
Di luar cakupan"Berapa gaji manajer?"Apakah model menolak — bukan mengarang
Ambigu"Bagaimana soal cuti itu?"Apakah model meminta klarifikasi

Golongan ketiga adalah pengukur halusinasi. Model yang menjawab "gaji manajer adalah 25 juta" untuk pertanyaan yang jawabannya tidak ada di dokumen mana pun adalah kegagalan yang jauh lebih berbahaya daripada jawaban yang kurang lengkap.

Menjalankan

kelola = boto3.client("bedrock")

kelola.create_evaluation_job(
    jobName="eval-asisten-hr-2026-08",
    roleArn=ROLE_EVAL,
    evaluationConfig={"automated": {
        "datasetMetricConfigs": [{
            "taskType": "QuestionAndAnswer",
            "dataset": {"name": "cuti-2026",
                        "datasetLocation": {"s3Uri": "s3://eval-ku/cuti.jsonl"}},
            "metricNames": ["Builtin.Accuracy", "Builtin.Robustness", "Builtin.Toxicity"],
        }]
    }},
    inferenceConfig={"models": [{"bedrockModel": {
        "modelIdentifier": MODEL_ID,
        "inferenceParams": json.dumps({"temperature": 0.0}),
    }}]},
    outputDataConfig={"s3Uri": "s3://eval-ku/hasil/"},
)

Menjadikannya gerbang rilis

Angka evaluasi baru berguna kalau ia bisa menghentikan deploy. Ini menyambung langsung ke stage evaluasi di pipeline Fase 2:

  1. Simpan skor baseline dari rilis yang sekarang berjalan.
  2. Setiap perubahan prompt, model, atau konfigurasi RAG memicu evaluasi.
  3. Bandingkan dengan baseline.
  4. Turun melewati ambang → pipeline gagal, deploy berhenti.
  5. Naik → jadikan baseline baru.

Perubahan prompt adalah perubahan produksi. Ia tidak membuat satu pun tes unit gagal, tidak memunculkan error, dan tidak terlihat di metrik operasional. Tanpa gerbang evaluasi, satu-satunya alarmnya adalah pengguna yang mengeluh beberapa minggu kemudian.

Apa yang layak dievaluasi

KeputusanBandingkan
Pilihan modelModel besar vs kecil pada dataset yang sama
Strategi chunkingFixed vs hierarchical (latihan Fase 4)
RerankerDengan dan tanpa
Perubahan promptVersi lama vs baru
Ambang guardrailBerapa banyak jawaban benar ikut terblokir

Latihan: susun dataset 20 pertanyaan dengan keempat golongan di atas — minimal lima di antaranya di luar cakupan. Jalankan evaluasi untuk dua model berbeda dan catat skornya. Simpan angka yang menang sebagai baseline untuk gerbang rilis.

Rangkuman ini sengaja dipangkas ke bagian yang dipakai di roadmap. Buka sumber aslinya saat kamu butuh detail lengkap atau referensi parameter.