문서 로더 통합
문서 로더 통합 (Document loader integrations)
LangChain Python에서 문서 로더와 연동하는 방법을 다뤄요. 문서 로더는 서로 다른 소스(Slack, Notion, Google Drive 등)의 데이터를 LangChain의 Document 형식으로 읽기 위한 표준 인터페이스를 제공해요. 이 덕분에 소스가 무엇이든 일관되게 데이터를 처리할 수 있어요.
출처: 공식문서
모든 문서 로더는 BaseLoader 인터페이스를 구현해요.
커뮤니티 문서 로더는 사용자 기여이며 검증되지 않았어요. LangChain은 이러한 통합을 검토하거나 보증하지 않으므로 사용에 책임을 져야 해요.
인터페이스 (Interface)
각 문서 로더는 자체 파라미터를 정의할 수 있지만 공통 API를 공유해요.
load(): 모든 문서를 한 번에 로드해요.lazy_load(): 문서를 지연(lazily) 스트리밍해요. 큰 데이터셋에 유용해요.
from langchain_docling.loader import DoclingLoader
FILE_PATH = "https://arxiv.org/pdf/2408.09869"
loader = DoclingLoader(file_path=FILE_PATH)
# Load all documents
documents = loader.load()
# For large datasets, lazily load documents
for document in loader.lazy_load():
print(document)
카테고리별 분류 (By category)
생산성 툴 (Productivity tools)
아래 문서 로더들은 흔히 쓰는 생산성 툴에서 데이터를 로드할 수 있게 해줘요.
| 문서 로더 | API 레퍼런스 |
|---|---|
| AgentMail | AgentMailLoader |
| Google Classroom | GoogleClassroomLoader |
웹 페이지 (Webpages)
아래 문서 로더들은 웹 페이지를 로드할 수 있게 해줘요.
| 문서 로더 | 설명 | 패키지/API |
|---|---|---|
| Unstructured | Unstructured로 웹 페이지 로드·파싱 | Package |
| Apify Dataset | Apify 데이터셋에서 문서 로드 | API |
| Apify Crawl | 웹사이트를 온디맨드로 크롤링해 각 페이지를 Document로 로드 | API |
| Diffbot Crawl Loader | Diffbot Crawl API로 웹사이트를 크롤링하고 온톨로지 일관 JSON으로 로드 | API |
| Diffbot Extract Loader | Diffbot Extract API로 웹 페이지를 온톨로지 일관 JSON으로 로드 | API |
| Docling | Docling으로 웹 페이지 로드·파싱 | Package |
| DomPruner | DOM AST 정리: 웹 페이지를 토큰 97%+ 줄인 컴팩트 마크다운으로 로드, API 키 불필요 | Package |
| Firecrawl | scrape/crawl/map/extract/search로 웹사이트를 깨끗한 LLM-ready 데이터로 변환 | API |
| Hyperbrowser | 헤드리스 브라우저 실행·확장 플랫폼, 어떤 사이트든 스크레이핑/크롤링 가능 | API |
| OpeddFeedLoader | 라이선스된 Opedd 콘텐츠 카탈로그를 라이선스 출처와 함께 Document로 로드 | API |
| ProxyHatLoader | ProxyHat 리지덴셜 프록시를 통해 웹 페이지를 Document로 로드 | API |
| AgentQL | AgentQL 쿼리나 자연어 프롬프트로 웹 페이지에서 웹 상호작용·구조화 데이터 추출 | API |
| CRW | 로컬 바이너리 또는 fastcrw.com 클라우드로 동작하는 오픈소스 Firecrawl 호환 웹 스크레이퍼 | Package |
| Plasmate | Set of Mark(SOM) 구조화 UI 추출을 지원하는 에이전트 네이티브 헤드리스 브라우저 | Package |
| Spidra | 실제 브라우저, CAPTCHA 해결, 구조화 데이터 추출을 갖춘 AI 웹 스크레이퍼 | API |
아래 문서 로더들은 PDF 문서를 로드할 수 있게 해줘요.
| 문서 로더 | 설명 | 패키지/API |
|---|---|---|
| Unstructured | Unstructured의 오픈소스 라이브러리로 PDF 로드 | Package |
| Upstage Document Parse Loader | UpstageDocumentParseLoader로 PDF 로드 | Package |
| Docling | Docling으로 PDF 로드 | Package |
| MinerU | MinerU로 PDF 및 기타 문서 로드 | Package |
| UnDatasIO | UnDatasIO로 PDF 로드 | Package |
| OpenDataLoader PDF | OpenDataLoader PDF로 PDF 로드 | Package |
| CVFileLoader | 임베디드 마크다운·HTML·JSON Resume 페이로드를 가진 .cv PDF/A-3u 파일 로드 | Package |
| pdfmuse | RAG용 정확한 좌표, 표, 블록별 섹션 메타데이터로 PDF·DOCX를 결정적으로 로드 | Package |
| oxidize-pdf | 요소 분리(disjoint) RAG 청킹을 갖춘 Rust 엔진으로 PDF 로드 | Package |
| pdf-inspector | pdf-inspector로 PDF 로드 | Package |
클라우드 프로바이더 (Cloud providers)
아래 문서 로더들은 선호 클라우드 프로바이더에서 문서를 로드할 수 있게 해줘요.
| 문서 로더 | 설명 | 파트너 패키지 | API 레퍼런스 / 소스 |
|---|---|---|---|
| Azure Blob Storage | Azure Blob Storage 컨테이너 또는 개별 blob에서 문서 로드 | ✅ | langchain-ai/langchain-azure |
| Google Cloud Storage Directory | GCS 버킷에서 문서 로드 | ✅ | GCSDirectoryLoader |
| Google Cloud Storage File | GCS 파일 객체에서 문서 로드 | ✅ | GCSFileLoader |
| Google Drive | Google Drive(Google Docs만)에서 문서 로드 | ✅ | GoogleDriveLoader |
공통 파일 형식 (Common file types)
아래 문서 로더들은 흔한 데이터 형식에서 로드할 수 있게 해줘요.
| 문서 로더 | 데이터 타입 |
|---|---|
Unstructured |
다양한 파일 형식 (https://docs.unstructured.io/platform/supported-file-types 참고) |
HwpHwpxLoader |
HWP/HWPX 파일 |
DoclingLoader |
다양한 파일 형식 (https://docling-project.github.io/docling/ 참고) |
PolarisAIDataInsightLoader |
다양한 파일 형식 (https://datainsight.polarisoffice.com/documentation?docType=doc_extract 참고) |
모든 문서 로더 (All document loaders)
다음은 LangChain이 제공하는 모든 문서 로더 목록이에요. (월간 다운로드 수 참고)
Google bigquery,Google cloud storage directory,Google cloud storage file,Google drive,Google speech-to-text audio transcripts—langchain-google-community(약 1,100만)Oracle AI vector search document processing,Oracle autonomous database—langchain-oracledb(약 23만)AstraDB—langchain-astradb(약 17.4만)UnstructuredLoader—langchain-unstructured(약 17.2만)Docling—langchain-docling(약 7.9만)PyMuPDF4LLMLoader—langchain-pymupdf4llm(약 4.9만)Upstage—langchain-upstage(약 3.7만)Google alloydb for postgresql—langchain-google-alloydb-pg(약 3.4만)Google firestore (native mode)—langchain-google-firestore(약 2.9만)ApifyCrawlLoader,ApifyDatasetLoader—langchain-apify(약 2.3만)Google cloud SQL for postgresql—langchain-google-cloud-sql-pg(약 2.2만)Google spanner—langchain-google-spanner(약 2.2만)DomPrunerLoader,OpenDataLoader PDF,Docugami,YoutubeLoaderDL,Azure blob storage loader,PDFParser,SingleStoreLoader,CapslaneLoader,SecureLangChainLoader,SpidraLoader,AlfrescoLoader,OpenDMALoader,MinerULoader,HydrafetchLoader,LyrenthLoader,CrwLoader,Google memorystore for Redis,XNSBlobLoader,XNSLoader,QuanticDataLoader,Google bigtable,HyperbrowserLoader,PowerScaleDocumentLoader,FirecrawlLoader,PaddleOCR-VL,PdfInspectorLoader,langchain_box,PolarisAIDataInsightLoader,Outline,ReplyLayerLoader,OpeddFeedLoader,Google Classroom,Google cloud SQL for mysql,Kinetica document loader,AnakinLoader,Google firestore in datastore mode,PdfmuseLoader,HwpHwpxLoader,CVFileLoader,ProxyHatLoader,AirbyteLoader,DiffbotCrawlLoader,DiffbotExtractLoader,Google cloud SQL for SQL server,AgentQLLoader,Google el carro for Oracle workloads,PlasmateSOMLLoader,Undatasio,Soniox,AgentMail,OxidizePdfLoader— 각각 소규모 커뮤니티 패키지 (월 다운로드 수백~수만)LangSmithLoader— N/A
통합을 기여하고 싶다면 Contributing integrations를 보세요.
더 알아보기 (Learn more)
BaseLoader인터페이스 — 모든 문서 로더가 구현하는 공통 인터페이스- Document — 문서 로더가 반환하는 표준 객체
- Text splitters — 큰 문서를 청크로 분할하는 방법