RAG가 틀렸다면 모델보다 검색 단계를 먼저 의심하라

RAG 답변이 틀렸다면 모델이나 프롬프트를 바꾸기 전에 필요한 근거가 검색됐는지 확인해야 한다. 정답 근거가 상위 검색 결과에 없다면 생성기는 그 근거를 활용할 수 없다. 근거가 검색됐는데 최종 입력에서 빠졌다면 증강 문제이고, 온전한 근거를 받고도 틀렸다면 생성 문제다.
따라서 최종 답변을 하나의 종합 점수로 평가해서는 오류의 시작점을 찾기 어렵다. 검색 적중률, 근거 충실성, 답변 정확성, 인용 일치도를 따로 기록하고 질문 유형별로 비교해야 한다. 작은 팀은 실제 업무를 대표하는 20~30개 골든 질문으로 이 진단을 시작할 수 있다.
오답을 검색·증강·생성으로 분해한다
RAG는 검색 결과와 생성 모델이 연결된 시스템이다. 실무 진단에서는 질문에 맞는 문서를 찾는 검색, 검색 결과를 선별·정렬해 모델 입력으로 구성하는 증강, 전달된 문맥으로 답을 작성하는 생성을 구분하는 편이 유용하다. RAG 종합 서베이 도 관련 기술을 검색·생성·증강이라는 세 축으로 분석한다.
겉으로 같은 오답이라도 고칠 대상은 다르다. 정답 문서가 검색되지 않았다면 문서 수집, 청크 분할, 메타데이터 필터, 질의 변환, 검색 방식이나 재정렬을 살펴야 한다. 올바른 청크가 검색됐지만 모델 입력에서 사라졌다면 중복 제거, 문맥 예산, 정렬 순서 같은 증강 구성이 원인일 수 있다.
질문별 실행 기록에는 원문 질문, 변환된 검색 질의, 상위 K개 결과와 점수, 재정렬 결과, 모델에 전달된 최종 문맥, 생성 답변과 인용을 남긴다. 이 기록이 있어야 동일한 오류를 재현하고 변경 전후를 같은 조건에서 비교할 수 있다.
명시적 사실과 숨은 추론은 다르게 평가한다

질문의 난도가 아니라 답에 필요한 근거의 형태를 구분해야 한다. 외부 데이터 활용 서베이 는 질의를 명시적 사실, 암시적 사실, 해석 가능한 근거, 숨은 근거의 네 수준으로 분류한다. 한 문장에 답이 드러난 질문과 여러 단서를 결합해야 하는 질문에 동일한 성공 조건을 적용하면 실패 원인이 흐려진다.
명시적 사실 질문은 정답과 적용 조건이 들어 있는 청크가 상위 결과에 포함됐는지부터 확인한다. 예를 들어 특정 사내 제도의 신청 기한을 묻는 조건부 질문이라면 날짜뿐 아니라 대상과 예외가 함께 적힌 근거가 필요하다. 키워드가 비슷한 다른 규정만 검색됐다면 답변 문장이 자연스러워도 검색 실패다.
숨은 추론 질문은 단일 청크의 적중 여부만으로 판정하기 어렵다. 서로 다른 문서의 자격 조건과 예외 조항을 결합해야 하는 조건부 질문이라면 필요한 근거 집합이 모두 검색됐는지와 그 관계를 올바르게 해석했는지를 나눠 봐야 한다. 문자열 일치만 사용하면 표현이 다른 정답을 놓치거나, 근거 없이 결론만 맞은 답을 통과시킬 수 있다.
골든 세트에는 질문 유형과 필요한 근거 수를 함께 표시한다. 자주 발생하는 단일 사실 질문, 여러 문서를 요구하는 질문, 조건이 모호한 질문, 지식베이스에 답이 없는 질문을 실제 사용 비중과 위험도에 맞춰 섞는다. 전체 평균과 유형별 결과를 함께 봐야 쉬운 질문의 성적이 복합 질문의 실패를 가리지 않는다.
네 지표를 하나의 점수로 뭉치지 않는다

