기존 OCR vs 문서 파싱 VLM영수증 벤치마크 결과 (2026)

마지막 검토: 2026-08-18 · 실행 등급: 공식 · 1차 벤치마크 · 8개 모델 × 2개 영수증 데이터셋

이 페이지의 범위: 4개의 기존 OCR 엔진(Tesseract, PaddleOCR, EasyOCR, docTR), 3개의 문서 파싱 비전-언어 모델(Surya2, Unlimited-OCR, PaddleOCR-VL), 1개의 파이프라인 파서(Docling)를 두 가지 영수증 데이터셋 — SROIE 2019 영어 영수증과 CORD v2 인도네시아어 영수증 — 위에서 비교하는 1차, 재현 가능한 벤치마크입니다. 보고된 지표: 문자 오류율(CER), 단어 오류율(WER), 두 가지 후처리 방법에 따른 필드 추출 F1, p50/p95 레이턴시, 분당 페이지 수, 1,000페이지당 비용입니다. 모든 수치는 공개 OCR 벤치마크 저장소(ImageToTableai/benchmark-ocr)의 게시된 CSV 행으로 추적 가능합니다 — 이는 제3자 보고서의 집계가 아닌 재현 가능한 실험 데이터입니다.
이 페이지에서 다루지 않는 범위: 영수증 외의 모든 문서 유형 — 청구서, 양식, 계약서 또는 긴 문서는 포함되지 않습니다. 클라우드/API OCR 서비스, 미세 조정된 문서 AI 모델, 표/수식/레이아웃 정확도, CER/WER 외의 전체 텍스트 지표는 범위 밖입니다. 결과는 영수증 OCR 정확도문서 유형별 OCR 정확도의 제3자 영수증 및 문서 유형 정확도 집계로 추가적으로 맥락화됩니다.

이 페이지의 모든 수치의 범위: 영수증. 이 결과를 청구서, 표 또는 복잡한 레이아웃에 외삽하지 마세요 — 벤치마크는 영수증 OCR 및 필드 추출만 측정합니다. 모든 수치는 벤치마크의 results/summary_metrics.csvresults/field_method_comparison.csv에서 가져오며, 공개 GitHub 저장소에 미러링되고 행별로 인용됩니다.

문서 파싱 VLM은 영수증에서 기존 OCR보다 본질적으로 우월하지 않습니다. 원시 문자 정확도(SROIE 2019)에서 최고의 VLM(Surya2, CER 0.191)과 최고의 기존 엔진(docTR, CER 0.197)은 통계적으로 동등하며, 기존 PaddleOCR은 0.204로 3위입니다. VLM의 명확한 이점 — 레이아웃, 표, 수식, 긴 문서 —은 단일 페이지 영어 영수증에서는 나타나지 않습니다. 영수증에서 두 계열을 구분하는 것은 작동 범위입니다: 기존 엔진은 비용과 실행이 훨씬 적게 들며, LLM 후처리 단계 후 8개 엔진 중 6개가 0.57–0.62 필드 F1 대역으로 수렴합니다.

이 비교를 한 쌍의 숫자로 보면, docTR은 109 ms p50로 페이지를 처리하며 1,000페이지당 $0.048의 비용이 들고, Surya2는 동일한 RTX 4090, 동일한 영수증, 동일한 테스트 분할에서 2,668 ms p501,000페이지당 $1.061의 비용이 듭니다. 이는 24.5배의 레이턴시 차이와 22배의 비용 차이를 의미합니다. 어떤 계열이 "승리"하는지는 전적으로 어떤 축을 중요하게 생각하느냐에 달려 있으며, 이 페이지의 목적은 동일한 통제된 실행에서 두 축 모두를 보여주는 것입니다.

0.191 · 0.197
최고의 문서 파싱 VLM(Surya2) 대 최고의 기존 엔진(docTR)의 SROIE CER — VLM의 승리가 아닌 통계적 동률
24.5×
SROIE에서 페이지당 p50 레이턴시 차이: docTR(108.7 ms) 대 Surya2(2,668.0 ms) — 비용은 22배, 페이지/분은 37배 차이
0.57–0.62
LLM 후처리(deepseek-v4-flash)된 SROIE 필드 F1 밴드: 8개 엔진 중 6개가 여기에 수렴(docling 0.569 … docTR 0.617); EasyOCR 0.372 및 Tesseract 0.439는 미달

문자 오류율(CER)은 개별 문자 중 오독된 비율을 측정합니다 — 삭제, 삽입, 치환된 문자를 정답 문자로 나눈 값입니다. 이는 전형적인 OCR 측정 기준이며, 영어 영수증에서 "VLM 우월성" 내러티브가 무너지는 지점이기도 합니다.

SROIE 2019에서 가장 성능이 좋은 두 텍스트 인식기는 VLM과 기존 엔진 각 하나로, 0.006점 차이를 보입니다: Surya2가 0.191, docTR이 0.197로, PaddleOCR이 0.204로 세 번째입니다. 나머지 세 VLM — PaddleOCR-VL 0.337, Docling 0.591, Unlimited-OCR 0.655 — 은 EasyOCR(0.283) 및 Tesseract(0.335)와 같은 기존 엔진과 비슷하거나 그 아래 성능을 보입니다.

