개요

PDF 문서를 RAG에 활용하려면 OCR, 레이아웃 파싱, 텍스트 청킹, 임베딩까지 복잡한 파이프라인이 필요하다. 이 과정에서 오류가 누적되고, 표·그래프·인포그래픽 같은 시각적 정보는 제대로 처리되지 않는다. ColPali는 이 문제를 다르게 접근한다. PDF 페이지를 이미지 그대로 Vision LLM에 넣어 임베딩한다.

핵심 요약

  • PDF 페이지를 이미지로 직접 임베딩 — OCR·레이아웃 파싱 없음
  • PaliGemma(SigLIP + Gemma 2B)를 백본으로 패치 임베딩 생성
  • **ColBERT 방식 늦은 인터랙션(late interaction)**으로 쿼리-문서 매칭
  • ViDoRe 벤치마크에서 Claude Sonnet Vision 캡셔닝 방식 포함 모든 기존 시스템 능가
  • 시각적 요소(표, 그래프, 인포그래픽)가 많은 문서에서 특히 강함
  • 어떤 패치가 쿼리에 반응했는지 시각화 가능 — 해석 가능성 내장

기존 PDF 검색 파이프라인의 문제

표준적인 PDF 검색 파이프라인은 이렇게 생겼다.

  1. 스캔 PDF에 OCR 실행
  2. 문서 레이아웃 감지 — 단락, 그림, 제목 분리
  3. 페이지 구조와 읽기 순서 재구성
  4. 그림·표·이미지를 자연어로 캡셔닝 (선택적)
  5. 텍스트 청킹
  6. BGE M3 등 임베딩 모델로 벡터화
  7. 벡터 인덱스 저장

각 단계가 오류를 만들고 다음 단계로 전파한다. 무엇보다 시각적으로 정보를 전달하는 표, 그래프, 레이아웃은 텍스트 추출 과정에서 의미가 손실된다.

ColPali의 접근: 이미지를 그대로 임베딩한다

ColPali는 복잡한 파이프라인 대신 페이지 이미지를 직접 처리한다.

인덱싱 단계:

  1. PDF 페이지를 이미지(스크린샷)로 변환
  2. PaliGemma-3B이 이미지를 패치 단위로 분할
  3. 비전 트랜스포머(SigLIP-So400m)가 패치 임베딩 생성
  4. 언어 모델(Gemma 2B)이 패치 임베딩을 컨텍스트화
  5. 128차원으로 투영해 저장 효율 확보
  6. 페이지당 멀티벡터 표현 완성

쿼리 단계:

사용자 쿼리를 언어 모델로 임베딩해 토큰 벡터를 생성한다. 그런 다음 ColBERT 방식의 **늦은 인터랙션(late interaction)**으로 쿼리 토큰 각각에 대해 가장 유사한 문서 패치를 찾고, 이 점수를 합산해 최종 쿼리-문서 점수를 계산한다.

이 방식의 장점은 두 가지다. 쿼리와 문서 패치 사이의 풍부한 상호작용이 가능하면서도, 문서 인덱스를 오프라인에서 미리 계산해두므로 쿼리 지연이 낮다.

ViDoRe: 시각적 문서 검색 벤치마크

기존 임베딩 벤치마크는 텍스트 중심이다. ColPali 팀은 문서의 시각적 요소까지 평가하는 **ViDoRe(Visual Document Retrieval Benchmark)**를 함께 공개했다.

ViDoRe는 인포그래픽(InfographicVQA), 논문 그래프(ArxivQA), 표(TabFQuAD) 등 다양한 시각적 형식과 언어를 포함한다. HuggingFace 리더보드와 연결되어 있다.

결과: ColPali는 Claude Sonnet Vision으로 시각 요소를 모두 캡셔닝한 강력한 기준선을 포함해 ViDoRe의 모든 시스템을 능가한다. 시각적으로 복잡한 작업(인포그래픽, 그래프, 표)에서 차이가 특히 크고, 텍스트 중심 문서에서도 ColPali가 전반적으로 앞선다.

해석 가능성

ColPali의 부가적인 장점은 시각화다. 쿼리에 대해 어떤 페이지 패치가 높은 점수를 받았는지 히트맵으로 볼 수 있다. 예를 들어 <hour>라는 쿼리 토큰이 “hourly"라는 단어뿐 아니라 시간 축을 나타내는 그래프 영역과도 매칭된다. 모델이 실제로 차트를 이해하고 있다는 증거다.

훈련 방법

PaliGemma 사전훈련 가중치에서 시작해 최종 투영 레이어를 새로 초기화한다. 언어 모델 어텐션 가중치와 선형 투영 레이어에 LoRA 어댑터를 추가했다.

훈련 데이터는 두 소스로 구성된다. VQA 데이터셋에서 질문을 쿼리로, 이미지를 정답 레이블로 활용했다. 추가로 허용 라이선스 PDF 문서 수만 건에서 Claude Sonnet Vision 모델로 합성 쿼리를 생성했다. 전체 약 10만 쌍을 인배치 컨트라스티브 손실로 파인튜닝했다.

실무자가 볼 핵심 포인트

RAG 파이프라인을 구축하는 엔지니어에게 ColPali는 PDF 처리 복잡도를 대폭 낮춰준다. OCR 오류, 레이아웃 파싱 실패, 캡셔닝 비용 없이 페이지 이미지만 넣으면 된다. 특히 보고서, 논문, 재무제표처럼 표와 그래프가 많은 문서에서 기존 텍스트 파이프라인보다 검색 정확도가 높다.

주의할 점은 멀티벡터 저장 비용이다. 페이지당 다수의 패치 벡터를 저장하므로 단일 벡터 시스템보다 스토리지가 늘어난다. 128차원 투영이 이를 완화하지만, 대규모 문서 코퍼스에서는 인덱스 크기를 사전에 추정해야 한다.

모델과 벤치마크 코드, 훈련 코드 모두 오픈소스로 공개되어 있다.

원문 출처

원문: ColPali: Efficient Document Retrieval with Vision Language Models — Manuel Faysse et al. / HuggingFace Blog (2024-07-05)