Inflearn Community Q&A
테스트데이터셋 평가지표 값 문제
Written on
·
29
·
Edited
0
5분 경의 테스트데이터셋 평가 에 대해 계산값이 자꾸 0.000이 나와서 context_docs와 retrieved_docs 내용을 확인해 보니 2번째 사진과 같이 나왔습니다.
content 내용은 동일해도 doc_id 값이 다르며, 함수 수정을 통해 doc_id를 동일하게 변경해도 평가지표 값이 0.000이 나옵니다.
애초에 구조 자체가 좀 달라서 발생하는 문제 같습니다.
제가 어떤 것을 해볼 수 있을까요?


python챗봇llmlangchainrag
Answer 1
0
pdstudio
Instructor
안녕하세요.
OfflineRetrievalEvaluators는 기본적으로 doc_id로 매칭합니다. context_docs와 retrieved_docs의 content가 같아도 doc_id가 다르면 전부 불일치로 평가지표가 0이 됩니다.
아래와 같이 matching_criteria=MatchingCriteria.PARTIAL을 추가하면 content 기반 매칭으로 전환됩니다.
from krag.evaluators import OfflineRetrievalEvaluators, MatchingCriteria
evaluator = OfflineRetrievalEvaluators(
actual_docs=context_docs,
predicted_docs=retrieved_docs,
matching_criteria=MatchingCriteria.PARTIAL # 이것만 추가
)
청크 크기 차이 등으로 content도 완전히 동일하지 않다면, ROUGE 기반 매칭을 쓸 수 있습니다.
from krag.evaluators import RougeOfflineRetrievalEvaluators, MatchingCriteria
evaluator = RougeOfflineRetrievalEvaluators(
actual_docs=context_docs,
predicted_docs=retrieved_docs,
matching_criteria=MatchingCriteria.PARTIAL,
match_method="rouge2",
threshold=0.8
)