SROIE 기준 모델별 문자 정확도

SROIE 2019 모델별 CER: Surya2 0.191과 docTR 0.197이 최상위권. 기존 엔진들은 0.20~0.34 범위에 분포; PaddleOCR-VL 0.337, Docling 0.591, Unlimited-OCR 0.655는 뒤처짐.

출처: summary_metrics.csv — cer 열, sroie_2019 행. Surya2 0.1915, docTR 0.1971, PaddleOCR 0.2045, EasyOCR 0.2833, Tesseract 0.3347, PaddleOCR-VL 0.3370, Docling 0.5909, Unlimited-OCR 0.6552. 낮을수록 좋음. Tesseract는 CPU 전용.

모델유형CERWER출처
Surya2문서 파싱 VLM0.1910.274summary_metrics.csv · surya2/sroie_2019 행
docTR기존 OCR0.1970.320summary_metrics.csv · doctr/sroie_2019 행
PaddleOCR기존 OCR0.2040.326summary_metrics.csv · paddleocr/sroie_2019 행
EasyOCR기존 OCR0.2830.616summary_metrics.csv · easyocr/sroie_2019 행
Tesseract기존 OCR (CPU)0.3350.559summary_metrics.csv · tesseract/sroie_2019 행
PaddleOCR-VL문서 파싱 VLM0.3370.646summary_metrics.csv · paddleocr_vl_vllm/sroie_2019 행
Docling파이프라인 파서0.5910.760summary_metrics.csv · docling/sroie_2019 행
Unlimited-OCR문서 파싱 VLM0.6550.478summary_metrics.csv · unlimited_ocr/sroie_2019 행

표: summary_metrics.csv — cer 및 wer 열, sroie_2019 행, 각 361개 샘플. CER = 문자 오류율, WER = 단어 오류율; 낮을수록 좋습니다. 정확한 값: Surya2 cer 0.19147 / wer 0.27352; docTR cer 0.19707 / wer 0.31990.

단어 오류율(WER)은 다른 세분화로 동일한 경향을 보여줍니다. 문자가 아닌 전체 단어 오류를 평가합니다. Surya2가 0.274로 WER 1위를 차지하고, docTR이 0.320으로 뒤를 잇습니다. 하단의 이상치를 주목하세요. Unlimited-OCR는 CER이 가장 나쁘지만(0.655) WER는 중간 수준(0.478)입니다 — 이는 출력이 대소문자 및 형식 정규화가 강하게 적용된 결과입니다. 이로 인해 단어가 대부분 온전하더라도 문자 수준 편집이 과대 평가됩니다.

Docling은 비교에 등장하기 전에 분류 설명이 필요합니다. 순수한 전통 OCR 엔진도 아니고 VLM도 아닙니다. Docling은 파이프라인 파서 — 레이아웃 분석, 테이블 감지, 읽기 순서 재구성 등을 OCR 코어 주변에서 단계별로 실행하는 도구 체인입니다. 일반 영수증에서는 이 파이프라인 오버헤드가 거의 도움이 되지 않으며, 이것이 원시 CER이 단일 패스 엔진에 뒤처지는 이유 중 일부입니다.

비용과 지연 시간: 전통 엔진의 이점

문자 정확도가 두 계열 간에 결정적인 차이를 만들지 못한다면, 비용과 지연 시간이 거의 모든 것을 결정합니다. 동일한 테스트 분할에서 docTR은 페이지당 108.7 ms p50의 지연으로 449페이지/분을 유지하며, 1,000페이지당 $0.048의 비용이 듭니다. Surya2는 페이지당 2,668 ms p50의 지연으로 12페이지/분을 유지하며, 1,000페이지당 $1.061의 비용이 듭니다 — 처리량은 약 37배, 페이지당 지연은 24.5배, 1,000페이지당 비용은 22배 수준입니다.

비용은 벽시계 실행 시간 × RunPod RTX 4090 요금으로 계산됩니다 — 모델 초기화를 포함한 실제 GPU 시간 비용입니다. Tesseract는 특수한 경우입니다: CPU 전용으로 GPU 비용이 전혀 없으며 SROIE에서 78.6페이지/분을 달성합니다. 비용 셀은 CSV에서 의도적으로 비어 있는데, 무료이기 때문이 아니라 과금되는 GPU 시간을 소비하지 않기 때문입니다.

SROIE 2019에서의 페이지당 중간 지연 시간(p50, ms): docTR 109 ms. PaddleOCR 297, EasyOCR 414, Tesseract 671 (CPU), PaddleOCR-VL 694, Docling 732, Unlimited-OCR 1601, Surya2 2668. 수직 점선 막대(1,000 ms)는 대화형 응답 임계값을 표시합니다.

