PART 7 · 강의 1/3
RAG 개념과 아키텍처
검색 증강 생성의 원리와 시스템 구조 이해
01
RAG란 무엇인가?
Retrieval-Augmented Generation
RAG (검색 증강 생성)은 LLM이 응답을 생성할 때 외부 지식 베이스에서 관련 정보를 검색(Retrieve)하여 컨텍스트로 제공하는 기법입니다.
핵심 아이디어
LLM의 파라미터에 저장된 지식 + 외부 검색된 최신 지식 = 더 정확한 답변
RAG 없이 (기본 LLM)
학습 데이터 기준 시점까지의 지식만 보유
회사 내부 문서, 최신 정보 접근 불가
모르는 것을 지어내는 할루시네이션 발생
지식 업데이트 시 재학습 필요
RAG 사용
최신 정보를 실시간으로 검색하여 활용
회사 문서, 제품 매뉴얼 등 도메인 지식 활용
출처 기반 답변으로 할루시네이션 감소
문서 업데이트만으로 지식 갱신 가능
02
RAG 아키텍처
인덱싱과 검색-생성 단계
RAG 시스템은 크게 인덱싱(오프라인)과 검색-생성(온라인) 두 단계로 구성됩니다.
인덱싱 단계 (Offline)
📄 Documents
원본 문서
→
✂️ Chunking
문서 분할
→
🔢 Embedding
벡터 변환
→
🗄️ Vector DB
저장
검색-생성 단계 (Online)
💬 Query
사용자 질문
→
🔢 Embedding
벡터 변환
→
🔍 Search
유사도 검색
→
🤖 LLM
답변 생성
03
RAG 파이프라인 상세
8단계 처리 과정
1
문서 수집
PDF, 웹페이지, DB 등에서 원본 데이터 수집
2
청킹
문서를 검색 가능한 작은 단위로 분할
3
임베딩
텍스트를 벡터로 변환
4
저장
벡터 DB에 인덱싱
5
쿼리 처리
사용자 질문을 벡터로 변환
6
검색
유사한 청크 Top-K 검색
7
컨텍스트 구성
검색 결과 + 질문 조합
8
생성
LLM이 답변 생성
04
임베딩의 역할
텍스트를 벡터로 변환
임베딩(Embedding)은 텍스트를 고차원 벡터로 변환하는 과정입니다. 의미적으로 유사한 텍스트는 벡터 공간에서 가까이 위치합니다.
벡터 공간에서의 유사도 검색
Query
Doc1
Doc2
Doc3
Doc4
Doc5
Doc6
Doc7
Doc8
Doc9
Doc10
Doc11
Doc12
쿼리
유사 문서 (검색 결과)
다른 문서
05
RAG 핵심 컴포넌트
4가지 주요 구성 요소
Chunker
문서 분할기
긴 문서를 검색과 컨텍스트에 적합한 크기로 분할합니다.
문맥을 유지하면서 적절한 길이로 나누는 것이 중요합니다.
전략: 고정 크기, 문장 기반, 의미 기반, 재귀적 분할
Embedding Model
임베딩 모델
텍스트를 고차원 벡터로 변환합니다.
의미적 유사성을 벡터 거리로 표현합니다.
예: OpenAI text-embedding-3, BGE, E5, Ko-SBERT
Vector Store
벡터 데이터베이스
벡터를 저장하고 유사도 기반 검색을 수행합니다.
대규모 벡터에서 빠른 근사 최근접 이웃(ANN) 검색을 지원합니다.
예: Pinecone, Weaviate, Chroma, Milvus, FAISS
Retriever
검색기
쿼리와 가장 관련 있는 문서 청크를 찾습니다.
벡터 검색, 키워드 검색, 하이브리드 검색 등 다양한 방식이 있습니다.
방식: Dense, Sparse, Hybrid Retrieval
06
RAG 활용 사례
실제 적용 분야
기업 지식 베이스
사내 문서, 정책, 매뉴얼을 검색하여 직원 질문에 답변
고객 지원 챗봇
제품 FAQ, 사용 가이드 기반 고객 문의 응대
법률/의료 리서치
판례, 의학 논문 등 전문 문헌 검색 및 요약
코드 어시스턴트
코드베이스, 문서를 검색하여 개발 질문에 답변
뉴스/리서치 분석
최신 뉴스, 보고서를 검색하여 인사이트 제공
교육 튜터
교재, 강의 자료를 기반으로 학습 질문 답변
07
RAG의 장단점
장점과 한계 이해하기
장점
최신성: 재학습 없이 지식 업데이트 가능
투명성: 출처를 함께 제공하여 검증 가능
도메인 특화: 특정 분야 지식으로 전문성 확보
비용 효율: 파인튜닝보다 저렴한 지식 주입
데이터 보안: 민감 정보를 사내에서 관리 가능
한계
검색 품질 의존: 잘못된 검색 = 잘못된 답변
지연 시간: 검색 단계로 인한 응답 시간 증가
컨텍스트 제한: 모든 관련 정보를 담기 어려움
시스템 복잡성: 여러 컴포넌트 관리 필요
데이터 품질: 원본 문서 품질에 결과 좌우
SUMMARY
핵심 요약
- RAG는 검색(Retrieval) + LLM 생성(Generation)의 결합
- 인덱싱 → 검색 → 생성의 3단계 구조
- 임베딩을 통해 텍스트를 벡터로 변환하여 유사도 계산
- 최신/도메인 지식 기반의 정확한 답변 생성에 활용
- 검색 품질이 전체 시스템 성능에 결정적 영향