- 제한된 컨텍스트 — 전체 말뭉치를 한 번에 처리할 수 없습니다.
- 정적 지식 — 학습 데이터가 특정 시점에 고정되어 있습니다.
지식 베이스 구축
지식 베이스는 검색 중에 사용되는 문서 또는 구조화된 데이터의 저장소입니다. 사용자 정의 지식 베이스가 필요한 경우, LangChain의 문서 로더와 벡터 스토어를 사용하여 자체 데이터로부터 구축할 수 있습니다.이미 지식 베이스(예: SQL 데이터베이스, CRM 또는 내부 문서 시스템)가 있는 경우, 이를 다시 구축할 필요가 없습니다. 다음과 같이 할 수 있습니다:
- Agentic RAG의 에이전트를 위한 도구로 연결합니다.
- 쿼리하고 검색된 콘텐츠를 LLM에 컨텍스트로 제공합니다 (2단계 RAG).
튜토리얼: 시맨틱 검색
LangChain의 문서 로더, 임베딩 및 벡터 스토어를 사용하여 자체 데이터로부터 검색 가능한 지식 베이스를 생성하는 방법을 배웁니다.
이 튜토리얼에서는 PDF에 대한 검색 엔진을 구축하여 쿼리와 관련된 구절을 검색할 수 있도록 합니다. 또한 이 엔진 위에 최소한의 RAG 워크플로우를 구현하여 외부 지식이 LLM 추론에 어떻게 통합될 수 있는지 확인합니다.
검색에서 RAG로
검색을 통해 LLM은 런타임에 관련 컨텍스트에 액세스할 수 있습니다. 그러나 대부분의 실제 애플리케이션은 한 단계 더 나아갑니다: 검색과 생성을 통합하여 근거가 있고 컨텍스트를 인식하는 답변을 생성합니다. 이것이 **검색 증강 생성(RAG)**의 핵심 개념입니다. 검색 파이프라인은 검색과 생성을 결합하는 더 광범위한 시스템의 기초가 됩니다.검색 파이프라인
일반적인 검색 워크플로우는 다음과 같습니다: 각 구성 요소는 모듈식입니다: 앱의 로직을 다시 작성하지 않고도 로더, 스플리터, 임베딩 또는 벡터 스토어를 교체할 수 있습니다.구성 요소
문서 로더
외부 소스(Google Drive, Slack, Notion 등)에서 데이터를 수집하여 표준화된
Document 객체를 반환합니다.텍스트 스플리터
큰 문서를 개별적으로 검색 가능하고 모델의 컨텍스트 윈도우에 맞는 작은 청크로 나눕니다.
임베딩 모델
임베딩 모델은 텍스트를 숫자 벡터로 변환하여 유사한 의미를 가진 텍스트가 해당 벡터 공간에서 가까이 위치하도록 합니다.
벡터 스토어
임베딩을 저장하고 검색하기 위한 특수 데이터베이스입니다.
리트리버
리트리버는 비구조화된 쿼리가 주어지면 문서를 반환하는 인터페이스입니다.
RAG 아키텍처
RAG는 시스템의 요구 사항에 따라 여러 방식으로 구현될 수 있습니다. 각 유형을 아래 섹션에서 설명합니다.| 아키텍처 | 설명 | 제어 | 유연성 | 지연 시간 | 사용 사례 예시 |
|---|---|---|---|---|---|
| 2단계 RAG | 검색이 항상 생성 전에 발생합니다. 단순하고 예측 가능합니다 | ✅ 높음 | ❌ 낮음 | ⚡ 빠름 | FAQ, 문서 봇 |
| Agentic RAG | LLM 기반 에이전트가 추론 중 언제 그리고 어떻게 검색할지 결정합니다 | ❌ 낮음 | ✅ 높음 | ⏳ 가변적 | 여러 도구에 액세스할 수 있는 연구 도우미 |
| 하이브리드 | 검증 단계를 포함하여 두 접근 방식의 특성을 결합합니다 | ⚖️ 중간 | ⚖️ 중간 | ⏳ 가변적 | 품질 검증을 포함한 도메인별 Q&A |
지연 시간: 지연 시간은 일반적으로 2단계 RAG에서 더 예측 가능합니다. 최대 LLM 호출 횟수가 알려져 있고 제한되어 있기 때문입니다. 이러한 예측 가능성은 LLM 추론 시간이 지배적인 요인이라고 가정합니다. 그러나 실제 지연 시간은 검색 단계의 성능(예: API 응답 시간, 네트워크 지연 또는 데이터베이스 쿼리)에도 영향을 받을 수 있으며, 이는 사용 중인 도구와 인프라에 따라 달라질 수 있습니다.
2단계 RAG
2단계 RAG에서는 검색 단계가 항상 생성 단계 전에 실행됩니다. 이 아키텍처는 간단하고 예측 가능하여 관련 문서 검색이 답변 생성을 위한 명확한 전제 조건인 많은 애플리케이션에 적합합니다.튜토리얼: 검색 증강 생성(RAG)
검색 증강 생성을 사용하여 데이터에 기반한 질문에 답변할 수 있는 Q&A 챗봇을 구축하는 방법을 확인하세요.
이 튜토리얼은 두 가지 접근 방식을 안내합니다:
- 유연한 도구로 검색을 실행하는 RAG 에이전트 - 범용 사용에 적합합니다.
- 쿼리당 하나의 LLM 호출만 필요한 2단계 RAG 체인 - 간단한 작업에 빠르고 효율적입니다.
Agentic RAG
**Agentic 검색 증강 생성(RAG)**은 검색 증강 생성의 강점과 에이전트 기반 추론을 결합합니다. 답변하기 전에 문서를 검색하는 대신, (LLM으로 구동되는) 에이전트가 단계별로 추론하고 상호작용 중 언제 그리고 어떻게 정보를 검색할지 결정합니다.에이전트가 RAG 동작을 활성화하기 위해 필요한 것은 외부 지식을 가져올 수 있는 하나 이상의 도구에 대한 액세스뿐입니다 — 예를 들어 문서 로더, 웹 API 또는 데이터베이스 쿼리 등입니다.
튜토리얼: 검색 증강 생성(RAG)
검색 증강 생성을 사용하여 데이터에 기반한 질문에 답변할 수 있는 Q&A 챗봇을 구축하는 방법을 확인하세요.
이 튜토리얼은 두 가지 접근 방식을 안내합니다:
- 유연한 도구로 검색을 실행하는 RAG 에이전트 - 범용 사용에 적합합니다.
- 쿼리당 하나의 LLM 호출만 필요한 2단계 RAG 체인 - 간단한 작업에 빠르고 효율적입니다.
하이브리드 RAG
하이브리드 RAG는 2단계 및 Agentic RAG의 특성을 결합합니다. 쿼리 전처리, 검색 검증 및 생성 후 검사와 같은 중간 단계를 도입합니다. 이러한 시스템은 고정된 파이프라인보다 더 많은 유연성을 제공하면서도 실행에 대한 일부 제어를 유지합니다. 일반적인 구성 요소는 다음과 같습니다:- 쿼리 향상: 입력 질문을 수정하여 검색 품질을 향상시킵니다. 여기에는 불명확한 쿼리 재작성, 여러 변형 생성 또는 추가 컨텍스트로 쿼리 확장이 포함될 수 있습니다.
- 검색 검증: 검색된 문서가 관련성 있고 충분한지 평가합니다. 그렇지 않은 경우 시스템은 쿼리를 개선하고 다시 검색할 수 있습니다.
- 답변 검증: 생성된 답변의 정확성, 완전성 및 소스 콘텐츠와의 일치를 확인합니다. 필요한 경우 시스템은 답변을 재생성하거나 수정할 수 있습니다.
- 모호하거나 불충분하게 지정된 쿼리가 있는 애플리케이션
- 검증 또는 품질 관리 단계가 필요한 시스템
- 여러 소스 또는 반복적인 개선이 포함된 워크플로우
튜토리얼: 자체 수정 기능이 있는 Agentic RAG
에이전트 추론을 검색 및 자체 수정과 결합하는 하이브리드 RAG의 예시입니다.
Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.