출처: summary_metrics.csv — latency_p50_ms 열, sroie_2019 행. docTR 108.7, PaddleOCR 297.0, EasyOCR 413.6, Tesseract 670.9 (CPU), PaddleOCR-VL 694.3, Docling 732.0, Unlimited-OCR 1600.7, Surya2 2668.0. 정상 상태 지연 시간, 워밍 후 측정 모드.

SROIE 2019에서의 1,000페이지당 비용: docTR $0.048, EasyOCR $0.110, PaddleOCR-VL $0.205, PaddleOCR $0.221, Unlimited-OCR $0.388, Docling $0.398, Surya2 $1.061. Tesseract는 CPU 전용.

출처: summary_metrics.csv — cost_per_1000_pages 열, sroie_2019 행. docTR 0.0479, EasyOCR 0.1098, PaddleOCR-VL 0.2048, PaddleOCR 0.2214, Unlimited-OCR 0.3879, Docling 0.3978, Surya2 1.0609. Tesseract CPU 전용: CSV에서 셀 비어 있음; 비용에는 모델 초기화 포함, 순수한 정상 상태 처리량 아님.

모델유형레이턴시 p50 (ms)레이턴시 p95 (ms)페이지/분비용 / 1K 페이지출처
docTR기존 OCR108.7281.4449.3$0.048summary_metrics.csv · doctr/sroie_2019 행
PaddleOCR기존 OCR297.03,331.479.7$0.221summary_metrics.csv · paddleocr/sroie_2019 행
EasyOCR기존 OCR413.6960.4124.5$0.110summary_metrics.csv · easyocr/sroie_2019 행
Tesseract기존 OCR (CPU)670.91,507.078.6n/a (CPU)summary_metrics.csv · tesseract/sroie_2019 행
PaddleOCR-VL문서 파싱 VLM694.31,154.368.2$0.205summary_metrics.csv · paddleocr_vl_vllm/sroie_2019 행
Docling파이프라인 파서732.03,239.856.7$0.398summary_metrics.csv · docling/sroie_2019 행
Unlimited-OCR문서 파싱 VLM1,600.72,521.934.4$0.388summary_metrics.csv · unlimited_ocr/sroie_2019 행
Surya2문서 파싱 VLM2,668.05,872.212.1$1.061summary_metrics.csv · surya2/sroie_2019 행

표: summary_metrics.csv — latency_p50_ms / latency_p95_ms / pages_per_minute / cost_per_1000_pages, sroie_2019 행. GPU는 RTX 4090으로 실행; Tesseract는 CPU 전용으로 실행. 처리량은 모델 초기화를 포함한 벽시계 기준 페이지/분.

꼬리 레이턴시 열은 중앙값뿐 아니라 최악의 경우 동작도 중요할 때 참고할 만합니다. PaddleOCR의 p95 3,331 ms와 Docling의 3,240 ms는 p50 값과 크게 차이납니다 — GPU 엔진에서 첫 페이지 효과와 프리필 스파이크가 꼬리 레이턴시를 지배하는 반면, docTR의 p95 (281 ms)는 타이트하게 유지됩니다. 대화형 워크로드에서는 이 p95 차이가 0.3초 대기와 3초 이상 대기의 차이를 만듭니다.

CORD (Indonesian Receipts): 언어 불일치와 Ground-Truth 왜곡

CORD v2는 중첩된 필드(menu, sub_total, total)를 가진 인도네시아어 영수증 데이터셋입니다. 8개 엔진 중 인도네시아어 영수증으로 주로 훈련된 엔진은 없으므로, CORD는 언어 간 스트레스 테스트 역할을 합니다 — 그리고 모든 엔진의 CER이 0.90–1.08로 붕괴됩니다. 이 수치는 CORD의 ground-truth 텍스트에 어노테이션 구조가 포함되어 있어 모든 엔진의 원시 CER을 왜곡한다는 점을 감안해서 해석해야 합니다. CER 결과는 SROIE 순위와 엄격히 분리되며, 단일 리더보드로 통합될 수 없습니다.

CORD CER을 1.0 쪽으로 밀어붙이는 두 가지 힘이 있으며, 그중 하나만 언어 자체입니다. 첫째, 언어입니다: 영어로 훈련된 엔진은 인도네시아어 단어를 실제로 잘못 읽습니다 — 인도네시아어 이름, 거리 주소, 통화 형식(Rp)은 훈련 분포 바깥에 있습니다. 둘째, ground-truth입니다: CORD에 공개된 텍스트 어노테이션은 순수한 가시 텍스트 대신 어노테이션 구조를 포함하고 있어, 원시 CER은 구조적으로 증강된 문자열에 대한 편집 거리를 측정합니다. 가장 깨끗한 VLM 예시가 가장 큰 불이익을 받습니다 — CER 1.080을 기록한 PaddleOCR-VL은 텍스트 품질에 대한 판독이 아니라 이 메커니즘의 극단적인 산물입니다.

