고르는 방법
- 복잡한 방법보다 먼저 구조를 인식하는 분할(제목이나 섹션 기준)로 시작하십시오.
- 약간의 겹침을 두고, 모든 청크에 문서 제목과 섹션을 붙이십시오.
- 변경 전후로 검색 성능을 측정하십시오. 청크 크기는 믿음이 아니라 테스트할 설정입니다.
확인할 점
선택지를 가르는 질문을 중요한 순서대로 정리했습니다.
01
구조를 인식하는 분할부터
제목, 섹션, 목록 경계에서 나누면 정의나 절차가 한 조각에 유지됩니다. 이를 위해서는 파서가 제공하는 구조가 필요하므로, 파싱된 문서를 읽는 청커(Docling의 HybridChunker, Unstructured의 by_title, Markdown 제목 분할기)가 원시 텍스트를 나누는 것보다 대개 낫습니다. 복잡한 방법을 시도하기 전에 여기서 시작하십시오.
02
임베딩 모델의 토큰으로 잰 크기
임베딩 모델은 토큰 한도를 넘는 입력을 잘라 내며, 대개 아무 표시 없이 그렇게 합니다. 그래서 청크 한도는 모델이 쓰는 것과 같은 토크나이저로 세야 합니다. 문자 기반 한도(Unstructured의 max_characters, LangChain의 기본 분할기)는 이를 근사할 뿐입니다. Docling의 HybridChunker와 LangChain, LlamaIndex, Chonkie의 토큰 분할기는 토크나이저를 직접 받습니다.
03
모든 청크에 딸려 가는 맥락
'기한은 30일입니다'라는 청크는 어느 정책에 속하는지 모르면 쓸모가 없습니다. 문서 제목, 제목 경로, 캡션을 메타데이터로 붙이거나 임베딩 전에 텍스트 앞에 붙이는 청커를 우선하십시오. 문장이 경계에 걸칠 때는 약간의 겹침이 도움이 되지만, 제목을 대신하지는 못합니다.
04
표와 코드를 단위로 처리
범용 텍스트 분할기는 표를 행 중간에서, 함수를 본문 중간에서 자릅니다. 각 조각에 표의 머리글 행을 반복하는 Docling이나 표를 별도 청크로 분리하는 Unstructured 같은 표 인식 옵션, 그리고 구문을 따르는 코드 분할기(LangChain, LlamaIndex, Haystack의 Python AST 분할기)를 찾으십시오.
05
시맨틱 청킹에는 회의적으로
시맨틱 청커는 문장 사이의 임베딩 유사도가 떨어지는 곳에서 나눕니다. Vectara 연구진의 2024년 연구는 추가 연산이 고정 크기 청크보다 일관된 이득을 가져오지 않았다고 밝혔고, 여덟 가지 전략을 다룬 2026년 8월 연구는 최선의 방법이 임베딩 모델, 데이터셋, 지표에 따라 달라진다고 밝혔습니다. 단순한 기준선을 측정한 뒤에만 시도하십시오. 청커에 대 한 공개 리더보드는 없으며, 읽게 되는 것은 모두 단일 연구나 업체 차트입니다.
06
청크의 모양새가 아니라 검색을 측정
실제 질문과 그에 답하는 구절로 작은 테스트 세트를 만든 다음, 청킹 설정마다 k에서의 재현율(정답 구절이 상위 k개 결과에 들어가는 빈도)을 비교하십시오. 청크 크기는 믿음이 아니라 테스트할 매개변수입니다. 파서나 임베딩 모델을 바꿀 때마다 테스트를 다시 실행하십시오.
07
유지 관리와 코드의 위치
청킹 코드는 작아서 위험은 버그보다 방치에 있습니다. LangChain은 2026년 5월 SemanticChunker가 있던 langchain-experimental 패키지를 보관 처리했고, 이를 주 분할기 패키지로 옮겨 달라는 요청은 계획에 없음으로 닫혔습니다. 이미 의존하는 라이브러리 안의 청커를 우선하거나 버전을 고정하십시오.
선택지별 차이
대부분의 팀에는 별도의 청킹 라이브러리가 필요 없습니다. 프레임워크 분할기(LangChain의 텍스트 분할기, LlamaIndex의 노드 파서, Haystack의 전처리기)는 재귀, 토큰, 제목 기반, 코드 분할을 다루며, 이미 그 프레임워크를 쓴다면 합리적인 기본 선택입니다. 파서 내장 청커(Docling의 HybridChunker, Unstructured의 basic 및 by_title 전략)에는 장점이 있습니다. 문서의 실제 구조를 보므로 섹션, 표, 캡션을 함께 유지할 수 있습니다.
Chonkie 같은 전용 라이브러리는 토큰과 문장 분할부터 시맨틱, 레이트, LLM 기반 청킹까지 가장 넓은 메뉴를 가벼운 설치로 제공하므로, 프레임워크를 바꾸지 않고 전략을 시험하고 싶을 때 도움이 됩니다. 레이트 청킹은 먼저 문서 전체를 임베딩한 뒤 청크별로 토큰 벡터를 풀링하므로, 각 청크의 벡터가 주변 맥락을 담습니다. 토큰 수준 출력을 제공하는 긴 컨텍스트 임베딩 모델이 필요합니다.
도구 6개 비교
저희 평점 순입니다. 각 리뷰에서 출처, 가격, 전체 평가를 확인할 수 있습니다.
| 도구 | 평점 | 저희 평가 | 추천 대상 | 가격 |
|---|---|---|---|---|
| Docling저장소 | 4.5/5 | Docling은 표를 제대로 다루는 오픈소스 파서이며, 보안 릴리스를 절대 건너뛸 수 없는 파서이기도 합니다. | 복잡한 표가 담긴 PDF와 Office 문서로 자체 호스팅 RAG를 만드는 팀. | MIT 라이선스의 무료 오픈소스입니다. |
| LlamaIndex저장소 | 4.3/5 | 문서 중심 RAG를 위한 깊이 있는 툴킷이지만, 만든 회사는 이제 프레임워크가 더 이상 우선순위가 아니라고 분명히 말합니다. | 크고 다양한 데이터 소스 위에 RAG나 문서 에이전트를 만드는 Python 개발자. | 프레임워크는 MIT로 무료입니다. LlamaParse(유료 클라우드): Free는 10k 크레딧, Starter 월 $50(40k 크레딧), Pro 월 $500(400k 크레딧), Enterprise는 별도 견적이며, 1,000 크레딧 = $1.25입니다. |
| LangChain저장소 | 4.2/5 | 여전히 LLM 앱을 위한 가장 폭넓은 통합 라이브러리이고 1.0 이후 훨씬 깔끔해졌지만, 예전처럼 당연한 기본 선택은 더 이상 아닙니다. | 많은 제공업체 및 데이터 통합이 필요하고 사용자 정의 LangGraph 워크플로로 확장할 수 있는 에이전트를 만드는 팀. | MIT 라이선스의 무료 오픈소스입니다. LangSmith는 별도이며 Developer는 1석 무료, Plus는 좌석당 월 $39, Enterprise는 별도 견적입니다. |
| Haystack저장소 | 4.2/5 | RAG 시스템을 믿고 맡기기보다 직접 읽고 싶은 사람을 위한 프레임워크이며, 그 대가로 연결 작업을 더 많이 직접 써야 합니다. | Python으로 유지보수하기 쉬운 프로덕션 RAG와 에이전트 파이프라인을 만드는 엔지니어링 팀. | Apache 2.0 라이선스의 무료 오픈소스입니다. deepset Studio는 1인 사용자에게 무료이고, Haystack Enterprise Platform은 별도 견적입니다. |
| Unstructured저장소 | 3.8/5 | 여전히 특이한 파일 형식에 가장 넓은 그물이지만, 제작사가 이제 왜 대신 돈을 내야 하는지 보여 주는 수치를 공개합니다. | RAG를 위해 여러 문서 형식을 수집하는 ETL 파이프라인을 만드는 팀. | 라이브러리는 Apache 2.0으로 무료입니다. 호스팅 플랫폼: 무료 10,000페이지, 이후 페이지당 $0.015. VPC나 전용 배포가 있는 Business 요금제는 문의입니다. |
| Chonkie저장소 | 3.7/5 | 재작성 중인 깔끔한 청킹 라이브러리입니다. v1.7은 지금 작동하지만, 이 라이브러리를 특색 있게 만드는 것 대부분이 v2에서 제거될 예정입니다. | 가벼운 재귀 또는 코드 청킹 단계가 필요하고 곧 있을 v2 마이그레이션을 감수할 수 있는 팀. | MIT 라이선스의 무료 오픈소스입니다. |
사양 비교
이 단계에서 중요한 사양입니다. 2026년 10월 19일에 확인했습니다. 도입 전에 공급업체 사이트에서 확인하세요.
| 도구 | 전략 | 토큰 기준 크기 조정 | 구조 인식 | 언어 | 라이선스 |
|---|---|---|---|---|---|
| Docling | 계층, 하이브리드, 줄 기반 | 예(Hugging Face 또는 tiktoken) | 전체 레이아웃, 표 머리글 반복 | Python | MIT |
| LlamaIndex | 문장, 토큰, 시맨틱, 계층 | 예(TokenTextSplitter) | Markdown, HTML, JSON, 코드 | Python | MIT |
| LangChain | 재귀, 문자, 토큰, 코드 | 예(tiktoken 등) | Markdown, HTML, JSON 헤더 | Python | MIT |
| Haystack | 재귀, 계층, 임베딩 | Chonkie 토큰 분할기로 | Markdown 헤더, Python AST, CSV | Python | Apache 2.0 |
| Unstructured | basic, by_title | 아니요(문자 한도) | 요소 유형, 섹션, 페이지 | Python | Apache 2.0 |
| Chonkie | 토큰, 재귀, 시맨틱, 레이트, LLM | 예 | Markdown 레시피, 코드, 표 | Python, REST 서버 | MIT |
이 단계가 쓰이는 곳
- 문서와 대화하기: Chonkie부터 시작하겠습니다.
- 고객 지원 에이전트: Chonkie부터 시작하겠습니다.
- 코딩 에이전트: LlamaIndex부터 시작하겠습니다.
- 리서치 및 지식 그래프: Chonkie부터 시작하겠습니다.
- 장기 메모리를 갖춘 어시스턴트: Chonkie부터 시작하겠습니다.
- 음성 에이전트: Chonkie부터 시작하겠습니다.
- 비공개 온디바이스 AI: Chonkie부터 시작하겠습니다.
- 직접 파인튜닝한 모델: Chonkie부터 시작하겠습니다.
이 가이드의 출처
- LangChain text splitters
- Sunsetting langchain-experimental (GitHub issue #87)
- LlamaIndex node parser modules
- Docling chunking concepts
- Unstructured chunking
- Haystack preprocessors
- feyninc/chonkie on GitHub
- Is Semantic Chunking Worth the Computational Cost? (arXiv)
- Chunking strategies study, August 2026 (arXiv)
- Late Chunking (Jina AI, arXiv)