검색과 생성을 별도 차원으로 평가해야 한다는 원칙은 자동 평가 연구에서도 확인된다. Ragas 논문 은 검색 문맥의 관련성과 집중도, 답변이 문맥에 근거하는 충실성, 생성 결과의 품질을 서로 다른 평가 차원으로 제시한다. 자동 채점기를 쓰더라도 종합 점수보다 어떤 차원에서 성능이 떨어졌는지를 읽어야 한다.
- 검색 적중률: 질문에 필요한 골든 근거가 상위 K개 결과에 포함됐는지 측정한다. 복합 질문은 필수 근거 중 몇 개를 찾았는지도 기록한다.
- 근거 충실성: 답변을 검증 가능한 주장으로 나누고, 모델에 실제로 전달된 문맥이 각 주장을 뒷받침하는지 본다. 현실에서 참인 내용도 전달 문맥에 없다면 근거 충실성에서는 실패다.
- 답변 정확성: 골든 답과 비교해 핵심 결론, 조건, 수치와 적용 범위가 맞는지 평가한다. 정확·부분 정확·오답으로 시작하되 빠지거나 틀린 필수 요소를 함께 남긴다.
- 인용 일치도: 인용된 문서의 해당 구절이 연결된 주장을 실제로 지지하는지 확인한다. 주제만 관련 있고 주장한 조건이나 수치가 없다면 불일치다.
네 지표는 서로 대체되지 않는다. 검색 적중률은 높지만 정확성이 낮다면 증강 구성이나 생성 지시를 의심할 수 있다. 답은 맞지만 충실성이 낮다면 모델이 전달된 문맥 밖의 지식을 사용했을 수 있다. 정확성과 충실성이 높더라도 인용이 다른 구절을 가리키면 사용자는 답의 근거를 검증하기 어렵다.
20~30개 질문으로 최소 평가표를 만든다

20~30개는 통계적으로 충분하다는 보장이 아니라 진단 절차를 가동하기 위한 시작점이다. 실제 사용 로그와 위험도가 높은 업무에서 질문을 고르고, 다음 항목을 한 행에 넣는다. 초기 표본은 사람이 근거와 인용을 직접 확인해 판정 기준을 맞추고, 자동 채점은 반복 실행을 돕는 보조 수단으로 사용한다.
- 질문 ID와 질문 유형
- 골든 답과 반드시 포함돼야 할 요소
- 골든 문서, 근거 구절과 필요한 근거 수
- 상위 K개 검색 결과와 근거 포함 여부
- 모델에 전달된 최종 문맥과 누락 여부
- 근거 충실성, 답변 정확성, 인용 일치도
- 최초 실패 단계와 원인 메모
채점 규칙은 단순하고 명시적이어야 한다. 검색은 골든 근거의 포함 여부와 필수 근거 회수 비율을 기록하고, 충실성은 문맥이 지원하는 주장 수를 전체 검증 가능 주장 수로 나눌 수 있다. 인용 일치도는 주장을 실제로 지지하는 인용의 비율로 계산하고, 답변 정확성은 필수 요소의 누락과 오류를 기준으로 등급화한다.
지식베이스에 답이 없는 질문도 반드시 포함한다. 이 경우 기대 행동은 추측이 아니라 근거 부족을 밝히거나 필요한 정보를 요청하는 것이다. 검색 근거가 없는데도 단정하는 답변을 별도로 표시하면 일반적인 정답 질문만으로는 드러나지 않는 위험을 볼 수 있다.
수정 순서는 최초 실패 단계가 정한다
평가가 끝나면 오답을 최종 점수순이 아니라 최초 실패 단계순으로 묶는다. 골든 근거가 상위 K개에 없다면 문서 수집과 청크 경계부터 필터, 질의 변환, 임베딩 또는 키워드 검색, 재정렬까지 검색 경로를 좁혀 간다. 이 상태에서 모델만 교체해도 누락된 근거는 복구되지 않는다.
근거가 검색됐지만 최종 문맥에서 빠졌다면 증강 단계를 본다. 중복 제거가 필요한 구절까지 삭제했는지, 긴 청크 때문에 상위 결과가 잘렸는지, 재정렬 뒤 관련성이 낮은 문서가 문맥 예산을 차지했는지 확인한다. 복합 질문에서는 같은 문서의 유사 청크가 반복되면서 다른 필수 근거가 밀려나지 않았는지도 살펴야 한다.
필요한 근거가 온전히 전달됐는데 답이 틀렸다면 생성 단계를 조사한다. 문맥에 근거해 답하도록 지시했는지, 상충하는 근거를 처리하는 규칙이 있는지, 조건과 단위를 보존하는지, 근거가 부족할 때 답을 보류하도록 했는지 점검한다. 인용 불일치는 답변 뒤에 문서 ID를 붙이는 과정이나 주장과 구절을 연결하는 로직의 독립된 오류로 남긴다.
검색 설정, 프롬프트와 모델을 한꺼번에 바꾸면 어느 변경이 개선이나 회귀를 만들었는지 분리하기 어렵다. 한 번에 한 요소를 변경하고 같은 골든 질문을 다시 실행한다. 운영 중 발견된 실제 실패 질문을 세트에 누적하면 평가는 점수표가 아니라 재현 가능한 회귀 검사로 발전한다.
뉴스레터 구독
최신 Web3, AI, 암호화폐 뉴스를 이메일로 받아보세요.