따라서 CORD에서의 공정한 패밀리 간 비교 지표는 CER이 아닌 필드 지표입니다. CER 열이 여전히 유용하게 보여주는 것은 언어 불일치가 실제 존재하며 아키텍처 전반에 걸쳐 보편적이라는 점입니다 — 기존 방식과 VLM을 포함한 모든 패밀리가 동일한 0.90~1.08 대역에 위치하며, 어느 쪽에도 구조적 이점이 없습니다.

모델유형CORD CER출처
Surya2문서 파싱 VLM0.896summary_metrics.csv · surya2/cord_v2 행
PaddleOCR기존 OCR0.908summary_metrics.csv · paddleocr/cord_v2 행
docTR기존 OCR0.910summary_metrics.csv · doctr/cord_v2 행
EasyOCR기존 OCR0.918summary_metrics.csv · easyocr/cord_v2 행
Docling파이프라인 파서0.922summary_metrics.csv · docling/cord_v2 행
Unlimited-OCR문서 파싱 VLM0.922summary_metrics.csv · unlimited_ocr/cord_v2 행
Tesseract기존 OCR (CPU)0.952summary_metrics.csv · tesseract/cord_v2 행
PaddleOCR-VL문서 파싱 VLM1.080summary_metrics.csv · paddleocr_vl_vllm/cord_v2 행

표: summary_metrics.csv — cer 열, cord_v2 행, 각 100개 샘플. 이 수치들을 SROIE와 결합된 순위로 비교하지 마세요: CORD CER는 실제 언어 불일치와 정답 데이터의 주석 구조적 인플레이션을 결합한 것입니다. CER이 1.0 이상(PaddleOCR-VL 1.0805)인 것은 인플레이션된 정답 데이터로 인한 편집 거리 아티팩트입니다.

필드 F1: LLM 후처리가 필드를 수렴시킵니다

문자 정확도는 엔진 순위를 매기지만, 실제 프로덕션 사용자들이 비용을 지불하는 것은 필드 추출입니다. 벤치마크는 각 엔진의 OCR 텍스트에서 두 가지 후처리 방식 — 고정된 regex 패턴과 구조화된 프롬프트를 사용하는 LLM(deepseek-v4-flash) —을 사용하여 네 가지 영수증 필드를 추출합니다. 결과: LLM은 SROIE에서 엔진 간 격차를 거의 없애며, 여덟 엔진 중 여섯 개를 0.57–0.62 필드 F1 밴드로 끌어올립니다 — 반면 regex 결과는 0.26 포인트 범위에 흩어져 있었습니다.

필드 값 F1은 추출된 필드 값에 대한 정밀도와 재현율의 조화 평균으로, 정답 데이터와 비교하여 점수를 매깁니다 — 1.0은 모든 필드 값이 완벽하게 추출됨을, 0은 아무것도 복구되지 않음을 의미합니다. regex 열은 데이터셋당 하나의 고정된 패턴 세트를 사용하고, LLM 열은 결정론적 출력을 위해 temperature 0으로 deepseek-v4-flash를 사용합니다. 두 지표는 서로 다른 파이프라인을 측정하며, 절대 혼합되지 않습니다.

후처리 방식별 SROIE 필드 F1: regex 7.7–33.8% vs LLM (deepseek-v4-flash) 37.2–61.7% (8개 엔진). LLM은 6개 엔진을 56.9–61.7%로 수렴; EasyOCR 37.2%와 Tesseract 43.9%는 밴드 아래로 떨어집니다.

출처: field_method_comparison.csv — regex_field_value_f1 / llm_field_value_f1 열, sroie_2019 행. LLM 후처리기: deepseek-v4-flash. 엔진당 361개 샘플 (llm_ok_count).

모델유형regex 필드 F1 (SROIE)LLM 필드 F1 (SROIE)출처
docTR기존 OCR0.0770.617field_method_comparison.csv · doctr/sroie_2019 행
Surya2문서 파싱 VLM0.3180.614field_method_comparison.csv · surya2/sroie_2019 행
Unlimited-OCR문서 파싱 VLM0.3380.605field_method_comparison.csv · unlimited_ocr/sroie_2019 행
PaddleOCR-VL문서 파싱 VLM0.3370.592field_method_comparison.csv · paddleocr_vl_vllm/sroie_2019 행
PaddleOCR기존 OCR0.3250.581field_method_comparison.csv · paddleocr/sroie_2019 행
Docling파이프라인 파서0.2240.569field_method_comparison.csv · docling/sroie_2019 행
Tesseract기존 OCR (CPU)0.2330.439field_method_comparison.csv · tesseract/sroie_2019 행
EasyOCR기존 OCR0.1480.372field_method_comparison.csv · easyocr/sroie_2019 행

표: field_method_comparison.csv — regex_field_value_f1 / llm_field_value_f1, sroie_2019 행. LLM = deepseek-v4-flash 후처리. docTR regex 0.0766 → LLM 0.6171 (8.1× 향상); 상위 6개 엔진은 0.5685–0.6171 범위를 보입니다.

