RAG(Retrieval-Augmented Generation)는 AI를 실무에 활용하기 위한 핵심 구조로 자주 언급된다. 하지만 실제로 RAG를 적용해보면 기대만큼 결과가 나오지 않는 경우가 많다. “문서를 넣었는데도 엉뚱한 답을 한다”, “왜 굳이 RAG를 써야 하는지 모르겠다”는 반응도 흔하다.
이 글은 RAG를 처음 접하는 입문자를 대상으로,
RAG가 왜 필요한지, 내부에서 어떤 단계로 동작하는지, 그리고 어디에서 실패하는지를 구조 중심으로 설명한다. 구현 방법이 아니라 이해를 위한 심화 가이드다.
RAG를 한 문장으로 다시 정의하면
RAG는 “AI가 답변하기 전에 관련 문서를 먼저 찾고, 그 문서를 근거로 답변하도록 만드는 구조”다.
여기서 중요한 점은 RAG가 새로운 AI 모델이 아니라는 것이다.
RAG는 LLM + 검색 시스템을 연결하는 방식이며, 성능의 대부분은 검색과 문서 구조에서 결정된다.
왜 RAG가 필요한가
기존 AI는 질문을 받으면 학습된 데이터와 확률을 기반으로 답을 만든다. 이 방식은 일반 지식에는 강하지만, 다음과 같은 상황에서는 약하다.
- 회사 내부 문서 기반 질문
- 최신 정보가 중요한 질문
- 기준과 정책이 명확한 업무 질문
이때 AI는 “그럴듯한 추측”을 하게 되고, 이것이 실무에서 문제가 된다.
RAG는 이 문제를 검색이라는 단계로 해결한다.
RAG의 전체 동작 흐름 (큰 그림)
RAG는 내부적으로 다음 단계를 거친다.
- 사용자가 질문을 입력한다
- 질문을 검색에 적합한 형태로 변환한다
- 관련 문서를 검색한다
- 검색된 문서 중 일부를 선택한다
- 선택된 문서를 참고해 답변을 생성한다
이 중에서 3~4번 단계가 RAG의 성능을 결정한다.
1단계: 질문은 그대로 쓰이지 않는다
입문자가 가장 많이 오해하는 부분이 있다.
사용자가 입력한 질문은 그대로 검색에 쓰이지 않는다.
예를 들어
“이 정책 기준은 뭐야?”라는 질문은
검색 시스템 입장에서는 너무 모호하다.
그래서 RAG 시스템은 질문을 다음과 같이 다듬는다.
- 질문의 핵심 키워드 추출
- 불필요한 표현 제거
- 문서 검색에 적합한 형태로 재구성
이 과정을 거치지 않으면, 검색 정확도는 급격히 떨어진다.
2단계: 문서는 그냥 통째로 쓰지 않는다
RAG에서는 문서를 그대로 저장하지 않는다.
문서는 작은 단위로 나누어 저장된다.
이유는 간단하다.
- 문서 전체는 너무 길다
- 질문과 직접 관련 없는 내용이 많다
- AI가 참고할 때 오히려 방해가 된다
그래서 문서는 보통:
- 문단 단위
- 의미 단위
- 주제 단위
로 나뉘어 저장된다.
이 과정을 흔히 청킹(chunking)이라고 부른다.
3단계: 검색은 키워드가 아니라 의미로 한다
RAG의 검색은 일반적인 키워드 검색과 다르다.
문장과 문서를 의미 벡터로 변환한 뒤, 비슷한 의미를 가진 것끼리 찾는다.
이 방식 덕분에:
- 표현이 달라도
- 단어가 달라도
의미가 비슷하면 검색이 된다.
하지만 이 단계에서도 문제가 생긴다.
문서가 잘못 나뉘었거나, 주제가 섞여 있으면 검색 결과가 흐려진다.
4단계: 모든 검색 결과를 쓰지 않는다
검색 결과가 10개 나왔다고 해서, 그걸 전부 AI에게 주지는 않는다.
보통은 상위 몇 개만 선택한다.
이때 중요한 기준은:
- 질문과의 관련성
- 문서의 최신성
- 문서의 신뢰도
이 기준이 없으면, AI는 서로 다른 내용을 섞어서 답변을 만들게 된다.
5단계: AI는 문서를 ‘참고’해서만 답한다
RAG에서 가장 중요한 원칙은 이것이다.
AI는 검색된 문서에 없는 내용은 말하지 않아야 한다.
이 원칙이 지켜지지 않으면 RAG의 의미가 없다.
그래서 실무에서는 다음과 같은 규칙을 둔다.
- 문서에 없는 내용은 “근거 없음”으로 처리
- 추측성 답변 금지
- 필요 시 출처 명시
이 규칙이 RAG를 “쓸 수 있는 AI”로 만든다.
입문자가 자주 하는 착각
RAG를 처음 접하면 이런 생각을 한다.
- 문서를 많이 넣으면 좋아질 것이다
- 최신 AI 모델을 쓰면 해결될 것이다
- 프롬프트를 길게 쓰면 된다
하지만 실제로는 반대다.
RAG의 품질은:
- 문서 구조
- 문서 분리 기준
- 검색 설계
에 의해 결정된다.
AI 모델은 그 다음이다.
RAG를 이해했다면, 다음은 무엇인가
이 글을 이해했다면, 이제 다음 질문을 던질 수 있다.
- 왜 우리 RAG는 검색이 부정확한가
- 어떤 문서는 RAG에 넣으면 안 되는가
- 메타데이터는 언제 필요해지는가
이 질문들이 바로 실무 단계로 넘어가는 신호다.
결론
RAG는 어려운 기술이 아니다.
하지만 단순한 기능도 아니다.
RAG는 문서를 어떻게 바라볼 것인가에 대한 사고방식에 가깝다.
AI를 바꾸는 것이 아니라, 지식을 다루는 방식을 바꾸는 구조다.
입문자라면, 구현보다 먼저 이 구조를 이해하는 것이 가장 중요하다.