🔍가이드
RAG 챗봇이 틀린 답변을 자신있게 하는 이유와 해결법
RAG 시스템에서 검색 품질이 낮을 때 발생하는 환각 현상과 최소 점수 기준, 리랭킹을 통한 해결 방법
↗ 원본 링크#RAG#챗봇#벡터검색#리랭킹#환각
문제 상황
RAG(Retrieval-Augmented Generation)를 적용한 사내 규정 챗봇이 예상과 다르게 동작합니다. 연차 이월 규정을 물으면 출장비 규정을 근거로 답변하고, 심지어 "규정 제12조에 따르면"이라며 존재하지 않는 출처까지 덧붙입니다.
원인 분석
검색 로그를 확인한 결과, 유사도 점수가 낮은 청크들이 무조건 상위 3개로 LLM에 전달되고 있었습니다. 관련성이 낮은 문서를 받은 LLM은 그것을 억지로 활용해 답변을 만들어냅니다.
올바른 해결 방법 (정답: 3번)
검색 결과에 최소 점수 기준 적용
▸유사도 점수가 일정 기준 이하인 청크는 제외
▸관련 없는 문서가 LLM에 전달되는 것을 방지
리랭킹(Reranking) 도입
▸1차 벡터 검색 후, 더 정교한 모델로 재정렬
▸질문과 문서의 실제 관련성을 더 정확히 평가
실제 근거 청크만 사용하도록 제한
▸검색된 청크와 답변의 연결성 강화
▸근거 없는 내용 생성 방지
왜 다른 방법들은 부족한가?
1번 (큰 LLM + 프롬프트 강화): 애초에 잘못된 문서를 받으면 LLM이 아무리 커도 정확한 답변 불가능
2번 (청크 크기 조정): 검색 품질 필터링 없이는 여전히 관련 없는 청크가 전달됨
4번 (temperature 조정): 일관성은 높아지지만 잘못된 근거 문제는 해결되지 않음
핵심 교훈
RAG 시스템에서 가장 중요한 것은 검색 품질입니다. 아무리 좋은 LLM이라도 잘못된 문서를 받으면 잘못된 답변을 생성합니다. 최소 점수 기준과 리랭킹으로 검색 단계를 개선하는 것이 핵심입니다.