이 문서는 AI 에이전트 섹션의 일부입니다.
커스텀 Scorer 작성
내장 Scorer로 커버되지 않는 평가 기준이 있다면,@mlflow.genai.scorer 데코레이터를 사용하여 커스텀 Scorer를 작성할 수 있습니다. 커스텀 Scorer는 Python 함수로 구현하며, 프로그래밍적 검증과 LLM 기반 검증 모두 가능합니다.
프로그래밍 기반 커스텀 Scorer
LLM 기반 커스텀 Scorer
커스텀 Scorer를 평가에 적용
평가 데이터셋 구축
좋은 평가 데이터셋은 에이전트 품질 보장의 핵심입니다. 다양한 소스에서 평가 데이터를 확보하고, 지속적으로 보강하는 것이 중요합니다.| 소스 | 방법 | 장점 | 주의점 |
|---|---|---|---|
| 수동 작성 | 핵심 Q&A를 전문가가 직접 작성합니다 | 고품질, 정확한 기대 답변 | 시간 소요, 규모 한계 |
| 프로덕션 트레이스 | MLflow Tracing에서 실제 사용자 질문을 추출합니다 | 실제 사용 패턴 반영 | 기대 답변 수동 추가 필요 |
| Review App | 팀원들의 피드백에서 평가 데이터를 생성합니다 | 다양한 관점, 실제 피드백 | 리뷰어 확보 필요 |
| 기존 FAQ | 고객 지원 FAQ를 평가 데이터셋으로 변환합니다 | 빠른 구축, 검증된 답변 | FAQ 범위로 한정 |
| 합성 데이터 | LLM으로 질문-답변 쌍을 자동 생성합니다 | 대량 생성 가능 | 품질 검수 필요 |
평가 데이터셋 구성 모범 사례
프로덕션 모니터링
배포 후에도 Inference Table + MLflow Tracing 으로 에이전트 품질을 지속 모니터링합니다. 프로덕션 환경에서는 사전 평가 때와 다른 질문 패턴이 등장할 수 있으므로, 실시간 모니터링은 필수적입니다.핵심 모니터링 지표
| 지표 | 설명 | 경고 기준 (예시) |
|---|---|---|
| 응답 지연시간 | 요청부터 응답까지 걸리는 시간입니다 | P95 > 5초 |
| 토큰 사용량 | 입력/출력 토큰 수입니다. 비용과 직결됩니다 | 평균 > 2000 토큰/요청 |
| 오류율 | 에이전트가 오류를 반환하는 비율입니다 | > 2% |
| 사용자 피드백 | 👍/👎 비율 또는 CSAT 점수입니다 | 부정 피드백 > 15% |
| 환각율 | 검색 문서에 근거하지 않은 답변 비율입니다 | > 10% |
SQL로 모니터링 대시보드 구축
자동 재평가 파이프라인
프로덕션 트레이스를 주기적으로 수집하여 자동 재평가를 수행하면, 에이전트 품질 저하를 조기에 발견할 수 있습니다.CI/CD 파이프라인에서의 평가 자동화
에이전트를 코드로 관리할 때, CI/CD 파이프라인에 평가를 포함시키면 품질 게이트를 자동화할 수 있습니다. 프롬프트 변경이나 Tool 수정 시 자동으로 평가가 실행되어, 품질 저하를 사전에 방지합니다.정리
| 핵심 개념 | 설명 |
|---|---|
| mlflow.genai.evaluate() | 에이전트 품질을 자동으로 평가하는 핵심 함수입니다. 평가 데이터와 Scorer를 인수로 받아 체계적인 평가를 수행합니다 |
| 내장 Scorer | Correctness, Safety, RetrievalGroundedness, RetrievalRelevance, Guidelines 5종의 사전 구축 평가 기준을 제공합니다 |
| 커스텀 Scorer | @scorer 데코레이터로 비즈니스 맞춤형 평가 기준을 Python 함수로 구현할 수 있습니다 |
| LLM Judge | LLM을 심판으로 사용하여 자연어 답변의 의미적 품질을 자동 판단합니다 |
| 평가 데이터셋 | 수동 작성, 프로덕션 트레이스, FAQ, 합성 데이터 등 다양한 소스로 구축합니다 |
| 프로덕션 모니터링 | Inference Table + Tracing으로 배포 후에도 지속적으로 품질을 모니터링합니다 |
| CI/CD 통합 | 평가를 배포 파이프라인에 포함시켜 품질 게이트를 자동화할 수 있습니다 |