12차시. RAG 품질 문제
퀴즈 2 — 네 가지 실패 유형 중 하나 고르기
네 가지 실패 이름 중 하나만 고르세요. 근거가 있고 없는 사실을 붙였으면 환각.
빈칸 코드에서 시작합니다.
def label(has_gold, gold_cut_off, invented, noisy):
pass결과 보기 (예시 풀이)
def label(has_gold, gold_cut_off, invented, noisy):
# 앞 단계부터 차례로 봅니다. 앞에서 걸리면 뒤는 보지 않습니다.
# 1) 정답 조각을 아예 못 찾았으면 검색 실패
if not has_gold:
return "검색 실패"
# 2) 조각은 왔지만 필요한 문장이 잘렸으면 문맥 부족
if gold_cut_off:
return "문맥 부족"
# 3) 근거가 충분한데 없는 사실을 붙였으면 환각
if invented:
return "환각"
# 4) 관련 없는 조각이 많아 답이 흐려졌으면 노이즈
if noisy:
return "노이즈"
# 넷 다 아니면 통과입니다.
return "통과"
# 근거가 있고 없는 사실을 붙인 경우 -> "환각"
print(label(True, False, True, False))
# 정답 조각이 없는 경우 -> 다른 값과 상관없이 "검색 실패"
print(label(False, False, True, True))
# 조각은 왔지만 조건이 잘린 경우 -> "문맥 부족"
print(label(True, True, False, False))
# 아무 문제도 없는 경우 -> "통과"
print(label(True, False, False, False))
실행 결과
환각
검색 실패
문맥 부족
통과채점 기준: 순서는 검색, 문맥 부족, 환각, 노이즈.
관련 교안: 12차시 「2. RAG 4대 실패 유형」