본문으로 건너뛰기
QA-Lab
고급25

RAG 시스템 검증하기: 검색 단계와 생성 단계를 나눠서 본다

RAG는 AI가 실제 문서를 찾아 근거로 삼아 답하게 만드는 구조다. "잘못된 문서를 찾은 것"과 "문서는 맞는데 잘못 요약한 것"을 구분해 검증하는 법을 익힌다.

  • #RAG
  • #검색증강생성
  • #AI검증

개념

RAG란 — 환각을 줄이기 위한 구조

레슨 2 끝에서 언급한 것처럼, RAG(Retrieval-Augmented Generation, 검색 증강 생성)는 AI가 학습한 지식만으로 답을 지어내지 않고, 실제 문서를 먼저 검색해서 찾은 뒤, 그 문서를 근거로 답을 생성하게 만드는 구조다.

질문 입력
  → 1단계: 검색(Retrieval) — 관련 문서를 데이터베이스에서 찾음
    → 2단계: 생성(Generation) — 찾은 문서를 근거로 AI가 답변을 작성

왜 두 단계를 나눠서 검증해야 하는가

모듈 9(레슨 5)에서 배운 SQL처럼, RAG의 검색 단계도 결국 데이터베이스에서 정보를 찾는 과정이다. 검색이 잘못되면 생성도 잘못될 수밖에 없다 — 그래서 문제가 생겼을 때 "어느 단계의 문제인지" 구분하는 것이 핵심이다.

검색 단계 문제: 관련 없는 문서를 찾아옴, 또는 정작 필요한 문서를 놓침
생성 단계 문제: 올바른 문서를 찾았는데, 그 내용을 잘못 요약하거나
              문서에 없는 내용을 덧붙임(레슨 2의 환각)

이 구분이 없으면, "AI가 틀린 답을 했다"는 사실만 알 뿐, 정작 어디를 고쳐야 하는지 알 수 없다.

검색 단계 검증하기

확인 질문: "이 질문에 대해, 정말 관련 있는 문서를 찾아왔는가?"

모듈 3에서 배운 테스트 케이스 설계처럼, 명확한 정답이 있는 질문들로 검증한다.

질문: "환불 정책이 뭐야?"
검증: 검색된 문서 목록에 실제 "환불 정책" 문서가 포함되어 있는가?
      순위가 너무 낮게 나오지는 않는가?

검색이 아예 관련 없는 문서를 가져오면, 아무리 생성 단계(AI의 글쓰기 능력)가 뛰어나도 정확한 답이 나올 수 없다 — 모듈 12에서 배운 "잘못된 API 응답 위에서는 아무리 화면을 잘 만들어도 소용 없다"는 원리와 같다.

생성 단계 검증하기 — 그라운딩(Grounding) 확인

검색은 맞았는데, AI가 그 문서를 정확히 반영해서 답했는지는 별도로 확인해야 한다. 이걸 "그라운딩(문서에 근거를 두고 있는가)"이라 부른다.

검색된 문서: "환불은 구매 후 7일 이내 가능합니다"
AI 답변 A(그라운딩 좋음): "환불은 구매 후 7일 이내 가능합니다"
AI 답변 B(그라운딩 나쁨 = 환각): "환불은 구매 후 30일 이내 가능합니다"

답변 B는 검색은 정확히 됐지만, 생성 단계에서 숫자를 잘못 가져온 것이다 — 레슨 2에서 배운 환각이 RAG 구조 안에서도 여전히 일어날 수 있다는 걸 보여준다. RAG는 환각을 줄여줄 뿐, 완전히 없애주지 않는다.

검증 매트릭스로 원인 좁히기

                생성이 정확함        생성이 부정확함(환각)
검색이 정확함    이상적인 상태        생성 단계를 고쳐야 함
검색이 부정확함  우연히 맞았을 뿐,     검색과 생성 둘 다 문제
                신뢰할 수 없음

이 매트릭스는 모듈 6(레슨 1)에서 배운 2x2 매트릭스 사고방식을 RAG 디버깅에 적용한 것이다 — 문제를 하나의 원인으로 뭉뚱그리지 않고, 두 축을 나눠 정확히 어디를 고쳐야 하는지 짚어낸다.

실무에서 왜 필요한가

"우리 AI 챗봇이 가끔 틀린 답을 해요"라는 막연한 리포트 대신, "이 질문에서는 검색 자체가 관련 없는 문서를 가져왔습니다"거나 "검색은 맞았는데 AI가 숫자를 잘못 옮겼습니다"처럼 구체적으로 원인을 짚어낼 수 있는 QA는, 개발팀이 정확히 어디를 고쳐야 하는지 바로 알게 해준다. 이건 모듈 6(레슨 2)에서 배운 "정확한 결함 리포트"의 원칙을 RAG 시스템에 적용하는 것이다.

실습 과제

과제 1 — 원인 매트릭스 적용하기 (15분)

다음 세 상황을 이 레슨의 검증 매트릭스(검색 정확도 × 생성 정확도)에 배치하고, 어느 단계를 고쳐야 하는지 판단한다.

  1. "배송비 문의"에 "환불 정책" 문서가 검색되어, 답변도 엉뚱하게 나옴
  2. "배송비 문의"에 정확한 배송비 문서가 검색됐지만, AI가 문서에 없는 "무료배송 이벤트"를 지어내 답함
  3. "배송비 문의"에 정확한 문서가 검색되고, 답변도 문서 내용과 일치함

과제 2 — 검증 질문 설계하기 (10분)

담당하고 있는(또는 가상의) 서비스에 RAG 기반 FAQ 챗봇이 있다고 하자. 검색 단계만 따로 검증하기 위한 질문 2개를 설계한다(정답 문서가 명확히 존재하는 질문으로).

자가 체크리스트

  • RAG의 검색 단계와 생성 단계를 구분해 설명할 수 있다
  • 검색 단계 문제와 생성 단계 문제를 각각 구별해 진단할 수 있다
  • 그라운딩이 무엇이고 왜 검색이 맞아도 환각이 생길 수 있는지 설명할 수 있다
  • 검증 매트릭스로 RAG 문제의 원인을 좁히는 방법을 설명할 수 있다

흔한 실수

  • RAG의 오답을 항상 "AI가 잘못 답했다"는 한 문장으로 뭉뚱그린다. 검색과 생성 중 어느 단계 문제인지 구분해야 정확한 수정이 가능하다.
  • 검색이 맞으면 생성도 당연히 맞을 거라 가정한다. 그라운딩이 깨지면 검색이 정확해도 환각이 생길 수 있다.
  • RAG를 도입하면 환각이 완전히 사라진다고 생각한다. RAG는 환각을 줄이는 구조일 뿐, 완전한 해결책이 아니다.

참고 자료