1. PDF Loader 개요
- 역할: PDF 파일을 Flowise에 불러와 Document 객체로 변환.
- 활용 단계: Loader → Text Splitter → Embedding → Vector Store 업서트
2. 처리 모드 (Processing Modes)
모드 | 설명 | 장점 | 단점 | 활용 추천 |
Per Page | 각 PDF 페이지를 개별 문서로 처리 | 페이지 기반 검색 및 페이지 번호 메타데이터 활용 가능 | 페이지 간 문맥 단절 | 규정집, 매뉴얼, 보고서 등 페이지별 검색이 필요한 문서 |
Per File | PDF 전체를 하나의 문서로 로딩 | 문맥 유지, 단순한 관리 | 긴 문서의 경우 검색 정확도 저하 | 짧은 리포트, 단일 주제 문서 |
3. Text Splitter & 토큰 개념
PDF Loader는 단순히 텍스트를 추출하므로
검색 정확도는 Splitter 설정과 임베딩 품질에 달려 있습니다.
(1) 주요 Splitter 방식
Splitter | 기준 | 특징 |
Character Text Splitter | 일정 문자 수 기준 | 단순하지만 문장 중간에서 끊길 수 있음 |
Token Text Splitter | 모델이 인식하는 토큰 수 기준 | 모델 입력 단위와 일치하여 정밀함 |
Recursive Character Splitter | 문단→줄바꿈→공백 순서로 자연스럽게 분할 | 문맥 보존에 가장 유리 (Flowise 기본값) |
(2) 토큰(Token) 개념
- 토큰: LLM이 처리하는 최소 단위(단어, 부호, 공백 등 포함).
- 예시 (
text-embedding-3-small
기준 / cl100k_base
토크나이저): "robot"
→ 1토큰"안전"
→ 2토큰"로봇"
→ 2토큰- chunk size: 한 덩어리의 최대 토큰/문자 길이
- chunk overlap: 청크 간 겹치는 구간(보통 10–20%) → 문맥 연결 보존용
4. Chunk Size & Overlap 설정 가이드
문서 유형 | Chunk Size | Overlap | Splitter 권장 |
일반 보고서 / 논문 | 800–1000 tokens | 150–200 tokens | Recursive |
코드 / 수식 / 표 많은 문서 | 400–600 tokens | 80–120 tokens | Token |
대화형 / QA 문서 | 1000–1200 chars | 150–200 chars | Recursive |
Tip: Overlap이 너무 크면 정확도 향상 효과는 미미하고 토큰 비용만 증가하므로 10~15% 선 유지 권장.
5. OpenAI 임베딩 모델 (text-embedding-3-small
)
항목 | 내용 |
차원 수 | 1536 |
최대 입력 길이 | 8,191 tokens |
토크나이저 | cl100k_base |
비용 | $0.02 / 1M tokens (배치 시 $0.01) |
권장 활용 | RAG, 문서 검색, 벡터 DB 저장용 임베딩 |
6. 추천 세팅 예시
문서 유형 | Loader | Splitter | Chunk Size / Overlap |
한국어 매뉴얼 / 규정집 (긴 문서) | Per Page | Recursive | 1000 tokens / 150 |
코드·표 포함 기술 문서 | Per Page | Token | 500 tokens / 100 |
짧은 보고서 / 단일 주제 문서 | Per File | Recursive | 800 tokens / 120 |