문서 청킹(Document Chunking) — 대용량 문서 분할 유틸리티
문서 청킹(Document Chunking) — 대용량 문서 분할 유틸리티
단일 추론 호출로 처리할 수 있는 크기(MB)와 페이지 수를 초과하는 대용량 문서를 작은 청크로 나누고, REST로 비동기 모델 엔드포인트를 호출하는 유틸리티 스크립트를 소개하는 쿡북이에요.
출처: 문서
본문
Mistral OCR과 Document AI처럼 모델과 서비스가 단일 추론 호출에 제공할 수 있는 크기(MB)와 페이지 수(개수) 제한을 어떤 문서는 넘어설 수 있어요. 아래는 대용량 문서를 더 작은 청크로 나눈 뒤 REST로 모델 엔드포인트를 비동기 호출하는 데 도움을 주는 유틸리티 스크립트예요. 기존 문서 처리 파이프라인에 쉽게 맞춰 수정할 수 있고, 이 저장소의 여러 쿡북에 통합할 수 있어요.
이 스크립트는 La Platforme의 Mistral OCR·Document AI 엔드포인트나, Azure·GCP·AWS Sagemaker의 MaaS(model-as-a-service) 엔드포인트에서 동작해요.
설정 (Setup)
requirements.txt에 있는 필수 패키지를 설치해요.- 스크립트에 필요한 입력들을 준비해요:
--pdf_file: 처리할 문서 경로--max_size_mb: API에서 허용하는 최대 크기(MB)--max_pages: API에서 허용하는 최대 페이지 수--endpoint: 모델 엔드포인트 URL--api_key: 모델 API 키--model_name: 요청 본문에 지정할 모델 이름 (예:"mistral-ocr-2505")
- 필요한 입력으로 스크립트를 실행해요:
python documentAIchunking.py --pdf_file /path/to/your/document.pdf --max_size_mb 10 --max_pages 10 --endpoint https://modelprovider/endpoint --api_key your_api_key --model_name mistral-ocr-2505
- 콘솔이나 로그에서 최종 결과를 확인해요.
⚠️ 참고: 이 유틸리티는 다양한 문서 처리 접근법과 엔드포인트에 유연하게 대응하도록 만들어졌어요. 기본값으로는 API 호출 결과를 콘솔이나 로그로만 출력해요. 결과를 저장하려면 스크립트를 필요에 맞게 수정해야 해요.