RAGAS 메트릭 개요
RAGAS 메트릭 개요
AI 시스템을 개선하려면 결국 '바뀐 게 더 나아졌는지'를 판단할 기준이 필요해요. 그런데 전통적인 평가 지표는 LLM 애플리케이션의 실제 품질을 담아내지 못하고, 사람이 일일이 확인하는 방식은 확장이 어렵죠. Ragas는 이런 문제를 LLM 기반 메트릭과 체계적인 실험으로 풀어요. 이 문서에서는 Ragas가 메트릭을 어떻게 설계하고 분류하는지 그 원리를 살펴볼게요.
메트릭이 왜 중요한가
AI 시스템에서 진전이란 곧 실험의 연속이에요. 각 실험은 '이렇게 바꾸면 성능이 좋아질 것'이라는 가설이고요. 하지만 명확하고 신뢰할 수 있는 메트릭이 없다면, 그 실험이 성공했는지(새 점수와 이전 점수의 차이가 양수인지) 실패했는지 구분할 수가 없어요. 메트릭은 나침반 역할을 해서, 개선을 수치로 만들고 성능 저하(regression)를 잡아내며, 최적화 노력을 사용자 영향과 비즈니스 가치에 맞춰 정렬해 줘요.
AI 애플리케이션의 메트릭 유형
수준별로 보면 크게 세 갈래로 나뉘어요.
- 엔드투엔드 메트릭(End-to-End): RAG 시스템이 내놓는 답변 자체가 정확한지(Answer correctness), 인용된 참고 문헌이 제대로 잡혀 관련성 있는지(Citation accuracy)를 평가해요.
- 컴포넌트 레벨 메트릭(Component-Level): 검색(retrieval) 단계가 관련 정보를 얼마나 효과적으로 찾아내는지를 측정해요. 검색 정확도가 50%처럼 낮다면, 그 컴포넌트를 개선하면 전체 성능이 오를 신호로 볼 수 있어요. 다만 한 컴포넌트를 고친다고 반드시 전체 결과가 좋아지진 않아요.
- 비즈니스 메트릭(Business): AI 시스템 성능을 조직의 목표와 연결해 실질적인 사업 성과를 수치화해요. 보통 배포 후 며칠·몇 주·몇 달이 지난 뒤에 계산되는 지표(lagging indicator) 성격을 띠죠.
Ragas에서의 메트릭 유형
내부 동작 방식에 따라 두 가지로 분류돼요.
- LLM 기반 메트릭: 평가에 LLM을 사용해요. 점수를 내기까지 한 번 이상의 LLM 호출이 일어나고, 같은 입력이라도 LLM이 항상 같은 결과를 주는 건 아니라서 어느 정도 비결정적(non-deterministic)일 수 있어요. Ragas의 LLM 기반 메트릭은 전부
MetricWithLLM클래스를 상속하며, 채점 전에 LLM 객체가 설정돼 있어야 해요. - 비(非)LLM 기반 메트릭: LLM 없이 평가해요. 문자열 유사도나 BLEU 점수 같은 전통적 방법을 쓰기 때문에 결정적(deterministic)이고요. 다만 이런 방식은 인간 평가와의 상관관계가 상대적으로 낮다고 알려져 있어요. 모두
Metric클래스를 상속해요.
데이터 관점에서도 나뉘죠. 단일 턴 메트릭은 사용자와 AI의 한 번의 상호작용을 평가하고 SingleTurnMetric 클래스에서 파생되며, single_turn_ascore로 점수를 매겨요. 다중 턴 메트릭은 여러 번의 상호작용을 평가하고 MultiTurnMetric을 상속하며 multi_turn_ascore를 사용해요.
출력 유형
메트릭이 내놓는 결과 형태에 따라 세 가지로 나눠요.
- 이산 메트릭(Discrete): 미리 정의된 범주 중 하나를 반환해요. 범주 사이 순서는 없고, pass/fail이나 good/okay/bad처럼 출력을 분류하는 데 써요. 커스텀 프롬프트를 직접 받아 빠른 커스텀 평가에 알맞아요.
from ragas.metrics import discrete_metric
@discrete_metric(name="response_quality", allowed_values=["pass", "fail"])
def my_metric(predicted: str, expected: str) -> str:
return "pass" if ...
- 수치 메트릭(Numeric): 지정된 범위 안의 정수나 실수를 반환해요. mean, sum, mode 같은 집계 함수를 지원해서 통계 분석에 유용해요.
메트릭 설계 원칙
효과적인 메트릭을 설계하려면 신뢰성(reliability), 해석 가능성(interpretability), 관련성(relevance)을 보장하는 몇 가지 핵심 원칙이 필요해요. Ragas도 메트릭을 설계할 때 이 원칙들을 따른답니다.