한 줄 정의
RAG는 모델이 답을 만들기 전에 관련 문서를 먼저 찾아보고, 그 문서를 참고해서 답하게 만드는 방법이야. 쉽게 말해 모델 머릿속 지식만 믿지 말고, 필요한 자료를 옆에 펼쳐 놓고 답하게 만드는 방식이라고 보면 돼.
그래서 RAG는 모델을 새로 학습시키는 기술이 아니야. 기존 LLM 위에 검색 단계를 붙여서, 최신 정보나 회사 내부 문서를 쓸 수 있게 하는 쪽에 더 가깝다.
어떻게 작동하나
보통 흐름은 이래. 사용자가 질문하면 시스템이 먼저 관련 문서를 검색하고, 그중 중요한 부분만 뽑아서 모델 입력에 같이 넣고, 그다음 모델이 답을 생성해. 검색과 생성이 한 파이프라인으로 이어지는 셈이야.
예를 들어 사내 정책 문서를 바탕으로 답하는 챗봇, 최신 제품 카탈로그를 참고하는 상담 봇, 논문이나 위키를 찾아 인용하는 검색형 서비스에서 RAG가 많이 쓰여. 이런 경우 모델 자체를 자주 다시 학습시키는 것보다 문서를 최신으로 유지하는 편이 훨씬 현실적이거든.
왜 중요한가
RAG를 이해하면 “모델이 똑똑해졌다”는 말과 “문서 연결이 좋아졌다”는 말을 구분할 수 있어. 둘은 결과가 비슷해 보여도 실제로 개선한 층위가 전혀 달라.
실무에서는 특히 최신성, 사내 데이터 연결, 근거 제시 때문에 중요해. 모델만으로는 모르는 문서도 검색으로 끌어와 답할 수 있으니까, 기업용 AI에서 거의 기본 구조처럼 쓰이는 경우가 많아.
주의해서 볼 점
RAG의 품질은 모델만큼 검색 품질에도 크게 좌우돼. 문서를 잘못 찾거나, 너무 긴 문맥을 넣거나, 엉뚱한 조각을 가져오면 답변도 흔들려.
또 “RAG를 붙였다”는 말이 정확도를 보장하는 건 아니야. 실제로는 임베딩 품질, 문서 분할 방식, 벡터 DB 설정, 재정렬 여부 같은 구현 디테일이 결과를 많이 바꿔.
관련 용어
- LlamaIndex 는 RAG 파이프라인을 구성할 때 자주 나오는 도구야.
- Embedding 은 문서를 검색 가능한 벡터로 바꾸는 단계와 연결돼.
- Vector DB 는 검색용 벡터를 저장하고 찾는 저장소 쪽 개념이야.
- Pinecone 는 벡터 DB 제품 문맥에서 자주 같이 언급돼.