Evaluation & Observability
LLM Evaluation, Golden Datasets, Regression Testing, Tracing, Monitoring, Hallucination Tracking.
"Trông có vẻ ổn" không phải là tiêu chí kỹ thuật. Vì output của LLM không xác định (non-deterministic), AI Engineer cần thay thế trực giác bằng số liệu — đây là kỹ năng phân biệt hệ thống AI "đồ chơi" với hệ thống AI được tin dùng trong doanh nghiệp, và là năng lực bị đánh giá thấp nhất so với mức độ cần thiết thực tế.
🎯 Mục tiêu học tập
- Xây dựng golden dataset (bộ câu hỏi/đáp án chuẩn) để đánh giá hệ thống một cách khách quan, lặp lại được
- Thiết kế bộ metric đánh giá phù hợp (faithfulness, relevance, answer correctness...)
- Thiết lập regression testing để không bị "thụt lùi" khi đổi prompt/model/chunking strategy
- Triển khai tracing và monitoring cho hệ thống AI production
- Xây cơ chế theo dõi và giảm thiểu hallucination
Golden Dataset — nền tảng của mọi đánh giá
Golden dataset là tập câu hỏi (hoặc tình huống) đại diện kèm đáp án/tiêu chí đúng đã được con người xác nhận — nên có ít nhất 50-100 mẫu bao phủ cả trường hợp phổ biến lẫn edge case (câu hỏi ngoài phạm vi dữ liệu, câu hỏi mơ hồ, câu hỏi cố tình gây nhầm lẫn). Không có golden dataset, mọi thay đổi (đổi prompt, đổi model, đổi chiến lược chunking) đều là "đoán mò".
Metric đánh giá LLM/RAG
- Faithfulness/Groundedness: câu trả lời có dựa đúng vào nguồn được retrieval hay model tự bịa (hallucinate) thông tin không có trong context?
- Answer relevance: câu trả lời có thực sự giải quyết câu hỏi được hỏi?
- Context precision/recall: retrieval có lấy đúng và đủ các đoạn liên quan không (đánh giá riêng phần retrieval, tách khỏi phần generation)?
- LLM-as-judge: dùng một model mạnh khác để chấm điểm câu trả lời theo rubric — cách phổ biến nhất để scale đánh giá tự động, nhưng cần tự kiểm định (model chấm có đồng thuận với con người không) trước khi tin tưởng hoàn toàn.
Regression Testing cho hệ thống AI
Áp dụng tư duy CI/CD quen thuộc: mỗi lần đổi prompt, model, hay retrieval strategy, chạy lại toàn bộ golden dataset tự động, so sánh điểm số với baseline, chặn merge nếu điểm giảm quá ngưỡng cho phép — giống hệt cách chạy test suite trước khi merge code, chỉ khác "assertion" giờ là một điểm số do LLM-as-judge hoặc metric tự động chấm thay vì so sánh bằng-chính-xác.
Tracing & Monitoring
Với hệ thống agent nhiều bước, cần tracing ghi lại toàn bộ chuỗi: input → các bước retrieval/tool-call trung gian → output cuối, kèm token dùng và thời gian mỗi bước — không có tracing, debug một agent bug "thi thoảng mới xảy ra" gần như bất khả thi. Các công cụ phổ biến (LangSmith, Arize Phoenix, Braintrust, hoặc tự xây trên nền OpenTelemetry) cho phép xem lại từng trace, so sánh giữa các phiên bản, và cảnh báo khi tỉ lệ lỗi/latency/chi phí bất thường.
Hallucination Tracking
Không thể loại bỏ 100% hallucination, nhưng có thể đo lường và giảm thiểu có hệ thống: bắt buộc model trích dẫn nguồn cho mọi khẳng định (giúp người dùng tự kiểm chứng và giúp bạn tự động kiểm tra trích dẫn có khớp nguồn thật không), dùng faithfulness score làm cảnh báo tự động, và thu thập feedback người dùng (nút 👍/👎 kèm lý do) làm nguồn dữ liệu liên tục cải thiện golden dataset.
🏋️ Bài tập thực hành
Xây golden dataset 50 câu hỏi cho hệ thống RAG ở Module 6 (bao gồm 10 câu "bẫy" ngoài phạm vi dữ liệu để kiểm tra model có biết từ chối trả lời không thay vì bịa). Viết script chạy tự động: gọi hệ thống với từng câu hỏi, chấm faithfulness + relevance bằng LLM-as-judge, xuất báo cáo điểm trung bình. Chạy lại sau khi đổi 1 tham số (ví dụ top-k retrieval) và so sánh kết quả.
📚 Tài nguyên học tập
-
Ragas — DocumentationFramework đánh giá RAG mã nguồn mởDocs
-
LangSmith — DocumentationTracing & evaluation cho ứng dụng LLMDocs
-
Braintrust — DocsNền tảng eval & observability cho LLMDocs
-
Arize Phoenix — DocsTracing & observability mã nguồn mở, nền OpenTelemetryDocs
✅ Tự đánh giá hoàn thành
- Xây được golden dataset tối thiểu 50 mẫu có cả edge case
- Triển khai được ít nhất 2 metric đánh giá tự động (vd. faithfulness, relevance)
- Có pipeline regression testing chạy lại golden set khi đổi cấu hình
- Triển khai tracing ghi lại đầy đủ các bước trung gian của 1 request