이 표에는 두 가지 직관에 반하는 결과가 있습니다. 첫째, docTR은 SROIE에서 regex 필드 F1이 가장 낮지만(0.077) LLM 필드 F1은 가장 높습니다(0.617) — regex가 필드의 7.7%만 추출할 수 있었던 깨끗한 OCR 텍스트가 LLM에서는 61.7%를 달성했습니다. 병목은 OCR가 아닌 후처리기였습니다. 둘째, 0.57–0.62 범위 밖에 있는 두 엔진은 정확히 OCR 기반이 저하된 두 엔진입니다: EasyOCR (0.372, SROIE CER 0.283)와 Tesseract — CORD 결과는 LLM이 근본적으로 읽을 수 없는 텍스트에서 필드를 추출할 수 없음을 보여줍니다(CORD CER 0.9523). 어떤 후처리기의 상한선도 그 아래에 있는 OCR 기반 품질에 달려 있습니다.

CORD에서 LLM은 언어 충격의 일부를 흡수합니다. 정상적인 엔진들(PaddleOCR 0.553, docTR 0.550, PaddleOCR-VL 0.520, Surya2 0.520)에서 LLM 필드 F1은 0.47–0.55을 유지하는 반면, regex는 거의 0으로 붕괴합니다(docTR 0.0, EasyOCR 0.7%) — 패턴은 영어 형식용으로 작성되었고, "하나의 언어 추가"라는 페널티는 규칙이 거의 전적으로 부담하며, LLM은 부담하지 않습니다.

CER가 문서 파싱 VLM을 과소평가하는 이유

CER는 VLM 출력과 정답을 문자 단위로 비교하며, VLM은 인식 오류가 아닌 두 가지 합법적인 동작에 대해 불이익을 받습니다: 대소문자 통합레이블/값 병합입니다. 벤치마크의 SROIE CER 분해 분석에 따르면, VLM CER의 약 18%는 대소문자 형식 차이에, 약 10%는 줄 병합 또는 구분선 누락에 기인하며 — 필드 값 자체는 실제로 정확합니다.

설계상의 긴장은 실제적이고 구조적입니다: 기존 OCR 엔진은 대소문자가 유지된 원시 텍스트를 출력하므로, 설계상 CER 점수에 최적화되어 있습니다. 반면 문서 파싱 VLM은 "이해한" 텍스트를 출력하는데, 이는 하위 시스템이 원하는 것에 더 가깝지만 정확한 문자 일치에서는 더 멀리 떨어집니다. 이것이 본 페이지의 제목이 공정한 비교가 가능한 동일 유형 출력 간에만 CER을 사용하고, 공정한 교차 패밀리 비교가 필드 지표에 존재하는 이유이며, CORD CER가 별도의 섹션으로 분리된 이유입니다. 더 넓은 관점에서: 패밀리 간 CER 차이는 자동으로 정확도 차이를 의미하지 않으며, 교차 패밀리 모델 비교 시 한 패밀리가 "더 잘 읽는다"고 결론짓기 전에 CER이 무엇을 측정하는지 확인해야 합니다.

어떻게 선택할까: 워크로드에 중요한 축은?

"더 낫다"는 워크로드 없이는 의미가 없습니다. 벤치마크의 솔직한 결론은 두 계열이 서로 다른 축에서 승리한다는 것이며, 영수증은 전통적인 엔진이 승리하는 축과 후처리 — 엔진 계열이 아닌 —이 필드 품질을 결정하는 축을 구체적으로 측정합니다.

  1. 파이프라인이 소비하는 것이 무엇인지 결정하세요: 원본 텍스트인지 필드인지. 사람이 텍스트를 읽는 경우 CER/WER가 솔직한 지표이며, 전통적인 엔진이 이기거나 동점을 기록합니다. 하위 시스템이 필드를 소비하는 경우 후처리기가 엔진보다 더 큰 영향을 미칩니다: regex 사용 시 필드 F1은 0.077–0.338 범위이며, LLM 사용 시 6개 엔진이 0.569–0.617 범위에 들어옵니다.
  2. 처리량이 많고 비용이 현실적인 문제라면, 전통적인 빠른 경로를 중심으로 설계하세요. docTR은 $0.048/1,000페이지당 비용으로 분당 449페이지를 처리했습니다(summary_metrics.csv doctr/sroie_2019: pages_per_minute 449.3, cost_per_1000_pages 0.0479). Tesseract는 GPU 비용 없이 분당 78.6페이지를 처리합니다. Surya2의 $1.061/1,000페이지당 비용을 기반으로 한 VLM 기반 영수증 라인은 동일한 하드웨어에서 페이지당 약 22배 더 비쌉니다.
  3. 필드가 바이트보다 중요하다면, 엔진을 전환하는 대신 LLM 후처리를 추가하세요. 벤치마크에서 가장 큰 단일 개선은 docTR의 SROIE 필드 F1이었습니다 — regex의 0.077에서 deepseek-v4-flash의 0.617로, 동일한 OCR 텍스트에서 8.1배 향상되었습니다. LLM 호출은 문서당 중간값 약 1.8–2.4초가 추가됩니다 — 이는 동기적 페이지별 사용자 대기에는 적합하지 않고 비동기 일괄 처리에 적합합니다.
  4. OCR가 설정하는 상한선에 맞춰 예산을 계획하세요. EasyOCR과 Tesseract는 기본 텍스트가 약하여 LLM 수렴 대역 밖에 있습니다. CORD에서의 Tesseract는 어떤 후처리기도 읽을 수 없는 텍스트를 수정할 수 없다는 강력한 증거입니다.
  5. 확정하기 전에 자체 문서로 검증하세요. 이 숫자들은 단일 GPU 티어(RTX 4090), 두 개의 영수증 데이터셋, 2026년 8월 모델 버전에서 나왔습니다. 모든 아키텍처 결정은 자체 코퍼스에서 다시 실행해야 합니다 — 이 페이지를 만든 아티팩트 세트는 바로 그렇게 할 수 있도록 존재합니다.

