TL;DR#
- 초거대 모델과 롱 컨텍스트가 보편화되어도 비용, 데이터 신선도, 출처 제시 때문에 RAG는 여전히 필요합니다.
- 벡터는 점수가 아니라 의미의 좌표이며, 유사도 점수는 검색 시점에 코사인 유사도로 계산됩니다.
- 데이터는 모델이 알아서 넣어주지 않습니다. 개발자가 구축한 인제스션 파이프라인이 전처리와 벡터화를 담당합니다.
- 실무 표준은 키워드 검색과 벡터 검색을 RRF로 합치는 하이브리드 검색입니다.
여전히 RAG가 필요한 이유#
초거대 모델이 등장하고 100만 토큰 이상의 롱 컨텍스트가 보편화되었어도, 실무에서 RAG(Retrieval-Augmented Generation)는 여전히 필수 아키텍처입니다. 이유는 세 가지입니다.
- 비용과 지연시간(Latency): 모든 문서를 프롬프트에 넣으면 추론 비용이 기하급수적으로 늘고 응답 속도가 느려집니다.
- 데이터의 신선도: 실시간으로 변하는 재고, 가격, 뉴스 데이터를 매번 모델에 학습시킬 수는 없습니다.
- 정확한 출처(Source Attribution): 비즈니스 환경에서는 "왜 그렇게 답변했는가?"에 대한 근거 문서를 제시하는 것이 신뢰도의 핵심입니다.
핵심 개념: 벡터와 의미론적 검색#
실무에서 가장 많이 오해하는 부분은 벡터를 '점수'라고 생각하는 것입니다. 벡터는 '의미의 좌표'이며, 점수는 검색 시점에 실시간으로 계산됩니다.
키워드 검색과 벡터 검색의 차이#
- 키워드 검색 (BM25/Elasticsearch): "스마트워치"라는 글자가 포함된 상품만 찾습니다.
- 벡터 검색 (Semantic Search): "손목에 차는 컴퓨터"라고 검색해도 '스마트워치' 카테고리를 찾아냅니다. 임베딩 모델이 두 개념의 의미적 거리가 가깝다는 것을 알기 때문입니다.
유사도 점수는 어떻게 매겨지는가#
판단의 주체는 임베딩 모델(Embedding Model)입니다. 모델은 수천 개의 논리적 축(Dimensions)을 기준으로 데이터를 좌표화합니다.
- 코사인 유사도(Cosine Similarity): 두 벡터 사이의 각도를 측정하여 1에 가까울수록 유사하다고 판단합니다.
- 모델 종속성: 특정 임베딩 모델로 만든 벡터는 반드시 같은 모델로 검색해야 합니다. 기준(모델)이 바뀌면 좌표계 자체가 바뀌기 때문입니다.
누가 데이터를 넣는가: 인제스션 파이프라인#
데이터는 생성형 AI가 "알아서" 넣어주지 않습니다. 개발자가 구축한 데이터 인제스션 파이프라인(Ingestion Pipeline)이 그 역할을 수행합니다.
데이터 흐름 (ETL for Vectors)#
- 지능형 전처리 (LLM-based Indexing): 원본 데이터를 그대로 벡터화하지 않고, LLM으로 "사람들이 이 데이터를 어떤 질문으로 검색할까?"를 미리 예측해 요약본을 만듭니다. 이 차이가 검색 품질을 좌우합니다.
- Chunking 전략: 긴 문서를 의미 단위로 쪼개어 1:N 관계로 저장합니다. 예를 들어 상품 상세페이지를 디자인/성능/리뷰 섹션으로 나누어 저장합니다.
- 자동화: 상품이 등록되거나 수정될 때마다 백엔드 서버(Node.js/Python)가 API를 호출하여 자동으로 벡터 DB를 업데이트합니다.
실무 활용: 하이브리드 검색#
대형 이커머스는 어느 한 방식만 쓰지 않습니다. 실무 표준은 하이브리드 검색(Hybrid Search)입니다.
- 키워드 검색 (정확도): "아이폰 16" 검색 시 정확히 일치하는 상품을 노출합니다.
- 벡터 검색 (유연성): "운동할 때 쓰기 좋은 방수 시계" 검색 시 관련 상품을 노출합니다.
- RRF (Reciprocal Rank Fusion): 키워드 검색 결과와 벡터 검색 결과를 수학적으로 합쳐 최적의 순위를 결정합니다.
산업별 활용 예시#
- SaaS 고객지원: 수만 페이지의 가이드를 RAG로 연결하여 상담사 수준의 답변을 제공합니다.
- 개인화 메모리: 사용자의 과거 대화와 선호도를 벡터화하여 "지난번에 말한 그 식당 어디였지?" 같은 질문에 답변합니다.
- 엔터프라이즈 지식 창고: 사내 규정, 기술 문서 등을 RAG로 통합하여 지식 파편화를 해결합니다.
결과와 Trade-off#
RAG는 강력하지만 만능은 아닙니다.
- 이점: 할루시네이션의 획기적 감소, 실시간 데이터 반영, 비용 최적화.
- 한계점:
- GIGO (Garbage In, Garbage Out): 원본 데이터가 부실하거나 전처리가 엉망이면 검색 결과도 나쁩니다.
- 인프라 복잡도: 기존 RDB 외에 벡터 DB와 임베딩 파이프라인을 추가로 관리해야 합니다.
마치며#
생성형 AI 도입은 단순히 모델을 가져다 쓰는 단계를 넘어, "얼마나 정교한 데이터 파이프라인을 구축하느냐"의 싸움이 되었습니다. 벡터 DB와 LLM 전처리를 결합한 RAG 아키텍처는 이제 선택이 아닌 필수입니다.
다음 글에서는 에이전트가 스스로 검색 도구를 선택하는 Agentic RAG를 더 깊이 다루겠습니다.
참고 자료