영수증 처리에서 docTR vs Docling
단일 패스 속도 vs 문서 파이프라인 (2026)
최종 검토: 2026-08-18 · 실행 티어: 공식 · 자체 주도 헤드투헤드 벤치마크 · 2개 엔진 × 2개 영수증 데이터셋
이 페이지에서 다루지 않는 내용: 영수증 이외의 모든 문서 유형 — 표, 양식, 청구서, 계약서, 장문 문서는 제외됩니다. Docling의 주요 강점은 여기서 범위 밖이며, 반증된 것이 아닙니다 — 이 벤치마크는 해당 기능을 측정하도록 설계되지 않았습니다. 클라우드/API OCR 서비스, 기타 오픈소스 엔진, 파인튜닝된 모델, 그리고 벤치마크가 점수를 매기지 않는 Docling의 네이티브 구조화 출력은 범위 밖입니다. 전체 8개 엔진 종합 비교는 OCR vs VLM 비교에서 확인하세요.
범위 명시: 이 페이지의 모든 수치는 영수증에만 적용됩니다 — SROIE 2019 영어 영수증 및 CORD v2 인도네시아어 영수증. 하드웨어 티어 1개, LLM 후처리기 1개, 고정 모델 버전(docTR v1.0.1, Docling 2.119.0). 이 결과를 청구서, 표, 복잡한 레이아웃에 확대 적용하지 마세요 — 이 벤치마크는 영수증 OCR 및 영수증 필드 추출만 측정하며, 구조화 문서에 대한 Docling의 파이프라인 역량은 정확히 측정하지 않는 부분입니다. 모든 수치는 벤치마크의 results/summary_metrics.csv 및 results/field_method_comparison.csv에서 비롯되었으며, 공개 GitHub 저장소에 미러링되어 행 단위로 인용됩니다.
단순 영수증에 부과되는 아키텍처 비용: Docling의 단계적 파이프라인은 단일 페이지 영어 영수증에서 얻는 이점이 거의 없으며, 수치가 이를 보여줍니다. 동일한 361개 SROIE 영수증, 동일한 RTX 4090, 동일한 프로토콜에서 Docling의 원시 CER은 docTR보다 3.0배 나쁘고(0.5909 vs 0.1971), p50에서 6.7배 느리게 실행되며(732.0 ms vs 108.7 ms), 1,000페이지당 8.3배 더 많은 비용이 듭니다($0.3978 vs $0.0479). 이 결과를 정직하게 만드는 역전: 원시 텍스트가 훨씬 나쁨에도 불구하고, SROIE에서 Docling의 정규식 필드 F1(0.2237)은 docTR(0.0766)을 2.9배 능가합니다 — 그런 다음 LLM 후처리기가 순위를 다시 docTR로 뒤집습니다(0.6171 vs 0.5685).
한 쌍의 숫자로 보는 트레이드오프: docTR은 영수증 페이지를 p50 108.7 ms로 읽고 1,000페이지당 $0.048이 듭니다. Docling은 p50 732.0 ms로 읽고 1,000페이지당 $0.398이 듭니다 — 동일한 영수증, 동일한 테스트 분할, 동일한 GPU. 어느 엔진도 "승리"하지 않습니다. 이 페이지는 일반 영수증에서 파이프라인 오버헤드가 그 비용만큼 가치가 있는지를 측정합니다. 여기서는 그렇지 않습니다 — 그리고 Docling의 오버헤드가 실제로 제공하는 것은 이 벤치마크에서 의도적으로 측정되지 않았으며, 반증된 것도 아닙니다.
Docling이란 무엇이고 아닌 것: 단일 패스 OCR 대 파싱 파이프라인
두 엔진은 근본적인 아키텍처 분기점의 양쪽에 서 있으며, 그 분기점 — 코드 차이나 튜닝 차이가 아니라 — 이 페이지의 전체 이야기입니다. docTR은 단일 패스 신경망 OCR 엔진입니다. 감지 단계가 텍스트 경계 상자를 찾고 인식 단계가 그 안의 문자를 전사하며, 하나의 OCR 예측기로 구성되어 앞에서 뒤로의 순방향 패스가 원시 텍스트 줄을 생성합니다. 레이아웃 모델도, 테이블 파서도, 읽기 순서 재구성도 없습니다 — 인쇄된 것이 그대로 출력되며, 인식기가 읽는 순서대로 나옵니다. Docling은 OCR 엔진도 비전-언어 모델도 아닌 문서 파싱 파이프라인입니다. 자체 기술 보고서에 따르면, 페이지마다 일련의 모델을 단계적으로 실행합니다 — 레이아웃 분석, 테이블 감지, 읽기 순서 추론 — 이를 집계하고 텍스트를 출력하기 전에 중간 문서 객체를 조립합니다. 그래서 그 출력에는 docTR의 텍스트 줄에는 없는 구조가 포함됩니다.
이 메커니즘이 벤치마크에 중요한 이유: Docling 체인의 각 단계 모델은 레이아웃 구조를 활용하기 위해 존재합니다 — 파싱할 테이블, 2단 양식, 어휘 순서가 아닌 읽기 경로. 일반 영어 영수증에는 그런 것이 거의 없습니다: 단일 열, 몇 개의 영역, 대체로 예측 가능한 위에서 아래로의 경로, 테이블 없음. 단계적 메커니즘은 여전히 모든 페이지에서 실행됩니다 — 그래서 더 느리고 비용이 많이 드는 것입니다 — 그러나 활용할 구조가 없으면 오버헤드가 더 나은 텍스트로 전환될 수 없습니다. 이 페이지는 바로 그 비용을 분리하여 그것이 무엇을 사고 — 사지 못하는지 — 보여줍니다.
문자 정확도: 원시 텍스트에 부과되는 파이프라인 비용
SROIE 2019에서 원시 텍스트 격차는 크지 않습니다: CER 0.1971 (docTR) vs 0.5909 (Docling) — 3.0× 배 차이 — 그리고 WER 0.3199 vs 0.7596. 문자 오류율(CER)은 삽입, 삭제, 치환을 정답 문자 수로 나눈 값입니다 — CER 0.197은 100자당 약 19.7자의 오인식을 의미합니다; 단어 오류율(WER)은 동일한 편집 거리 방식을 단어 단위로 적용합니다. Docling의 0.5909는 기본 실행에서 8개 엔진 중 7위로, Unlimited-OCR보다만 앞섰습니다 — docTR-vs-Surya2 형제 비교에서 docTR이 동일한 벤치마크에서 최고의 인식기 두 개 중 하나로 기록되었으며, 이 페이지는 동일한 엔진이 텍스트 정확도 표의 반대편에 있는 이유가 파이프라인 때문이지 인식기 계열이 약해서가 아님을 보여줍니다.
출처: summary_metrics.csv — cer 및 wer 열, sroie_2019 행. docTR cer 0.19707 / wer 0.31990; Docling cer 0.59092 / wer 0.75961. 낮을수록 좋습니다. 엔진당 361개 샘플; 두 엔진 모두 error_rate 0.0.
| 지표 (SROIE 2019, n=361) | docTR | Docling | 출처 |
|---|---|---|---|
| 문자 오류율 (CER) | 0.1971 | 0.5909 | summary_metrics.csv · cer, doctr/sroie_2019 및 docling/sroie_2019 행 |
| 단어 오류율 (WER) | 0.3199 | 0.7596 | summary_metrics.csv · wer, 동일 행 |
| 오류율 | 0.0 | 0.0 | summary_metrics.csv · error_rate, 동일 행 |
표: summary_metrics.csv — cer / wer / error_rate 열, sroie_2019 행. 정확한 값: docTR cer 0.19707 / wer 0.31990; Docling cer 0.59092 / wer 0.75961. Docling의 SROIE CER은 기본 실행의 8개 엔진 중 두 번째로 나쁜 값입니다 — 원시 문자 정확도는 파이프라인 비용이 가장 먼저 드러나는 지점입니다.
역전: 정규식 필드 추출이 결과를 뒤집다
두 엔진의 텍스트를 동일한 고정 정규식 패턴으로 SROIE 영수증의 네 가지 필드에 대해 벤치마크하면 — 전통적인 OCR + 규칙 기반 핵심 정보 추출(KIE) 방식 — 순위가 뒤집힙니다: Docling은 0.2237 필드 F1을 기록해 docTR의 0.0766보다 2.9배 우위를 보입니다. 이는 벤치마크의 postprocessed_sroie_receipt_regex_* 지표입니다: 각 엔진의 OCR 텍스트에 적용된 고정 패턴 — 두 엔진 모두 네이티브 구조화 출력이 아닌 후처리 결과이며, Docling의 네이티브 문서 모델은 여기서 평가되지 않습니다.
필드 값 F1은 추출된 필드 값의 정밀도와 재현율의 조화 평균으로, 정답과 대조합니다 — 1.0은 모든 영수증 필드가 완벽하게 복구되었음을, 0은 전혀 복구되지 않았음을 의미합니다. 역전의 메커니즘은 CER 격차를 유발한 것과 동일한 아키텍처 차이가 반대 방향으로 작용한 것입니다: Docling의 문서 모델은 텍스트를 읽기 순서로 재배열하고 레이블을 값과 연결하므로, 출력 텍스트가 고정 패턴이 기대하는 형태에 더 가깝습니다; docTR의 깨끗하지만 원시적인 라인 텍스트 — CER 기준으로는 정확하지만 원래 대소문자와 구분 기호 노이즈가 있고 레이블 프레임이 없는 — 는 패턴을 무력화합니다. docTR의 정규식 필드 F1 0.0766은 기본 실행에서 8개 엔진 중 최악이며, 최고 수준의 CER에도 불구하고 그렇습니다; Docling의 0.2237은 6위입니다. 형제 비교가 정확도 사다리 상단에서 문서화한 동일한 분리(docTR vs Surya2)가 여기 하단에서도 반복됩니다: 텍스트 정확도는 필드 정확도가 아닙니다.
출처: field_method_comparison.csv — regex_field_value_f1 / llm_field_value_f1 열, sroie_2019 행. LLM 후처리기: deepseek-v4-flash. 엔진당 361개 샘플(llm_ok_count).
| 정규식 후처리 (SROIE 2019, n=361) | docTR | Docling | 출처 |
|---|---|---|---|
| 필드 값 F1 | 0.0766 | 0.2237 | field_method_comparison.csv · regex_field_value_f1, doctr/sroie_2019 및 docling/sroie_2019 행 |
| 필드 값 정확도 | 0.0623 | 0.2043 | field_method_comparison.csv · regex_field_value_accuracy, 동일 행 |
| 문서 필드 완전 일치 | 0.0000 | 0.0000 | field_method_comparison.csv · regex_document_fields_exact, 동일 행 |
표: field_method_comparison.csv — 정규식 열, sroie_2019 행. 이는 postprocessed_sroie_receipt_regex_* 지표입니다: 각 엔진의 OCR 텍스트에 적용된 고정 패턴으로, 기본 구조화 추출이 아닙니다. 정규식을 통해서는 어떤 엔진도 단일 SROIE 영수증에서 네 필드를 모두 정확히 맞추지 못했습니다. docTR의 정규식 필드 F1 0.0766은 기본 실행에서 8개 엔진 중 가장 낮은 값입니다.
LLM 후처리가 순위를 부분적으로 회복시킵니다
두 엔진의 텍스트를 구조화 추출 프롬프트와 함께 LLM 후처리기에 넣으면 docTR이 다시 선두를 차지합니다: 필드 F1 0.6171 대 0.5685 — 0.049포인트 차이로, 원시 CER 격차에 비하면 작지만 사라지지는 않습니다. 더 깨끗한 기본 텍스트는 더 많은 복구 가능한 필드 값을 드러냅니다; LLM은 Docling의 레이아웃 결함을 부분적으로 보완하지만 완전히 지우지는 못합니다.
이는 8개 엔진 전체 벤치마크에서 보이는 것과 동일한 수렴 구간입니다 — LLM 후처리는 문자 모양을 매칭하는 대신 의미를 이해하기 때문에 건강한 엔진들을 끌어당깁니다 — 그리고 잔여 격차가 중요합니다: docTR의 0.6171은 8개 엔진 중 최고 LLM 필드 F1인 반면, Docling의 0.5685는 여섯 번째입니다. 더 엄격한 기준 — 네 필드가 모두 정확히 일치하는 문서 — 는 두 엔진을 2.7배로 갈라놓습니다: docTR 0.1496 대 Docling 0.0554. 이 지렛대에는 두 가지 비용이 따릅니다: LLM 호출은 OCR 시간에 더해 문서당 중앙 지연 시간 약 2.0–2.4초를 추가하며, 엔진이 근본적으로 읽지 못한 텍스트는 구할 수 없습니다.
| LLM 후처리 (SROIE 2019, n=361) | docTR | Docling | 출처 |
|---|---|---|---|
| 필드 값 F1 (LLM) | 0.6171 | 0.5685 | field_method_comparison.csv · llm_field_value_f1, doctr/sroie_2019 및 docling/sroie_2019 행 |
| 필드 값 정확도 (LLM) | 0.6170 | 0.5665 | field_method_comparison.csv · llm_field_value_accuracy, 동일 행 |
| 문서 필드 완전 일치 (LLM) | 0.1496 | 0.0554 | field_method_comparison.csv · llm_document_fields_exact, 동일 행 |
| LLM 후처리 중앙값 지연 시간 (ms) | 1,996.3 | 2,365.1 | field_method_comparison.csv · llm_median_latency_ms, 동일 행 |
표: field_method_comparison.csv — llm_* 열, sroie_2019 행. LLM 모델: temperature 0의 deepseek-v4-flash. LLM 지연 시간은 API에서 발생하며 엔진 지연 시간과는 별개입니다 (summary_metrics.csv latency_p50_ms). 두 행 모두 llm_ok_count 361로 완료되었습니다.
운영 범위: 지연 시간 6.7배, 처리량 7.9배, 비용 8.3배
파이프라인 부담은 처리량 계획이 중요한 곳에서 가장 큽니다. 동일한 RTX 4090에서 동일한 기록된 $0.76/hr 요금으로, docTR은 449.3 pages/min의 처리량과 페이지당 108.7 ms p50의 지연 시간으로 1,000페이지당 $0.048의 비용을 유지합니다. Docling은 56.7 pages/min의 처리량과 732.0 ms p50의 지연 시간으로 1,000페이지당 $0.398의 비용이 듭니다. 이는 6.7배의 지연 시간 격차, 7.9배의 처리량 격차, 8.3배의 비용 격차입니다. 꼬리 부분은 파이프라인에서 비례적으로 더 나쁩니다. p95 281.4 ms 대 3,239.8 ms로 11.5배의 차이가 나는데, 이는 Docling의 단계별 모델이 페이지마다 최악의 타이밍을 누적하기 때문입니다.
비용은 모델 초기화를 포함한 실제 실행 시간(wall-clock runtime)에 RunPod RTX 4090 요금을 곱해 계산합니다. 이는 GPU 시간에 대해 실제로 지불하게 될 가격입니다. 처리량은 동일한 초기화를 포함한 분당 실제 페이지 수입니다. 지연 시간 p50/p95는 워밍 후 점수 측정(warm-then-scored) 방식으로 측정된 정상 상태의 페이지당 추론 시간입니다. docTR은 SROIE에서 실행된 8개 엔진 중 가장 빠르고 가장 저렴합니다. Docling은 56.7 pages/min 및 1,000페이지당 $0.398로 운영 범위 테이블의 하위 절반에 위치합니다.
출처: summary_metrics.csv — latency_p50_ms / latency_p95_ms 열, sroie_2019 행. docTR p50 108.72 / p95 281.38; Docling p50 732.00 / p95 3239.79. 정상 상태 지연 시간.
출처: summary_metrics.csv — cost_per_1000_pages 열, sroie_2019 행. docTR 0.0479, Docling 0.3978. 비용 = 실제 실행 시간 × $0.76/hr, 실행 매니페스트에 타임스탬프가 기록된 가격. docTR은 기본 실행에서 8개 엔진 중 가장 저렴합니다.
| 운영 범위 (SROIE 2019, n=361) | docTR | Docling | 출처 |
|---|---|---|---|
| 지연 시간 p50 (ms) | 108.7 | 732.0 | summary_metrics.csv · latency_p50_ms, doctr/sroie_2019 및 docling/sroie_2019 행 |
| 지연 시간 p95 (ms) | 281.4 | 3,239.8 | summary_metrics.csv · latency_p95_ms, 동일 행 |
| 분당 페이지 수 | 449.3 | 56.7 | summary_metrics.csv · pages_per_minute, 동일 행 |
| 1,000페이지당 비용 | $0.048 | $0.398 | summary_metrics.csv · cost_per_1000_pages, 동일 행 |
표: summary_metrics.csv — latency_p50_ms / latency_p95_ms / pages_per_minute / cost_per_1000_pages, sroie_2019 행. 두 엔진 모두 GPU; 비용에는 모델 초기화 포함. 정확한 값: docTR p50 108.72 / p95 281.38 / 449.31 pg/min / $0.0479; Docling p50 732.00 / p95 3239.79 / 56.66 pg/min / $0.3978.
CORD: 둘 다 붕괴, docTR의 LLM 필드 복구가 여전히 선두
두 엔진 모두 인도네시아 영수증을 주로 학습하지 않았으므로 CORD v2는 교차 언어 스트레스 테스트 역할을 하며, 원시 CER 기준으로 둘 다 붕괴합니다: 0.9101(docTR) 및 0.9219(Docling), 언어 불일치로 인한 무승부입니다. 벤치마크 프로토콜에 따라 CORD 수치는 SROIE 비교에서 격리되어 유지되며, 어떤 순위에도 병합되지 않습니다. CORD의 정답 텍스트에 주석 구조가 포함되어 있어 실제 언어 불일치에 더해 모든 엔진의 원시 CER을 부풀리기 때문입니다.
필드 지표에서 Docling의 유일하게 유지되던 장점은 거의 사라집니다: 정규식 패턴을 통해 두 엔진 모두 CORD 필드를 거의 복구하지 못합니다. LLM 후처리기는 양쪽의 언어 충격을 흡수하지만 docTR이 계속 앞서 있습니다: 필드 F1 0.5500 대 0.4695. CORD는 언어 견고성 맥락을 위해 여기에 인용되었으며, 의도적으로 SROIE 수치와 단일 리더보드에 통합되지 않습니다.
| CORD v2, 인도네시아 영수증(n=100) | docTR | Docling | 출처 |
|---|---|---|---|
| 문자 오류율(CER) | 0.9101 | 0.9219 | summary_metrics.csv · cer, doctr/cord_v2 및 docling/cord_v2 행 |
| 필드 값 F1 | 0.0000 | 0.0612 | field_method_comparison.csv · regex_field_value_f1, 동일 행 |
| 필드 값 F1(LLM) | 0.5500 | 0.4695 | field_method_comparison.csv · llm_field_value_f1, 동일 행 |
| 1,000페이지당 비용 | $0.094 | $0.538 | summary_metrics.csv · cost_per_1000_pages, 동일 행 |
| 분당 페이지 수 | 500.4 | 123.2 | summary_metrics.csv · pages_per_minute, 동일 행 |
표: summary_metrics.csv (cer / cost_per_1000_pages / pages_per_minute) 및 field_method_comparison.csv (field F1), cord_v2 행. CORD 수치를 SROIE 순위에 병합하지 마세요: CORD CER은 실제 언어 불일치와 정답 데이터의 주석 구조 과대평가가 결합된 것이며, 정규식 패턴은 영어 형식에 맞춰 작성되었습니다. docTR의 CORD 정규식 필드 F1 0.0000은 CSV에 기록된 실제 0값이며, 누락된 값이 아닙니다.
언제 누가 유리한가: 요약 비교표
“더 낫다”는 워크로드에 따라 달라지며, 이 대결은 기준을 명확히 나눕니다: 일반 영어 영수증에서는 모든 속도/비용 축과 원시 텍스트 축에서 docTR이 유리하고, 기본 정규식 필드 추출에서는 Docling이 유리하며, LLM 후처리기를 적용하면 docTR이 0.049포인트 차이로 다시 앞섭니다. 그리고 Docling이 존재하는 이유인 레이아웃, 표, 읽기 순서, 긴 문서는 이번 측정 범위에 포함되지 않았으며, 반증된 것도 아닙니다.
자주 묻는 질문
Docling이 영수증에서 docTR보다 더 정확한가요?
아니요 — 원시 문자 정확도 기준으로 docling은 3.0× 더 나쁩니다: SROIE CER 0.5909 vs 0.1971, WER 0.7596 vs 0.3199. Docling이 “이기는” 측정 축은 단 하나뿐입니다: 기본 제공 정규식 필드 추출 — 그리고 LLM 후처리기를 적용하면 그마저도 docTR로 역전됩니다 (0.6171 vs 0.5685).
원시 텍스트가 훨씬 나쁜데 왜 Docling이 정규식으로 필드를 더 잘 추출하나요?
두 지표가 서로 다른 것을 평가하고, Docling의 출력 형태가 마침 패턴에 맞기 때문입니다. Docling의 문서 파이프라인은 텍스트를 읽기 순서로 재배열하고 라벨을 값과 연결하므로, 출력 텍스트가 고정 정규식 패턴이 기대하는 구조에 더 가깝습니다. docTR은 CER 기준으로 정확하지만 패턴을 충족시키지 못하는 깨끗한 원시 줄 텍스트를 출력합니다. 이는 postprocessed_sroie_receipt_regex_* 점수 — 고정 패턴에 통과시킨 OCR 텍스트 — 이며, 네이티브 구조화 출력이 아닙니다. 텍스트 정확도 ≠ 필드 정확도의 이러한 분리는 이 벤치마크 전반에 걸쳐 나타납니다.
Docling이 페이지당 훨씬 느리고 비용이 더 많이 드는 이유는 무엇인가요?
활용할 구조가 없는 단순 영수증 페이지에서도 모든 페이지에 대해 단계적 문서 파이프라인 — 레이아웃 분석, 표 감지, 읽기 순서 재구성, 중간 문서 모델 — 을 실행하기 때문입니다. SROIE에서 이 비용은 p50 기준 6.7× (108.7 vs 732.0 ms), p95 기준 11.5×, 처리량 7.9× 감소 (449.3 vs 56.7 pages/min), 1,000페이지당 비용 8.3× 증가 ($0.048 vs $0.398)로 나타납니다 — 동일 GPU, 동일 프로토콜.
LLM 후처리기가 docTR과 Docling 간의 격차를 좁히나요?
대체로 그렇지만, 완전히는 아닙니다: SROIE에서 LLM 후처리된 필드 F1은 docTR 0.6171 대 Docling 0.5685로, docTR이 0.049포인트 앞섰습니다. 이는 LLM이 Docling의 레이아웃 결함을 부분적으로 보완한 상태에서도 유지되는 결과입니다. 수렴 비용은 문서당 약 2.0~2.4초의 추가 중앙 LLM 지연 시간입니다.
이 벤치마크가 Docling이 나쁘다는 뜻인가요?
아니요 — Docling의 강점이 여기서 측정되지 않았을 뿐입니다. Docling은 문서 파싱 파이프라인으로, 그 가치 제안은 영수증 전용 벤치마크로는 테스트할 수 없는 부분입니다. 이 페이지가 보여주는 것은 더 좁은 범위입니다: 단순한 단일 페이지 영수증에서는 파이프라인 오버헤드가 비용을 정당화하지 못하며, 측정된 유일한 장점은 LLM 후처리기로 상쇄됩니다. 정직한 해석은 평결이 아닌 범위에 관한 것입니다.
두 엔진 모두 CORD 영수증에서 왜 이렇게 낮은 점수를 받나요?
프로토콜이 SROIE 순위와 분리해 두는 두 가지 복합 원인이 있습니다: 실제 언어 불일치와 CORD 정답 텍스트 내부의 주석 구조 팽창입니다 — CER은 0.9101(docTR) 및 0.9219(Docling)입니다. LLM 후처리기 하에서 docTR의 필드 F1은 0.5500을 유지하는 반면 Docling은 0.4695입니다 — SROIE 순서가 압축된 형태입니다. CORD 행은 인용될 뿐 결합 순위에 포함되지 않습니다.
영수증 파이프라인은 docTR과 Docling 중 어떤 엔진을 선택해야 하나요?
대량 영수증 텍스트와 측정 비용이 중요하다면 docTR의 성능이 결정적입니다: 108.7 ms p50, 449.3 pages/min, 1,000페이지당 $0.048 — 기본 8개 엔진 실행 중 가장 빠르고 저렴한 엔진입니다. 파이프라인이 별도의 후처리기 없이 바로 사용 가능한 구조화 텍스트를 소비한다면, Docling의 정규식 필드 우위(0.2237 vs 0.0766)가 실질적인 초기 이점입니다. LLM 후처리가 설계에 포함되어 있다면 docTR이 0.049만큼 앞서 있고, 비용도 더 저렴합니다. 워크로드가 레이아웃이 복잡한 문서 — 표, 양식, 긴 보고서 — 라면 이 벤치마크는 의사 결정에 적합한 근거가 아닙니다. 영수증만 측정하기 때문입니다.
이 페이지의 수치는 어디서 왔나요?
모든 수치는 자사 벤치마크의 공개 CSV 행입니다 — results/summary_metrics.csv 및 results/field_method_comparison.csv — ImageToTableai/benchmark-ocr에 호스팅되어 있으며, 실행 환경 식별을 위해 실행별로 수정된 manifest.json 하나가 포함되어 있습니다. 데이터셋 정의는 아래에 인용된 SROIE 2019 및 CORD 논문에서 가져왔습니다.
방법론 및 출처
프로토콜
이 페이지는 독립적이고 재현 가능한 벤치마크 실행의 1:1 비교 결과를 보고합니다 — 제3자 주장에 대한 조사도, 벤더 비교 페이지도 아닙니다. 고정 테스트 분할만 사용했습니다: SROIE 2019 테스트 및 CORD v2 테스트; 학습 분할은 평가하지 않았습니다. 두 엔진 모두 동일한 이미지, 동일한 정답, 동일한 측정 프로토콜을 사용했습니다. 두 실행 모두 두 데이터셋에서 error_rate 0.0으로 완료되었습니다. 기본 실행에는 총 8개 엔진이 포함되어 있으며, 이 페이지는 명시된 두 엔진만 비교하고, 다른 엔진은 순위 맥락으로만 인용합니다. 전체 8개 엔진 결과는 Traditional OCR vs Document Parsing VLMs에서 별도로 공개됩니다.
런타임 환경
- 하드웨어: 두 엔진 모두 동일한 NVIDIA RTX 4090(24GB)에서 실행되었습니다. GPU 비용은 RunPod 주문형 요금인 $0.76/시간으로 계산되었으며, 가격은 각 실행의 편집된 매니페스트에 타임스탬프로 기록되어 있습니다.
- 엔진: 기본 설정 그대로 사용했으며, 파인튜닝은 없었습니다. 고정된 버전: docTR v1.0.1 및 Docling 2.119.0 — 공개 저장소 모델 테이블(README.md) 및 실행 매니페스트 기준입니다.
- LLM 후처리기: 결정적 출력을 위해 temperature 0으로 API를 통해 deepseek-v4-flash를 사용했습니다. 두 엔진의 모든 LLM 필드 행에 사용된 단일 모델입니다.
- 비용 기준: 벽시계 실행 시간 × $0.76/시간이며, 모델 초기화를 포함합니다 — 일괄 처리는 페이지당 비용을 낮춥니다.
- 필드 후처리: SROIE 정규식 필드 지표는
postprocessed_sroie_receipt_regex_*입니다 — 고정된 패턴 세트로 OCR 텍스트에서 추출된 필드입니다. 이는 두 모델의 네이티브 구조화 출력이 아닌 OCR + 다운스트림 추출을 측정합니다. LLM_* 열은 OCR 텍스트 + LLM 추출을 측정합니다. 두 파이프라인은 절대 혼합되지 않으며, Docling의 네이티브 문서 모델은 이 벤치마크에서 점수를 매기지 않습니다.
지표 정의
- CER: OCR 텍스트와 정답 간의 편집 거리를 정답 문자 수로 나눈 값입니다. 낮을수록 좋습니다.
- WER: 단어 단위로 수행되는 동일한 편집 거리 계산입니다.
- 필드 값 F1: OCR 텍스트에 고정 정규식 패턴을 사용하여 추출된 필드 값에 대한 정밀도/재현율 조화 평균입니다. 열: regex_field_value_f1. 점수 0은 복구된 필드 값이 없음을 의미합니다.
- 필드 값 F1(LLM): LLM 후처리기 출력에 대한 동일한 지표입니다. 열: llm_field_value_f1. 두 파이프라인은 다르며 절대 혼합되지 않습니다.
- 문서 필드 정확 일치: 모든 대상 필드가 정확히 일치한 문서의 비율 — 필드별 F1보다 훨씬 엄격한 기준입니다.
- 지연 시간 p50/p95 및 페이지/분: 정상 상태의 페이지당 추론 시간 및 모델 초기화를 포함한 벽시계 처리량입니다. 서로 다른 클록을 측정합니다.
- 1,000페이지당 비용: 기록된 $0.76/시간 요율로 1,000페이지에 대해 청구된 GPU 시간이며, 모델 초기화를 포함합니다.
출처 목록
- 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, 지연 시간, 비용, 처리량 수치는 doctr 및 docling 행에서 비롯됩니다.
- 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 수치는 여기의 doctr 및 docling 행에서 비롯됩니다.
- ImageToTableai/benchmark-ocr 저장소. 결과 CSV, 편집된 실행 매니페스트, 고정 프로토콜, 재현을 위한 데이터셋 샘플 목록을 호스팅하는 공개 저장소입니다.
- results/manifests/ (GitHub). 게시된 각 실행에 대한 편집된 manifest.json 1개 — 모델 버전, GPU/드라이버, torch/CUDA/Python 버전, 가격 타임스탬프가 포함된 비용 메타데이터, 아티팩트 해시 포함.
- Huang et al., "ICDAR2019 Competition on Scanned Receipt OCR and Information Extraction" (2019). SROIE 2019 데이터셋 정의, 작업 구조, 라이선스(CC-BY-4.0).
- Park et al., "CORD: A Consolidated Receipt Dataset for Post-OCR Parsing" (2020). CORD v2 데이터셋 정의, 중첩 필드 스키마, 라이선스(CC-BY-4.0).
- Auer et al., "Docling Technical Report" (2024). 아키텍처 배경 정보만 해당 — Docling의 단계별 파이프라인을 설명합니다. 이 페이지의 벤치마크 수치는 여기서 가져오지 않았습니다.
한계
- 문서 범위 — 영수증만 해당: SROIE + CORD. 여기에는 Docling의 가치 제안을 정의하는 레이아웃/테이블/읽기 순서/긴 문서 처리 능력에 대한 측정이 없습니다. 이러한 기능은 범위 밖이며, 반증된 것이 아닙니다. 이 페이지를 사용하여 "Docling은 나쁘다"라고 결론 내리지 마십시오. 결론은 다음과 같습니다: 단순한 단일 페이지 영수증에서는 파이프라인 오버헤드가 그 가치를 입증하지 못합니다.
- 표본 크기: 영어 361건 + 인도네시아어 100건. 필드 F1 및 CER은 말뭉치에 민감합니다. 여기에 문서화된 격차는 노이즈 대역을 훨씬 넘어서지만, 1% 단위의 차이는 엔지니어링 사실이 아닌 노이즈로 취급해야 합니다.
- 단일 GPU 등급 및 단일 가격: 모든 수치는 실행 매니페스트에 타임스탬프가 기록된 2026년 8월 가격인 시간당 $0.76의 RTX 4090 하나에서 나온 것입니다. 다른 GPU, 다중 GPU 서빙, 배치 스케줄링 또는 가격 변경은 지연 시간, 처리량 및 비용을 변화시킵니다 — 예산을 세우기 전에 현재 요율로 비용을 다시 산출하십시오.
- 단일 LLM 후처리기: 모든 LLM 행은 온도 0에서 deepseek-v4-flash를 사용합니다. 다른 LLM은 절대 필드 F1을 변화시킵니다. 0.049포인트의 docTR 우위는 경계에서 움직일 수 있습니다. LLM 지연 시간은 API에서 발생하며 두 엔진 자체의 지연 시간에 포함되지 않습니다.
- 정규식 튜닝: 패턴 세트는 데이터세트당 한 번 작성되었습니다. 형식별로 집중 튜닝된 패턴 라이브러리는 자체 레이아웃에서 더 높은 점수를 얻을 수 있습니다 — LLM이 제거하는 유지 관리 비용이 들지만, Docling의 2.9배 정규식 우위는 이 단일 고정 패턴 세트에 대해 측정된 것입니다.
- Docling의 기본 출력은 점수가 매겨지지 않음: Docling은 구조화된 문서 모델을 출력하지만, 벤치마크는 기본 구조화된 출력이 아닌 텍스트 + 후처리기에 점수를 매깁니다. Docling의 기본 필드에 점수를 매기는 벤치마크 변형은 다른 실험이 될 것입니다. 이 페이지는 이를 시도하지 않습니다.
- CORD CER은 모델별 품질 판독이 아님: CORD ground truth에는 주석 구조가 포함되어 있으며 두 엔진 모두 주로 인도네시아어로 훈련되지 않았습니다. CORD CER은 언어 불일치 + ground truth 팽창을 반영합니다. CORD 행은 프레이밍과 함께 인용되며 어떤 SROIE 순위에도 병합되지 않습니다.
- 버전 고정: 결과는 docTR v1.0.1 및 Docling 2.119.0에 적용됩니다. 두 엔진의 최신 릴리스는 이 페이지의 모든 수치를 변경할 수 있습니다.
관련 참고 자료: docTR vs Surya2 영수증 벤치마크 · PaddleOCR vs EasyOCR 영수증 벤치마크 · 전통적 OCR vs 문서 파싱 VLM · 규칙 기반 추출 vs LLM 추출 · 필드 수준 vs 문자 수준 정확도
관련 자료: AI와 전통적 OCR 간의 정확도 격차 · 전통적 OCR과 비교한 AI 이미지 추출 · AI 문서 추출 가격 (2026)