선택 가이드는 인용된 CSV 행에서 직접 도출되었으며, 데이터 기반 독자 지원이지 벤더 보증이 아닙니다. 정확한 결과는 하드웨어, 문서 구성, 모델 버전에 따라 달라집니다.

자주 묻는 질문

문서 파싱 VLM이 영수증 처리에서 기존 OCR보다 더 정확한가요?

원시 문자 정확도 면에서는 아닙니다. 최고의 VLM과 최고의 기존 엔진은 SROIE 2019에서 통계적으로 동등한 성능을 보입니다. PaddleOCR(0.204)는 3위입니다. 필드 추출이 목표일 때, VLM 여부와 관계없이 LLM 후처리가 결정적인 요소입니다.

문서 파싱 VLM보다 기존 OCR가 더 적합한 경우는 언제인가요?

처리량이 많고, 비용이 측정되며, 레이턴시가 인터랙티브한 경우입니다. SROIE에서 docTR은 $0.048 per 1,000 pages 비용으로 108.7 ms p50 레이턴시에 분당 449페이지를 처리했습니다. Surya2는 $1.061 per 1,000 pages 비용으로 2,668 ms p50 레이턴시에 분당 12페이지를 처리했습니다. 페이지당 인터랙티브 대기 시간 차이는 0.1초 대 2.7초입니다.

문서 파싱 VLM이 저렴한 OCR보다 CER 점수가 낮은 경우는 왜 그런가요?

CER은 정확한 문자 일치를 평가하기 때문입니다. VLM은 출력 관례인 대소문자 병합 및 레이블/값 병합에 대해 감점받지만, 이는 잘못된 읽기가 아닙니다. 벤치마크의 CER 분해에 따르면 SROIE에서 VLM CER의 약 18%는 대소문자 형식 차이, ~10%는 줄 병합/구분자 누락에 기인하며, 필드 값 자체는 종종 정확합니다. CORD CER은 정답 데이터 내 주석 구조로 인해 추가로 부풀려지기 때문에, 이 페이지에서는 CORD CER을 모든 순위에서 분리하고 교차 패밀리 비교에 필드 지표를 사용합니다.

RTX 4090에서 영수증 OCR의 페이지당 비용은 얼마인가요?

RTX 4090에서 시간당 $0.76 기준, 1,000페이지당 $0.048(docTR)에서 $1.061(Surya2) 사이입니다. 가격은 2026년 8월 기준으로 런 매니페스트에 기록되어 있습니다. Tesseract는 CPU 전용으로 GPU 시간을 소비하지 않습니다. 비용에는 모델 초기화가 포함되어 있어 배치 크기가 커지면 페이지당 비용이 낮아집니다.

왜 모든 모델이 CORD 영수증에서 0.90 이상의 CER을 기록하나요?

두 가지 복합적인 원인이 있습니다: 진정한 언어 불일치와 CORD의 정답 텍스트 내 주석 구조적 과장입니다. 어떤 계열도 이를 피하지 못합니다 — 8개 모델 모두 0.90–1.08 범위에 속합니다. CORD는 언어/레이아웃 견고성을 테스트하기 위한 집합으로, SROIE 순위와는 별도로 유지됩니다.

LLM이 잘못된 OCR 출력을 바로잡아 줄 수 있나요?

기본 텍스트의 품질에 한해서만 가능합니다. SROIE에서 LLM은 엔진에 관계없이 6개 엔진을 0.57–0.62 필드 F1 범위로 끌어올렸지만(field_method_comparison.csv), Tesseract의 CORD 사례는 한계를 보여줍니다: CER 0.9523에서 LLM 필드 F1은 0.163입니다 — LLM은 읽을 수 없는 텍스트에서 필드를 추출할 수 없습니다.

영수증 처리에 가장 빠른 OCR는 무엇인가요?

이 벤치마크에서는 docTR입니다: SROIE 2019에서 페이지당 p50 108.7 ms, 분당 449페이지. 가장 느린 Surya2는 p50에서 24.5배 느렸고(2,668 ms), 처리량에서 37배 느렸습니다.

이 페이지의 수치는 어디서 왔나요?

