최근 생성형 AI 시장이 커지면서 단순히 ChatGPT API를 호출하는 것을 넘어, 기업 내부 데이터를 활용한 프라이빗 LLM 서비스 구축이 중요해지고 있습니다.
이때 반드시 등장하는 핵심 키워드가 바로 RAG(검색 증강 생성), VectorDB, LangChain입니다. 오늘은 이 세 가지 기술이 무엇이고, 서로 어떻게 연결되어 동작하는지 정리해 보겠습니다.
1. RAG (Retrieval-Augmented Generation, 검색 증강 생성)
개념 RAG는 LLM(거대언어모델)이 답변을 생성하기 전에, 신뢰할 수 있는 외부 데이터(문서, DB 등)를 먼저 검색(Retrieval)하고, 그 정보를 바탕으로 답변을 생성(Generation)하도록 하는 기술입니다.
필요한 이유 ChatGPT와 같은 LLM은 크게 두 가지 치명적인 단점이 있습니다. 첫째는 모르는 내용도 사실인 것처럼 꾸며내는 할루시네이션(Hallucination) 현상이며, 둘째는 학습 시점 이후의 최신 정보나 기업 내부의 비공개 데이터는 알지 못한다는 점입니다.
RAG는 이를 오픈북 테스트 방식으로 해결합니다. AI에게 무작정 답을 내놓으라고 하는 것이 아니라, 우리 회사의 매뉴얼이나 데이터베이스를 먼저 참고한 뒤 그 내용을 바탕으로 대답하게 함으로써 정확도를 높입니다.
2. VectorDB (Vector Database, 벡터 데이터베이스)
개념 VectorDB는 텍스트나 이미지 등의 비정형 데이터를 숫자 벡터(Vector) 형태로 변환(Embedding)하여 저장하고 검색하는 데이터베이스입니다.
필요한 이유 기존의 RDBMS(MySQL 등)는 키워드 매칭 방식을 사용하기 때문에 문맥을 이해하지 못합니다. 예를 들어 기존 DB에서 '겨울 겉옷'을 검색하면 '패딩'이라는 단어가 포함된 문서를 찾지 못할 수 있습니다.
반면 VectorDB는 단어의 의미를 다차원 공간의 숫자로 표현하기 때문에, '겨울 겉옷'과 '패딩'이 의미적으로 가깝다는 것을 인식하여 검색해 냅니다. RAG를 구현하려면 방대한 문서 중에서 질문과 가장 관련 있는 내용을 정확히 찾아내야 하는데, 이때 의미 기반 검색(Semantic Search)이 가능한 VectorDB가 필수적입니다. 대표적인 툴로는 ChromaDB, Pinecone, Milvus 등이 있습니다.
3. LangChain (랭체인)
개념 LangChain은 LLM(GPT 등)과 외부 리소스(데이터 소스, API, VectorDB 등)를 사슬(Chain)처럼 연결해 주는 프레임워크입니다.
필요한 이유 LLM을 사용하여 애플리케이션을 만들려면 프롬프트 관리, 데이터 검색, 답변 생성 등 여러 단계를 거쳐야 합니다. LangChain은 이 복잡한 과정을 추상화하여, 개발자가 Python 코드로 쉽게 LLM 파이프라인을 구축할 수 있게 도와주는 역할을 합니다.
전체 동작 프로세스 (Workflow)
이 세 가지 기술이 결합되면 다음과 같은 흐름으로 AI 서비스가 동작합니다.
- 데이터 적재: 회사의 문서(PDF, 엑셀 등)를 쪼개서 벡터화(Embedding) 후 VectorDB에 저장합니다.
- 질문 입력: 사용자가 질문을 합니다. (예: "우리 회사 이번 달 전시회 일정 알려줘")
- 검색 (Retrieval): LangChain이 사용자의 질문을 벡터로 변환해 VectorDB에서 가장 유사한 문서를 찾아옵니다.
- 프롬프트 결합: 찾아온 문서 내용(Context)과 사용자의 질문을 합쳐 프롬프트를 만듭니다.
- 답변 생성 (Generation): 완성된 프롬프트를 LLM에게 보냅니다.
- 최종 응답: LLM이 문서를 참고하여 정확한 답변을 생성합니다.
함께 읽어보면 좋은 논문 (References)
기술의 동작 원리를 더 깊이 이해하고 싶다면, 현재의 RAG와 LLM 애플리케이션 생태계를 만든 근본 논문들을 참고해 보는 것을 추천합니다.
1. Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks (2020) RAG(검색 증강 생성)라는 개념을 처음으로 제안한 Meta AI의 논문입니다. 생성 모델(Generator)과 검색 모델(Retriever)을 결합했을 때, 정확도가 얼마나 향상되는지 수학적으로 입증하고 있습니다.
https://arxiv.org/abs/2005.11401
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks
Large pre-trained language models have been shown to store factual knowledge in their parameters, and achieve state-of-the-art results when fine-tuned on downstream NLP tasks. However, their ability to access and precisely manipulate knowledge is still lim
arxiv.org
2. ReAct: Synergizing Reasoning and Acting in Language Models (2022) LangChain과 같은 프레임워크가 작동하는 핵심 원리인 'Reasoning(추론)'과 'Acting(행동)'의 결합을 다룬 논문입니다. LLM이 외부 도구(검색, 계산기 등)를 어떻게 논리적으로 사용할 수 있는지에 대한 이론적 배경을 제공합니다.
https://arxiv.org/abs/2210.03629
ReAct: Synergizing Reasoning and Acting in Language Models
While large language models (LLMs) have demonstrated impressive capabilities across tasks in language understanding and interactive decision making, their abilities for reasoning (e.g. chain-of-thought prompting) and acting (e.g. action plan generation) ha
arxiv.org
3. Attention Is All You Need (2017) VectorDB에 저장되는 '임베딩(Embedding)'과 LLM의 기반이 되는 Transformer 아키텍처를 탄생시킨 논문입니다. 자연어 처리(NLP) 분야의 판도를 바꾼 가장 중요한 연구 중 하나입니다.
https://arxiv.org/abs/1706.03762
Attention Is All You Need
The dominant sequence transduction models are based on complex recurrent or convolutional neural networks in an encoder-decoder configuration. The best performing models also connect the encoder and decoder through an attention mechanism. We propose a new
arxiv.org
'Artificial Intelligence > Study' 카테고리의 다른 글
| 시맨틱 캐싱(Semantic Caching)이란? (0) | 2026.01.30 |
|---|---|
| [Crawling] Playwright와 Selenium 비교: 어떤 도구를 선택해야 할까요 (0) | 2026.01.21 |
| [Crawling] ChromeDriver 설치 (0) | 2026.01.19 |
| RAG와 리랭커(Reranker) 자료정리 (0) | 2026.01.15 |