올 해 RAG와 Agentic 시스템에 필요한 데이터 처리 개발을 위해, OCR + Document Analysis의 오픈소스부터 상용 서비스까지 정말 많이 테스트 해봤습니다. 그 중 가장 뛰어난 성능을 보여준 것이 Chandra였습니다.
1. 표, 수식, 이미지, 캡션, 각주 등 15가지 레이아웃 블록을 인식하고, 각각의 바운딩 박스 좌표까지 추출합니다.
2. 손으로 쓴 메모, 체크박스, 서명까지 인식합니다. 오래된 레거시 문서나 스캔된 양식 디지털화에서 유용했습니다.
3. Markdown, HTML, JSON 중 선택 가능합니다. LLM 파이프라인에 바로 연결할 수 있고, JSON 출력은 각 블록별 좌표와 텍스트를 구조화해서 제공합니다.
4. 한국어, 영어, 일본어, 중국어 등 다국어 문서도 문제없이 처리됩니다. 40개 이상 언어를 지원합니다.
5. 로컬 GPU로 직접 돌릴 수도 있고(HuggingFace), 서버에 vLLM을 띄워서 API로 호출할 수도 있습니다.
기술적으로는 Vision-Language Model(VLM) 기반입니다. Qwen3 VL을 사용하죠.
이미지를 입력받아 구조화된 HTML을 생성하는 방식으로, 문서 이해를 "이미지-텍스트 생성" 문제로 접근합니다.
덕분에 복잡한 레이아웃도 자연스럽게 처리됩니다.
사용법도 간단합니다. CLI에서
“chandra input.pdf ./output” 을 입력해서 사용하거나, 자체적으로 제공해주는 Streamlit 기반 웹 UI도 제공해서 설치 후 바로 테스트해볼 수 있습니다. vLLM으로도 제공해주기 때문에 운영으로도 활용할 수 있습니다. Agent나 RAG 파이프라인 개발하면서 문서 처리 때문에 고민이신 분들께 추천드립니다.
Cosmos-Tokenizer란?
Cosmos-Tokenizer는, 이미지나 동영상을 효율적으로 토큰화(부호화)하고, 복원하기 위한 NVIDIA의 최신 모델입니다. 이 모델은 연속적(Continuous) 및 이산적(Discrete) 토큰화를 지원하고 있어, 기계 학습의 전처리나 압축에 도움이 됩니다. GPT에 물어봤는데, 아마 그런 거, 솔직히 아직 이해하지 못했다.
데이터 압축: 고정밀로 데이터 사이즈를 압축. 기계 학습의 전처리: 모델의 입력 데이터를 최적화. 생성 AI: 토큰을 이용한 이미지나 동영상 생성. Cosmos-Tokenizer의 특징
연속(Continuous)과 이산(Discrete) 모드 지원
Continuous Tokenizer: 입력 데이터를 잠재 공간으로 변환하고, 수치 기반으로 압축. Discrete Tokenizer: 토큰으로 부호화하여, 정보량을 극한까지 감축. 멀티모달 대응 이미지(2D)나 동영상(3D)의 처리가 가능하며, 토큰화와 복원을 고속으로 합니다. 효율적인 아키텍처
NVIDIA의 최신 GPU에 최적화. CUDA를 활용한 고속 처리. 유연한 토큰 사이즈 토큰의 크기나 차원수를 선택 가능(예: 8x8x8, 16x16x16 등). 오픈 소스와 사전 학습 완료 모델 Hugging Face 저장소에서 사전 학습이 완료된 모델을 다운로드 가능. Cosmos-Tokenizer의 구조
Cosmos-Tokenizer는 아래와 같은 흐름으로 작동합니다:
부호화(인코딩) 입력 데이터를 토큰 또는 잠재 벡터로 변환합니다. 이로써 데이터 사이즈가 줄어듭니다.
Continuous: 잠재 공간의 표현을 생성. Discrete: 이산 토큰을 생성. 복원(디코딩) 토큰 또는 잠재 벡터를 원래의 형식으로 재구성합니다. 토큰 이용
압축 데이터의 전송이나 저장. 기계 학습 모델에 입력. 복원에 의한 평가(PSNR이나 SSIM 등). 주요 이용 예
데이터 압축 고정밀도를 유지하면서, 동영상이나 이미지의 파일 사이즈를 절감. 특히 대역폭이나 저장 용량이 제한된 환경에서 유효. 생성 AI 토큰을 사용하여 새로운 이미지나 동영상을 생성. 기계 학습의 효율화 토큰화된 데이터를 직접 모델에 입력함으로써, 학습과 추론의 속도가 향상. 란?
Cosmos-Tokenizer는, 이미지나 동영상을 효율적으로 토큰화(부호화)하고, 복원하기 위한 NVIDIA의 최신 모델입니다. 이 모델은 연속적(Continuous) 및 이산적(Discrete) 토큰화를 지원하고 있어, 기계 학습의 전처리나 압축에 도움이 됩니다. GPT에 물어봤는데, 아마 그런 거, 솔직히 아직 이해하지 못했다.
데이터 압축: 고정밀로 데이터 사이즈를 압축. 기계 학습의 전처리: 모델의 입력 데이터를 최적화. 생성 AI: 토큰을 이용한 이미지나 동영상 생성. Cosmos-Tokenizer의 특징
연속(Continuous)과 이산(Discrete) 모드 지원
Continuous Tokenizer: 입력 데이터를 잠재 공간으로 변환하고, 수치 기반으로 압축. Discrete Tokenizer: 토큰으로 부호화하여, 정보량을 극한까지 감축. 멀티모달 대응 이미지(2D)나 동영상(3D)의 처리가 가능하며, 토큰화와 복원을 고속으로 합니다. 효율적인 아키텍처
NVIDIA의 최신 GPU에 최적화. CUDA를 활용한 고속 처리. 유연한 토큰 사이즈 토큰의 크기나 차원수를 선택 가능(예: 8x8x8, 16x16x16 등). 오픈 소스와 사전 학습 완료 모델 Hugging Face 저장소에서 사전 학습이 완료된 모델을 다운로드 가능.