모든 수치는 1차 벤치마크의 공개 CSV 파일의 행입니다 — results/summary_metrics.csvresults/field_method_comparison.csvImageToTableai/benchmark-ocr에 호스팅되며, 각 런에 대한 환경 지문용 manifest.json이 하나 포함되어 있습니다. 데이터셋 정의는 아래에 인용된 SROIE 2019 및 CORD 논문에서 나옵니다.

방법론 및 출처

프로토콜

이 페이지는 독립적이고 재현 가능한 벤치마크 실행의 문서 파싱 비교 결과를 보고합니다 — 제3자 주장을 조사한 것이 아닙니다. 고정된 테스트 분할만 사용합니다: SROIE 2019 테스트와 CORD v2 테스트; 학습 분할은 평가하지 않았습니다. 모든 쌍은 동일한 이미지, 동일한 정답, 동일한 측정 프로토콜을 재사용합니다. 16개의 모든 실행이 error_rate 0.0으로 완료되었습니다.

런타임 환경

  • 하드웨어: 모든 GPU 실행은 NVIDIA RTX 4090(24 GB)에서 수행; GPU 비용은 RunPod 온디맨드 요금 $0.76/hr로 계산하며, 가격 타임스탬프는 각 실행의 비식별화된 매니페스트에 기록됩니다. Tesseract는 CPU 전용으로 실행되어 GPU 비용이 없습니다.
  • 엔진: 모든 모델은 파인튜닝 없이 기본 설정으로 실행됩니다. 버전은 실행 매니페스트에 따라 고정됩니다.
  • LLM 후처리기: field_method_comparison.csv의 llm_model 열에 해당하는 deepseek-v4-flash를 API를 통해 temperature 0으로 실행하여 결정적 출력을 생성합니다. 이 모델은 모든 LLM 필드 행에 단일로 사용되었습니다.
  • 비용 기준: 벽시계 실행 시간 × $0.76/hr, 모델 초기화 포함 — 일괄 처리는 페이지당 비용을 낮춥니다.
  • 필드 후처리: SROIE 필드 지표는 postprocessed_sroie_receipt_regex_* / LLM 변형입니다 — 즉, 고정된 regex 세트 또는 LLM에 의해 OCR 텍스트에서 추출된 필드입니다. 이는 모델의 네이티브 구조화된 출력이 아닌 OCR + 후속 추출을 측정합니다.
모델버전유형 / 백엔드
Tesseract5.3.4기존 OCR — CPU
PaddleOCR3.7.0기존 OCR — GPU
EasyOCR1.7.2기존 OCR — GPU
docTRv1.0.1기존 OCR — GPU
Docling2.119.0파이프라인 파서 — GPU
Surya20.22.1문서 파싱 VLM — vLLM 서빙
Unlimited-OCRvLLM 서빙문서 파싱 VLM — vLLM 서빙
PaddleOCR-VL1.6문서 파싱 VLM — vLLM 서빙

버전은 벤치마크의 모델 테이블(README.md) 및 실행별 비식별화된 매니페스트에 기록된 대로입니다 — 각 매니페스트는 실행 ID, 모델 버전, 실행 스크립트 해시, GPU/드라이버, torch/CUDA/Python 버전, pip-freeze 해시, 가격 타임스탬프가 포함된 비용 메타데이터, 재현성을 위한 아티팩트 해시를 기록합니다.

지표 정의

  • CER: OCR 텍스트와 정답 간의 편집 거리를 정답 문자 수로 나눈 값. 낮을수록 좋습니다. 대소문자 및 형식 규칙에 민감합니다.
  • WER: 단어 단위로 동일한 편집 거리 계산을 수행한 값.
  • 필드 값 F1 (regex): OCR 텍스트에 고정된 정규식 패턴을 적용하여 추출된 필드 값의 정밀도/재현율 조화 평균. 열: regex_field_value_f1.
  • 필드 값 F1 (LLM): LLM 후처리기 출력에 대한 동일한 지표. 열: llm_field_value_f1. 두 파이프라인은 서로 다르며, 절대 혼합되지 않습니다.
  • 레이턴시 p50/p95 및 페이지/분: 안정 상태의 페이지당 추론 시간 및 모델 초기화를 포함한 실제 처리량.
  • 1,000페이지당 비용: 기록된 $0.76/hr 요율로 1,000페이지를 처리하는 데 청구된 GPU 시간; CPU 전용 Tesseract는 비어 있음.

