LLM 모델의 RAG 성능을 평가한다. RAGAS 평가지표를 이용해 평가한다.
질문-답변 형식 평가 데이터셋 생성 -> RAG Chain 호출 -> 성능 측정 순서이다.

user_input)과, 그 질문에 대한 기준 정답(reference), 그리고 참조 컨텍스트(qa_context)를 포함한 데이터셋 생성JsonOutputParser를 통해 EvalSchema(user_input, reference, qa_context) 형식으로 저장과정:
user_input을 rag_chain에 입력해 실제 RAG 모델의 답변을 생성
이때 rag_chain.invoke() 결과로 두 가지를 얻음:
llm_answer: RAG의 실제 응답source_context: RAG가 해당 질문에 대해 참조한 문서 context이 데이터를 평가셋에 추가
입력:
user_inputreference (기준 정답)llm_answer (RAG 출력)source_context (RAG가 실제로 본 문서)RAGAS 주요 지표:
faithfulness: 응답이 실제 context에 근거했는가?answer_relevancy: 질문과 답변이 얼마나 잘 맞는가?context_precision: context에서 꼭 필요한 정보만 사용했는가?context_recall: context가 충분히 제공되었는가?| 단계 | 역할 | 관련 객체 |
|---|---|---|
| Q&A 생성 | 평가 데이터 생성 | EvalSchema, JsonOutputParser, PromptTemplate |
| RAG 응답 | 실제 RAG chain 호출 | rag_chain.invoke() |
| RAGAS 평가 | 성능 측정 | RagasMetric.eval() 또는 evaluate() |