|

RAG는 검색과 생성 중 무엇이 더 중요할까: 답변 품질을 가르는 기본 구조

RAG 검색과 생성 기본 구조 대표 이미지
RAG는 모델이 기억하지 못하는 정보를 외부 검색 결과로 보강한 뒤 답변을 생성하는 구조입니다.

RAG는 Retrieval-Augmented Generation의 줄임말로, 외부 문서를 검색한 뒤 그 결과를 바탕으로 답변을 생성하는 구조입니다. 그래서 검색과 생성 중 하나만 잘한다고 답변 품질이 안정되지는 않습니다.

핵심은 좋은 근거를 찾고, 그 근거 안에서만 답하도록 생성 단계를 통제하는 것입니다. 이 글은 OpenAI, Google Cloud, Microsoft의 RAG 설명 자료를 기준으로 검색과 생성의 역할을 나눠 정리합니다.

RAG 검색 생성 품질 기준 요약 카드
RAG 품질은 검색과 생성 중 하나만으로 결정되지 않고, 검색된 근거가 생성 단계에서 어떻게 쓰이는지에 달려 있습니다.

RAG를 먼저 한 줄로 정리하면

RAG는 모델에게 모든 지식을 외우게 하는 대신, 질문에 필요한 문서를 먼저 찾아서 컨텍스트로 넣어 주는 방식입니다.

user question
  -> retrieve relevant documents
  -> add evidence to prompt
  -> generate answer grounded in evidence

이 구조에서는 검색이 근거를 고르고, 생성 모델은 그 근거를 읽기 쉬운 답변으로 바꾸는 역할을 맡습니다.


검색 품질이 먼저 흔들리면 답변도 흔들린다

사용자 질문과 관련 없는 문서가 들어가면 모델은 엉뚱한 근거를 보고 답하게 됩니다. 문서가 아예 빠지면 모델이 일반 지식이나 추정으로 빈칸을 메우려 할 수 있습니다.

  • 문서를 너무 크게 자르면 필요한 문장이 묻힌다
  • 문서를 너무 작게 자르면 문맥이 끊긴다
  • embedding 기준이 질문 의도와 맞지 않으면 비슷하지만 틀린 문서가 올라온다
  • 최종 후보가 많아도 핵심 근거가 뒤에 묻히면 생성 품질이 낮아질 수 있다

생성 단계도 단순 요약기가 아니다

검색 결과가 좋아도 생성 프롬프트가 약하면 모델은 근거 밖의 말을 섞을 수 있습니다. 그래서 답변 규칙, 인용 방식, 모르는 경우의 응답 방식을 함께 설계해야 합니다.

Answer only from the provided context.
If the context does not contain the answer, say that the evidence is insufficient.
Cite the document title for each key claim.

이런 규칙은 RAG가 항상 정답을 낸다는 뜻이 아니라, 근거 없는 확장을 줄이는 장치입니다.


chunking, embedding, reranking을 한 흐름으로 보자

RAG 품질 개선은 보통 한 지점만 고쳐서 끝나지 않습니다. chunking은 검색 후보의 단위를 만들고, embedding은 의미적으로 가까운 후보를 찾고, reranking은 후보 순서를 다시 정돈합니다.

검색 결과 상위 몇 개가 실제로 질문에 답하는 근거인지 직접 샘플링해 보는 것이 RAG 개선의 출발점입니다. 답변만 읽으면 검색이 문제인지 생성이 문제인지 놓치기 쉽습니다.


RAG가 hallucination을 완전히 없애지는 않는다

RAG는 근거를 제공해 hallucination 가능성을 줄일 수 있지만, 자동으로 모든 오류를 없애지는 않습니다. 문서가 오래됐거나, 검색이 틀렸거나, 모델이 근거를 잘못 읽으면 여전히 잘못된 답이 나올 수 있습니다.

  • 출처 문서의 최신성 관리
  • 질문별 검색 결과 로그 확인
  • 답변과 근거 문장 매칭
  • 부족한 근거일 때 답하지 않는 정책
  • 민감한 도메인에서는 사람 검토 단계

실무 체크리스트

  1. 질문 유형별로 필요한 문서 단위를 먼저 정의한다
  2. 검색 결과 top-k를 사람이 읽고 관련성을 점검한다
  3. 답변에 쓰인 claim이 실제 문서에 있는지 확인한다
  4. 모르는 경우 답하지 않는 정책을 프롬프트와 평가에 넣는다
  5. 검색 로그, 생성 답변, 사용자 피드백을 함께 저장해 개선한다

정리

RAG를 이해할 때는 문법 자체보다 코드가 표현하려는 경계를 먼저 보는 편이 좋습니다. 오늘 글의 기준은 ‘읽는 사람이 실수를 줄일 수 있는가’입니다.

함께 보면 좋은 내부 글은 MCP란 무엇인가, Toolformer 논문 쉽게 이해하기, AI 에이전트 실전 설계 시리즈입니다. 외부 기준은 OpenAI Platform Docs – File Search, Google Cloud – What is retrieval augmented generation, Microsoft Azure – Retrieval Augmented Generation를 확인했습니다.

함께보면 좋은 글