출처 목록

  1. summary_metrics.csv (GitHub raw). 16행 = 8개 모델 × 2개 데이터셋. 열: model, compute_type, dataset, cer, wer, field_f1_regex, field_acc_regex, latency_p50_ms, latency_p95_ms, cost_per_1000_pages, pages_per_minute, error_rate. 이 페이지의 모든 CER/WER, 레이턴시, 비용, 처리량 수치는 이 파일의 행에서 추적됩니다.
  2. field_method_comparison.csv (GitHub raw). 16행; 열 model, dataset, llm_model (= deepseek-v4-flash), regex/llm 필드 값 정확도 및 F1, document-fields-exact, llm_median_latency_ms, 토큰 수. 모든 regex/LLM 필드 F1 수치는 이 파일의 행에서 추적됩니다.
  3. ImageToTableai/benchmark-ocr 저장소. 결과 CSV, 비식별화된 실행 매니페스트, 고정된 프로토콜 및 재현을 위한 데이터셋 샘플 목록을 호스팅하는 공개 저장소.
  4. results/manifests/ (GitHub). 환경 지문, 모델 버전, 비용 메타데이터 및 아티팩트 해시를 포함한 각 게시된 실행에 대한 비식별화된 manifest.json.
  5. Huang et al., "ICDAR2019 Competition on Scanned Receipt OCR and Information Extraction" (2019). SROIE 2019 데이터셋 정의, 작업 구조 및 라이선스(CC-BY-4.0).
  6. Park et al., "CORD: A Consolidated Receipt Dataset for Post-OCR Parsing" (2020). CORD v2 데이터셋 정의, 중첩 필드 스키마 및 라이선스(CC-BY-4.0).

한계점

  • 문서 범위: 영수증만 대상 (SROIE + CORD). 이 벤치마크는 레이아웃/테이블/수식 처리, 긴 문서, 또는 비영수증 필드에 대해서는 측정하지 않습니다 — 문서 파싱 VLM이 가장 큰 장점을 주장하는 문서 유형은 여기서 측정되지 않습니다. 이 페이지를 근거로 "기존 OCR이 모든 곳에서 더 낫다"는 결론을 내리지 마세요.
  • 표본 크기: 영어 361건 + 인도네시아어 100건의 영수증. 필드 F1과 CER은 말뭉치에 민감합니다. 몇 백분의 일 수준의 한 자리 차이는 노이즈로 간주해야지, 엔지니어링적 사실로 취급해서는 안 됩니다.
  • 단일 GPU 등급: 모든 GPU 수치는 시간당 $0.76인 RTX 4090 1대로 측정되었습니다. 다른 GPU, 다중 GPU 서버링 또는 배치 스케줄링은 레이턴시, 처리량 및 비용을 변경할 수 있습니다.
  • CPU/GPU 비대칭성: Tesseract(CPU)는 GPU 가속 엔진과 비교됩니다. 레이턴시/시간은 CPU 하드웨어를 반영하는 반면, 비용 이점은 GPU 비용이 전혀 발생하지 않는 것을 반영합니다. 이는 모든 관련 테이블에 표시되어 있지만, 이 비대칭성은 비교에 내재된 것입니다.
  • LLM 후처리기는 단일 모델: 모든 LLM 필드 행은 deepseek-v4-flash를 사용합니다. 다른 LLM을 사용하면 절대 F1이 달라질 수 있으며, 수렴 순위는 경계에서 변동될 수 있습니다. LLM 레이턴시는 API로 인해 발생하며 OCR 엔진 자체 레이턴시의 일부가 아닙니다.
  • 비용 타임스탬프: 시간당 $0.76 GPU 가격은 2026년 8월 실행 매니페스트에 기록되었습니다. GPU 스팟/온디맨드 가격은 변동됩니다. 예산 편성 전 현재 요금으로 비용을 다시 산출하세요.
  • CORD CER는 품질 지표가 아닙니다: CORD 기준 데이터는 주석 구조를 포함하고 있으며, 엔진들은 인도네시아어로 훈련되지 않았습니다. CER은 언어 불일치 + 기준 데이터 왜곡을 반영하며, 모델별 읽기 품질을 반영하지 않습니다. CORD 행은 의도적으로 어떤 SROIE 순위에도 포함되지 않았습니다.
  • Regex 튜닝: regex 패턴 세트는 데이터셋당 한 번 작성되었습니다. 벤더별로 심하게 튜닝된 패턴 라이브러리는 자체 형식에서 더 높은 점수를 받을 수 있습니다 — LLM이 제거하는 유지보수 비용을 감수하면서.
  • 클라우드/API 모델 미포함: AWS Textract, Google Document AI, Azure AI Document Intelligence 및 호스팅 VLM API는 포함되지 않습니다. 이들의 레이턴시 및 가격 모델은 여기서 측정된 로컬 엔진과 근본적으로 다릅니다.
  • 버전 고정: 결과는 위에 나열된 2026년 8월 모델 버전에 해당합니다. 어떤 엔진의 새 릴리스도 결과를 변경할 수 있으며, p95 스파이크가 큰 두 측정(PaddleOCR, Docling)의 p50 레이턴시는 이번 실행의 배치 패턴 하에서 프리필/첫 페이지 효과를 반영합니다.

관련 참고 자료: Regex vs LLM 필드 추출 · 필드 수준 vs 문자 수준 정확도 · 영수증 OCR 정확도 · 문서 유형별 OCR 정확도

관련 읽을거리: AI OCR vs 기존 OCR 정확도 · AI 이미지 데이터 추출 vs 기존 OCR · AI 문서 추출 가격 (2026)

📮 contact email: [email protected]