시험을 볼 때 교과서를 펼쳐놓고 보는 오픈북 시험을 떠올려 보세요. AI도 마찬가지입니다. 질문을 받으면 먼저 관련 자료를 찾아보고, 그 자료를 참고해서 답변하는 방식이에요. 이렇게 하면 AI가 기억에만 의존할 때 생기는 엉뚱한 답변을 크게 줄일 수 있습니다.
예를 들어, 회사 내부 규정에 대해 물어보면 AI가 사내 문서함에서 해당 규정을 먼저 찾아본 뒤 답해줍니다. 마치 도서관 사서가 질문을 받으면 책꽂이에서 관련 책을 꺼내 읽어보고 알려주는 것과 같아요.
삼성전자는 사내 시스템에서 직원들이 내부 문서를 검색하고 답변받을 때 이 방식을 활용합니다. 카카오 고객센터도 이용자의 질문에 대해 도움말 문서를 자동으로 찾아 정확한 안내를 제공하고 있어요. 네이버 클로바 노트는 회의 녹음 내용에서 필요한 정보를 찾아 요약해주는 데 이 기술을 씁니다.
핵심은 "먼저 찾고, 그다음 답한다"는 단순한 원리입니다. 사람도 모르는 걸 물어보면 인터넷이나 책을 찾아보고 답하잖아요? AI에게 그 습관을 가르쳐준 것이 바로 이 기술입니다. 최근 거의 모든 기업용 AI 서비스가 이 방식을 기본으로 채택하고 있을 만큼 널리 쓰이고 있어요.
**RAG(Retrieval-Augmented Generation)**는 대규모 언어 모델(LLM)의 생성 능력에 외부 지식 검색을 결합한 프레임워크다. 2020년 Meta(당시 Facebook AI Research)의 Lewis et al.이 제안했으며, 핵심 아이디어는 모델이 답변을 생성하기 전에 관련 문서를 먼저 찾아 참조하게 하는 것이다.
수학적으로 RAG의 생성 확률은 주변화(marginalization)1로 표현된다:
여기서 는 사용자 질의, 는 검색된 문서, 는 생성된 답변이다. Retriever 는 질의와 관련된 문서를 찾고, Generator 는 검색된 문서를 컨텍스트로 활용해 답변을 생성한다.
전체 파이프라인은 세 단계로 구성된다:
┌─────────┐ ┌───────────┐ ┌───────────┐
│ Indexing │ ──▶ │ Retrieval │ ──▶ │Generation │
│ (오프라인) │ │ (검색) │ │ (생성) │
└─────────┘ └───────────┘ └───────────┘
│ │ │
문서 → 청크 → 질의 → 유사 문서 문서+질의 → 답변
임베딩 → 벡터DB Top-k 검색 LLM 생성
인덱싱 단계에서는 원본 문서를 청크2로 분할하고, 각 청크를 임베딩 모델(e.g., bge-m3, text-embedding-3-large)로 벡터화하여 벡터 데이터베이스에 저장한다. 검색 단계에서는 사용자 질의를 동일한 임베딩 모델로 벡터화한 뒤, 코사인 유사도 를 기준으로 가장 관련성 높은 Top-k 문서를 가져온다. 생성 단계에서는 검색된 문서를 프롬프트에 삽입하여 LLM이 근거 기반(grounded) 답변을 생성한다.
RAG의 가장 큰 장점은 환각(hallucination)3을 줄이고 최신 정보에 접근할 수 있다는 점이다. 파인튜닝 대비 학습 비용이 들지 않으면서도 도메인 특화 지식을 활용할 수 있다. NaturalQuestions 벤치마크에서 RAG는 순수 생성 모델 대비 정확도를 15~25% 향상시키며, TriviaQA에서도 Exact Match 기준 약 10% 이상 개선을 보여준다.
| 접근 방식 | 장점 | 단점 |
|---|---|---|
| 순수 LLM | 빠른 추론 | 환각, 지식 단절 |
| 파인튜닝 | 도메인 정합 | 고비용, 재학습 필요 |
| RAG | 실시간 지식, 저비용 | 검색 품질 의존 |
장점:
한계:
bge-m3, 영어 특화는 text-embedding-3-large 추천<context> 태그로 감싸고, "주어진 문서에 근거해서만 답하세요" 지시를 추가Advanced RAG
서비스 3 · 게시글 10