지난 9월, 유럽과 아시아에서 온 동료들이 샌프란시스코 본사에서 북쪽으로 110km 떨어진 작은 해안 마을에 모였습니다. 이파피루스와 이파피루스의 미국 자회사 Artifex 팀원들은 거의 모든 시간대에 흩어져 일하고 있거든요. 안개가 밀려오는 가운데, 우리는 일주일 내내 단 하나의 주제만 논의했습니다: 35년간 쌓아온 문서 처리 지식, 특히 PDF 같은 비정형 포맷 전문성을 최첨단 AI와 어떻게 결합해서 최고의 데이터 파싱 솔루션을 만들 수 있을까?
이파피루스와 Artifex는 이미 PyMuPDF 제품군으로 인기 있는 파싱 솔루션을 제공하고 있습니다. 마크다운 출력에 특화된 PyMuPDF4LLM도 포함해서요. Notion, DocuSign, Oracle 같은 주요 고객들이 우리 솔루션을 쓰고 있지만, AI 혁명으로 이 분야가 빠르게 변하고 있다는 걸 체감했습니다. 파싱에서 가장 주목받는 접근법은 VLM(비전 언어 모델)을 쓰는 겁니다. 쉽게 말하면, PDF 포맷은 무시하고 이미지 파일로 바꾼 다음 Vision Transformer 구조로 데이터를 뽑아내는 방식이죠.
VLM은 분명 혁신적인 접근입니다. 하지만 한 가지 문제가 있습니다: 연산 비용이 너무 높다는 거죠. GPU 자원을 엄청나게 먹어서 자연스럽게 처리가 느리고 비쌉니다. VC한테 수백억 원 투자받은 스타트업이라면 수익 없이도 비용을 감당하면서 밸류에이션을 부풀릴 수 있을지 모릅니다. 하지만 대부분 팀이 놓치는 게 있습니다: 머신러닝 역량은 강하지만 문서 자체에 대한 깊은 이해가 부족하다는 점이죠. 문서 구조를 다 버리고 PDF를 그냥 비트맵처럼 취급하면서 문서 문제를 풀려고 합니다. 우리는 다르게 접근할 수 있다고 생각했습니다. 우리가 실제로 아는 것, 35년의 PDF 전문성과 현대 머신러닝을 결합하는 방식으로요. 이 문제를 제대로 풀려면 두 가지 역량이 다 필요하다고 믿습니다.
만약 휴리스틱 알고리즘 기반의 네이티브 추출 방식이 GPU 없이도 자체 머신러닝 모델을 학습시키는 데 도움이 된다면 어떨까요? 이런 진짜 하이브리드 접근이 속도와 정확도를 동시에 잡을 수 있지 않을까요?
우리를 가장 흥분시킨 건 이런 질문을 할 수 있는 회사가 우리밖에 없다는 깨달음이었습니다. 방대한 PDF 지식과 AI 연구자/엔지니어가 함께 일하는 회사는 세상에 없거든요.
PyMuPDF-Layout 소개
1년간 개발한 끝에, 드디어 베타 테스터들에게 선보일 수 있는 단계까지 왔습니다. 우리는 이 하이브리드 접근법을 PyMuPDF-Layout이라고 부릅니다.
PyMuPDF-Layout이 다른 이유는 이렇습니다: 문서를 이미지로 보고 거대한 신경망(그것도 원격 서버에 있을 수 있는)이 전부 알아서 처리하게 하는 대신, 우리는 이미 PDF에 대해 알고 있는 것부터 시작합니다.
먼저 MuPDF의 네이티브 PDF 파싱으로 구조화된 정보를 추출합니다: 폰트 통계, 줄 간격 패턴, 글자 위치, 들여쓰기, 여백 같은 거죠. 이건 추측이 아닙니다. PDF 구조에서 직접 뽑아낸 정확한 측정값입니다. 문서 사진만 보는 게 아니라 문서의 DNA를 읽는다고 생각하시면 됩니다.
그다음 이 구조화된 데이터를 그래프 신경망(GNN)에 넣습니다. GNN은 텍스트 박스를 노드로, 그 공간적 관계를 엣지로 봅니다. "이 텍스트는 14포인트 볼드체다", "이 박스들은 12포인트 간격으로 세로로 정렬되어 있다" 같은 휴리스틱 특징들을 받아서, 어떤 패턴이 제목인지 본문인지 표인지 그림인지 학습합니다.
핵심 차이는 이겁니다: VLM 방식은 GPU 가속이 필요한 거대한 Vision Transformer로 고해상도 페이지 이미지를 통째로 처리합니다. PyMuPDF-Layout은 먼저 특징을 추출하고(CPU로 가능), 그다음 작은 GNN을 돌립니다(역시 CPU로 가능). 휴리스틱이 무거운 작업을 미리 해주기 때문에 모델이 그럴 필요가 없는 거죠.
결과는?
경쟁 솔루션보다 25배 빠르면서 완전히 CPU만으로 돌아갑니다. GPU 비용도 없고, 클라우드 API 의존성도 없이, 그냥 빠른 로컬 처리만 있습니다.
데모
곧 정식 출시할 예정입니다. 그동안pymupdf.io웹사이트에서 라이브 데모를 보실 수 있습니다.