턴 컨텍스트 관련성
턴 컨텍스트 관련성 (Turn Contextual Relevancy)
RAG 시스템에서 각 턴마다 검색된 컨텍스트가 그 턴의 사용자 질문과 관련 있는지 확인하고 싶을 때가 있죠. Turn Contextual Relevancy는 그런 multi-turn RAG 메트릭으로, LLM-as-a-judge를 사용해 대화의 각 턴에서 검색된 컨텍스트가 해당 턴의 사용자가 물은 내용과 관련 있는지 평가해요.
출처: 문서
본문
개요
turn contextual relevancy 메트릭은 LLM-as-a-judge를 사용해, 대화의 각 턴에서 검색된 컨텍스트가 해당 턴의 사용자가 물은 내용과 관련 있는지 평가하는 multi-turn RAG 메트릭이에요.
turn contextual relevancy 메트릭은 테스트 케이스의 턴에 role와 content만이 아니라 retrieval context가 필요해요.
필수 파라미터
turn contextual relevancy 메트릭을 평가하려면 테스트 케이스에 다음 파라미터를 제공해야 해요.
turns (list of Turn, required)
사용자와 어시스턴트의 교환으로 이루어진 Turn 목록.
Turn의 파라미터:
role (user | assistant, required)
말하는 사람의 역할. user 또는 assistant 중 하나예요.
content (string, required)
해당 턴에서 role이 제공한 내용.
retrieval_context (list of string, required)
해당 턴에 대해 리트리버가 출력한 검색 컨텍스트. 랭크 순으로 정렬돼 있어요.
어떻게 계산되나요?
turn contextual relevancy 메트릭은 턴들 위로 창을 밀면서, LLM으로 창 안의 각 검색 컨텍스트 노드에서 문장을 추출하고, 같은 LLM으로 그 문장 중 몇 개가 해당 턴의 사용자 내용과 관련 있는지 결정해요.
$$ \text{Turn Contextual Relevancy} = \frac{\sum \text{Turn Contextual Relevancy Scores}}{\text{Total Number of Assistant Turns}} $$
각 턴은 contextual relevancy 메트릭과 같은 방식으로 채점돼요. 해당 턴의 모든 문장 중 관련 문장의 비율로 계산되죠.
최종 점수는 대화에서 모든 어시스턴트 턴의 contextual relevancy 점수 평균이에요.
사용 방법
Confident AI에서 turn contextual relevancy 메트릭을 실행하려면 multi-turn metric collection에 추가하세요. 그러면 다음에 사용할 수 있어요.
- Multi-turn E2E 테스트
- trace와 span의 온라인 및 오프라인 eval
더 알아보기
- Contextual Relevancy — single-turn 검색 컨텍스트 관련성 메트릭
- Metric Collections — 원격 평가를 위한 메트릭 묶기