docTR vs Surya2: 영수증 OCR맞대결 벤치마크 (2026)

최종 검토: 2026-08-18 · 실행 티어: 공식 · 자체 맞대결 벤치마크 · 엔진 2개 × 영수증 데이터셋 2개

이 페이지에서 다루는 내용: 기본 8개 엔진 벤치마크에서 최고의 텍스트 인식기 두 가지인 docTR과 Surya2 간의 재현 가능한 자체 맞대결 — 영수증 데이터셋 2개: SROIE 2019 영어 영수증 및 CORD v2 인도네시아어 영수증을 대상으로 합니다. 엔진별 비교 지표: 문자 오류율(CER), 단어 오류율(WER), 두 가지 후처리 방식에서의 필드 값 F1, p50/p95 지연 시간, 분당 페이지 수, 페이지 1,000장당 비용. 모든 수치는 공개 OCR 벤치마크 저장소(ImageToTableai/benchmark-ocr)에 게시된 CSV 행에서 비롯된 것입니다 — 제3자 보고서의 집계가 아닌 재현 가능한 실험 데이터입니다.
이 페이지에서 다루지 않는 내용: 영수증 이외의 모든 문서 유형 — 표, 양식, 청구서, 계약서, 장문 문서는 제외됩니다. Surya2의 마케팅 강점은 여기서 측정되지 않습니다. 클라우드/API OCR 서비스, 기타 오픈소스 엔진, 파인튜닝 모델, CER/WER 이외의 전문 텍스트 지표는 범위에서 제외됩니다. 전체 8개 엔진 종합 결과는 OCR 엔진 vs 비전-언어 모델에서 확인할 수 있습니다.

이 페이지의 모든 수치 범위: 영수증, GPU 티어 1개, 2026년 8월 모델 버전. 이러한 결과를 청구서, 표, 복잡한 레이아웃에 확대 적용하지 마십시오 — 벤치마크는 영수증 OCR 및 영수증 필드 추출만 측정합니다. 모든 수치는 벤치마크의 results/summary_metrics.csv 및 results/field_method_comparison.csv에서 비롯되며, 공개 GitHub 저장소에 미러링되어 행 단위로 인용됩니다.

벤치마크에서 가장 우수한 두 텍스트 인식기는 영수증 문자 정확도에서 통계적으로 동률을 기록했습니다 — 하나는 전통적인 OCR 엔진, 다른 하나는 문서 파싱 VLM입니다: SROIE 2019 CER 0.1971 (docTR) 대 0.1915 (Surya2), 0.006포인트 차이입니다. 이 둘은 필드를 생성하도록 요청할 때만 차이가 납니다: 고정된 정규표현식 패턴을 통해 Surya2의 대소문자 변환, 라벨 구조화 출력은 docTR의 깨끗하지만 원시적인 라인 텍스트보다 4.2배 높은 비율로 필드를 추출합니다. LLM 후처리기를 추가하면 그 격차는 거의 사라집니다 — docTR 0.6171 대 Surya2 0.6139 필드 F1. 이 두 엔진 간의 실제적이고 결정적인 차이는 운영 범위입니다: 24.5배 지연 시간, 37배 처리량, 그리고 22배 1,000페이지당 비용, 모두 동일한 하드웨어에서 docTR에 유리합니다.

한 쌍의 숫자로 요약된 트레이드오프: docTR은 영수증 페이지를 108.7 ms p50으로 읽고 1,000페이지당 $0.048의 비용이 듭니다; Surya2는 2,668.0 ms p50으로 읽고 1,000페이지당 $1.061의 비용이 듭니다 — 동일한 영수증, 동일한 테스트 분할, 동일한 RTX 4090입니다. 어느 엔진도 "승리"하지 않습니다; 서로 다른 축에서 승리하며, 이 페이지의 목적은 동일한 통제된 실행에서 두 축을 모두 보여주는 것입니다.

0.1915 · 0.1971
Surya2 대 docTR의 SROIE CER — VLM과 전통 엔진 간 0.006포인트 통계적 동률
22.2×
1,000페이지당 docTR의 비용 우위 — 동일 GPU에서 24.5배 낮은 p50 지연 시간 및 37배 높은 처리량 포함
4.2×
고정 정규표현식 패턴을 통한 Surya2의 기본 필드 추출 우위 — 이후 LLM 후처리기가 0.003포인트 격차로 줄임
Character Error Rate(CER)는 고전적인 OCR 척도로, 삽입·삭제·치환 오류를 기준 텍스트 문자 수로 나눈 값입니다. CER 0.197은 100자당 약 19.7자가 잘못 읽혔다는 뜻입니다. Word Error Rate(WER)는 동일한 편집 거리 계산을 단어 단위로 적용합니다. 이 지표에서는 두 엔진이 사실상 차이가 없습니다. SROIE 2019에서 docTR과 Surya2는 벤치마크에서 가장 강력한 두 문자 인식기로, 0.006포인트 차이에 불과합니다. 이는 361개 샘플 코퍼스의 노이즈 범위 내입니다. WER도 같은 결과를 보여줍니다: Surya2 0.2735, docTR 0.3199. 영어 영수증의 원시 문자 정확도 측면에서 "VLM이 전통적 OCR을 능가한다"는 서사는 이 비교에서 성립하지 않습니다.

문자 정확도: 통계적 무승부

이 무승부가 중요한 이유는 두 엔진의 아키텍처가 정반대이기 때문입니다. docTR은 전통적인 신경망 OCR 파이프라인으로, 탐지기가 단어를 찾고 인식기가 이를 전사하여 인쇄된 텍스트의 원래 대소문자와 레이아웃을 보존합니다. Surya2는 문서 파싱 비전-언어 모델(VLM)로, 문서 이미지 전체를 읽고 이해된 텍스트를 출력합니다. 대소문자를 통일하고 라벨/값 쌍을 병합하며 줄 순서를 재배열하는 방식으로, 다운스트림 시스템이 원하는 형태에 더 가깝지만 정확한 문자 일치에서는 더 멀어집니다. CER은 정확한 문자 일치를 측정하므로 Surya2에 다소 보수적입니다. 그런 비대칭성에도 불구하고 무승부가 유지된다는 사실이 이 결과의 의미를 보여줍니다.
지표 (SROIE 2019, n=361)docTRSurya2출처
문자 오류율(CER)0.19710.1915summary_metrics.csv · cer, doctr/sroie_2019 및 surya2/sroie_2019 행
단어 오류율(WER)0.31990.2735summary_metrics.csv · wer, 동일 행

표: summary_metrics.csv — cer 및 wer 열, sroie_2019 행. 정확한 값: docTR cer 0.19707 / wer 0.31990; Surya2 cer 0.19147 / wer 0.27352. 낮을수록 우수하며, 두 실행 모두 error_rate 0.0으로 완료되었습니다.

분기점: 기본 제공 필드 추출이 결과를 뒤집다

네 가지 SROIE 영수증 필드에 대해 동일한 고정 정규표현식 패턴으로 엔진의 원시 텍스트를 벤치마킹합니다 — 전통적인 OCR + 규칙 기반 핵심 정보 추출(KIE) 방식 — 순위가 뒤집힙니다: Surya2는 0.3183 필드 F1을 기록해 docTR의 0.0766보다 4.2배 우위를 보입니다. docTR은 8개 엔진 실행에서 최고 수준의 문자 정확도를 보이면서도 최악의 정규표현식 필드 추출 성능을 보입니다 — 텍스트 정확도와 필드 정확도는 분리되어 있습니다.

필드 값 F1은 추출된 필드 값의 정밀도와 재현율에 대한 조화 평균으로, 정답과 비교합니다: 1.0은 모든 영수증 필드가 완벽하게 복구되었음을 의미하고, 0은 아무것도 복구되지 않았음을 의미합니다. 순위 뒤집기의 메커니즘은 위에서 설명한 출력 형태 차이입니다. 정규표현식은 RM 12.00 또는 14/08/2020 같은 형식화된 값을 위해 작성되었습니다; Surya2의 정규화되고 레이블 구조화된 출력은 해당 패턴과 훨씬 더 자주 일치하는 반면, docTR의 원시 줄 텍스트 — CER 기준으로는 정확하지만 원래 대소문자와 구분 기호 노이즈가 포함된 — 는 패턴을 무력화합니다. "정규표현식 필드 추출" 열은 벤치마크의 postprocessed_sroie_receipt_regex_* 메트릭입니다: OCR 텍스트 + 다운스트림 규칙 기반 추출을 측정하며, 기본 구조화 출력이 아닙니다.

후처리 방법별 SROIE 2019 필드 F1: 정규표현식 패턴을 통하면 Surya2는 31.8%, docTR은 7.7%에 도달; LLM 후처리(deepseek-v4-flash)를 통하면 두 엔진은 61.7%(docTR)와 61.4%(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)docTRSurya2출처
필드 값 F10.07660.3183field_method_comparison.csv · regex_field_value_f1, doctr/sroie_2019 및 surya2/sroie_2019 행
필드 값 정확도0.06230.2999field_method_comparison.csv · regex_field_value_accuracy, 동일 행
문서 필드 완전 일치0.00000.0194field_method_comparison.csv · regex_document_fields_exact, 동일 행

표: field_method_comparison.csv — regex 열, sroie_2019 행. 이는 postprocessed_sroie_receipt_regex_* 지표입니다: 각 엔진의 OCR 텍스트에 적용된 고정 패턴입니다. docTR의 regex 필드 F1 0.0766은 두 번째로 좋은 CER에도 불구하고 기본 실행에서 8개 엔진 중 가장 낮은 값입니다.

LLM 레버리지: 엔진 선택의 중요성 소멸

두 엔진의 OCR 텍스트를 구조화된 추출 프롬프트와 함께 LLM 후처리기(deepseek-v4-flash, temperature 0)에 입력하면 필드 격차가 거의 사라집니다: docTR 0.6171 대 Surya2 0.6139 필드 F1 — 전통 엔진이 0.003포인트 우위, 실질적으로 동률입니다. 결정적 구성 요소는 OCR 엔진이 아닌 후처리기가 됩니다.

이는 전체 8개 엔진 벤치마크에서도 동일한 패턴입니다: LLM 후처리는 문자 형태를 매칭하는 대신 의미를 이해하기 때문에 건강한 엔진들을 수렴된 필드-F1 대역으로 끌어올립니다. docTR의 더 깨끗한 기본 텍스트가 근소하게 앞서고, Surya2의 정규화된 구조는 LLM 하에서 그 미세한 이점을 잃습니다. 이 레버리지에는 두 가지 비용이 따릅니다: LLM 호출은 OCR 시간에 더해 문서당 중앙값 대기 시간 약 2.0–2.3 s를 추가하며, 엔진이 근본적으로 읽지 못한 텍스트는 구제하지 못합니다.

LLM 후처리 (SROIE 2019, n=361)docTRSurya2출처
필드 값 F1 (LLM)0.61710.6139field_method_comparison.csv · llm_field_value_f1, doctr/sroie_2019 및 surya2/sroie_2019 행
필드 값 정확도 (LLM)0.61700.6136field_method_comparison.csv · llm_field_value_accuracy, 동일 행
문서 필드 완전 일치 (LLM)0.14960.1551field_method_comparison.csv · llm_document_fields_exact, 동일 행
LLM 중앙값 대기 시간 (ms)1,996.32,261.7field_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 하에서 수렴합니다. 하지만 배치 파이프라인은 숫자가 끝나지 않으면 어느 것도 신경 쓰지 않습니다. 동일한 RTX 4090에서 동일한 기록된 $0.76/시간 요금으로, docTR은 449.3페이지/분의 처리량, 페이지당 108.7ms p50의 지연 시간, 1,000페이지당 $0.048의 비용을 유지합니다. Surya2는 12.1페이지/분의 처리량, 2,668.0ms p50의 지연 시간, 1,000페이지당 $1.061의 비용을 유지합니다. 이는 37배의 처리량 격차, 24.5배의 지연 시간 격차, 22.2배의 비용 격차입니다. Surya2의 속도에 맞춰 설계된 파이프라인은 docTR의 속도에 맞춰 설계된 것과는 다른 아키텍처 논의입니다.

비용은 벽시계 실행 시간 × RunPod RTX 4090 요금으로 계산되며, 모델 초기화를 포함합니다. 이는 GPU 시간에 대해 실제로 지불하게 될 가격입니다. 처리량은 동일한 초기화를 포함한 벽시계 기준 분당 페이지 수입니다. 지연 시간 p50/p95는 워밍 후 점수화(warm-then-scored) 방식으로 측정된 정상 상태의 페이지당 추론 시간입니다. Surya2의 꼬리 부분은 비례적으로 더 나쁩니다. docTR의 281.4ms p95 대비 5,872.2ms p95인데, 이는 VLM 프리필/디코드 스파이크가 첫 페이지의 꼬리 부분을 지배하기 때문입니다.

SROIE 2019의 페이지당 중앙 지연 시간(p50, ms): docTR 108.7ms 대 Surya2 2,668.0ms — 24.5배 격차. 정상 상태, 워밍 후 점수화.

출처: summary_metrics.csv — latency_p50_ms 열, sroie_2019 행. docTR 108.7166, Surya2 2667.9800. 정상 상태 지연 시간.

SROIE 2019의 1,000페이지당 비용: docTR $0.048 대 Surya2 $1.061 — 22.2배 격차. 비용에는 모델 초기화가 포함됩니다. 아래 표에 정확한 값이 있습니다.

출처: summary_metrics.csv — cost_per_1000_pages 열, sroie_2019 행. docTR 0.0479, Surya2 1.0609. 비용 = 벽시계 실행 시간 × $0.76/시간, 가격은 실행 매니페스트에 타임스탬프로 기록됨.

운영 범위 (SROIE 2019, n=361)docTRSurya2출처
지연 시간 p50 (ms)108.72,668.0summary_metrics.csv · latency_p50_ms, doctr/sroie_2019 및 surya2/sroie_2019 행
지연 시간 p95 (ms)281.45,872.2summary_metrics.csv · latency_p95_ms, 동일 행
분당 페이지 수449.312.1summary_metrics.csv · pages_per_minute, 동일 행
1,000페이지당 비용$0.048$1.061summary_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.7 / p95 281.4 / 449.3 pg/min / $0.0479; Surya2 p50 2668.0 / p95 5872.2 / 12.1 pg/min / $1.0609.

CORD: 두 엔진 모두 붕괴, 프로토콜에 따라 격리

두 엔진 모두 인도네시아 영수증을 주로 학습하지 않았으므로, CORD v2는 교차 언어 스트레스 테스트 역할을 하며, 두 엔진 모두 붕괴합니다: CER 0.8959(Surya2) 및 0.9101(docTR). 벤치마크 프로토콜에 따라 CORD 수치는 SROIE 비교에서 격리되어 유지되며, 어떤 순위에도 병합되지 않습니다. 이는 CORD의 정답 텍스트에 주석 구조가 포함되어 있어, 실제 언어 불일치에 더해 모든 엔진의 원시 CER을 부풀리기 때문입니다.

필드 지표에서도 SROIE와 동일한 발산 패턴이 압축된 형태로 나타납니다: 정규표현식 패턴을 통해 docTR은 필드를 전혀 복구하지 못하며, 이는 영어 형식 패턴이 인도네시아어 텍스트에서 아무것도 매칭하지 못했기 때문입니다. 반면 Surya2의 정규화된 출력은 0.2458을 추출합니다. 이후 LLM이 두 엔진을 0.5500(docTR) 및 0.5203(Surya2)으로 다시 수렴시킵니다 — 언어 충격은 엔진이 아닌 후처리기에 의해 흡수됩니다. CORD는 언어 견고성 맥락을 위해 여기에 인용되었으며, 의도적으로 SROIE 수치와 단일 리더보드에 통합되지 않습니다.

CORD v2, 인도네시아 영수증(n=100)docTRSurya2출처
문자 오류율(CER)0.91010.8959summary_metrics.csv · cer, doctr/cord_v2 및 surya2/cord_v2 행
필드 값 F10.00000.2458field_method_comparison.csv · regex_field_value_f1, 동일 행
필드 값 F1(LLM)0.55000.5203field_method_comparison.csv · llm_field_value_f1, 동일 행

표: summary_metrics.csv(cer) 및 field_method_comparison.csv, cord_v2 행. 이 수치를 어떤 SROIE 순위에도 병합하지 마십시오: CORD CER은 실제 언어 불일치와 정답의 주석 구조 부풀림이 결합된 것이며, 정규표현식 패턴은 영어 형식용으로 작성되었습니다. docTR의 정규표현식 필드 F1 0.0000은 CSV에 기록된 말 그대로의 0이며, 누락 값이 아닙니다.

누가 언제 승리하는가: 요약 그리드

"더 나은 것"은 작업 부하에 따라 달라집니다. 이 두 엔진은 축을 명확히 나누며, 그 분할이 곧 발견입니다: 문자 정확도는 동률, 구조화 필드 편의성은 Surya2에 유리, 모든 비용/지연 시간/처리량 축은 docTR에 유리, 그리고 LLM 후처리기는 최종 필드 품질에 있어 엔진 선택을 거의 무의미하게 만듭니다.

페이지당 속도 — docTR
108.7 ms vs 2,668.0 ms
SROIE p50 지연 시간, 24.5배 차이; p95 281.4 ms vs 5,872.2 ms. 대화형 페이지당 대기 시간: 0.1초 vs 2.7초.
1,000페이지당 비용 — docTR
$0.048 vs $1.061
동일한 RTX 4090에서 $0.76/시간 기준 SROIE 1,000페이지당 비용 — 22.2배 저렴, 모델 초기화 포함 비용.
높은 처리량 — docTR
449.3 vs 12.1 pg/min
SROIE 벽시계 기준 분당 페이지 수, 37배 차이 — docTR 속도의 배치 파이프라인과 Surya2 속도의 배치 파이프라인은 다른 아키텍처 논의입니다.
기본 구조화 필드 — Surya2
0.3183 vs 0.0766 F1
SROIE에서 정규표현식(regex) 후처리 필드 F1 — 대소문자 정규화, 레이블 구조화 출력으로 LLM 없이 4.2배 우위.
원시 문자 정확도 — 동률
0.1915 vs 0.1971 CER
SROIE 문자 오류율(CER), 코퍼스 노이즈 내 0.006포인트 차이; 단어 오류율(WER) 0.2735 vs 0.3199 (summary_metrics.csv, cer / wer, sroie_2019 행). 8개 엔진 실행 중 최고의 두 인식기.
LLM 적용 최종 필드 F1 — 동률
0.6171 vs 0.6139
LLM 후처리(deepseek-v4-flash) SROIE 필드 F1 — docTR이 0.003 우위, 실질적 동률; 이제 엔진이 아닌 후처리기가 결정합니다.

자주 묻는 질문

영수증 인식에서 Surya2가 docTR보다 정확한가요?

아니요 — 원시 문자 정확도에서는 통계적으로 동일합니다: SROIE CER 0.1915 (Surya2) 대 0.1971 (docTR), 0.006포인트 차이. 차이는 기본 제공되는 구조화된 필드 출력과 운영 환경에서 나타납니다.

docTR이 문자 정확도는 가장 높은데 정규표현식 필드 추출이 가장 낮은 이유는 무엇인가요?

두 지표가 서로 다른 출력을 평가하기 때문입니다. docTR은 원래 대소문자와 구분 기호를 보존한 깨끗한 원시 줄 텍스트를 반환하며, 형식화된 값을 위해 작성된 고정 정규표현식 패턴은 대부분 여기에 실패합니다: SROIE 정규표현식 필드 F1은 0.0766으로, 기본 실행의 8개 엔진 중 가장 낮은 반면, CER은 두 번째로 낮은 0.1971입니다 (summary_metrics.csv cer, field_method_comparison.csv regex_field_value_f1). Surya2의 대소문자 변환 및 레이블 구조화 출력은 0.3183으로 패턴과 우연히 일치합니다. 대신 두 엔진 모두를 LLM에 입력하면 그 격차는 0.003으로 줄어듭니다 — 병목 현상은 OCR이 아니라 정규표현식이었습니다.

LLM 후처리기를 추가하면 docTR과 Surya2가 동일해지나요?

거의 정확히 — docTR 0.6171 대 Surya2 0.6139 SROIE의 LLM 필드 F1. 이 수렴의 비용은 문서당 중앙값 LLM 지연 시간이 약 2.0–2.3초 추가된다는 점이며, 동기식 페이지별 대기보다는 비동기 일괄 처리에 적합합니다.

docTR이 Surya2보다 얼마나 빠르고 저렴한가요?

24.5배 낮은 p50 지연 시간, 37배 높은 처리량, 22.2배 낮은 1,000페이지당 비용 동일한 RTX 4090에서 $0.76/시간 기준.

두 엔진 모두 CORD 영수증에서 점수가 낮은 이유는 무엇인가요?

벤치마크 프로토콜이 SROIE 순위와 분리해 두는 두 가지 복합 원인이 있습니다: 실제 언어 불일치와 CORD의 정답 텍스트 내 주석 구조 팽창입니다 — CER은 0.9101(docTR) 및 0.8959(Surya2)에 도달합니다. 필드 지표는 LLM이 추가되면 충격의 일부를 흡수하지만, CORD 행은 인용될 뿐 어떤 결합 순위에도 포함되지 않습니다.

영수증 파이프라인은 docTR과 Surya2 중 어떤 엔진을 선택해야 하나요?

파이프라인이 소비하는 축에 따라 다릅니다. 계량 비용이 드는 대량 원시 텍스트의 경우 docTR의 범위(108.7 ms, 449.3 pages/min, $0.048/1K pages)가 우세합니다. 후처리기 없이 구조화된 필드의 경우 Surya2의 기본 정규표현식(regex) F1(0.3183 대 0.0766)이 더 나은 출발점입니다. LLM 후처리기를 사용한 최종 필드 품질의 경우 선택은 거의 차이가 없습니다. 이러한 결과는 2026년 8월 하나의 GPU 계층에서 영어 및 인도네시아어 영수증에 대해 유효합니다. 모든 운영 결정은 대상 말뭉치에서 재실행해야 합니다.

이 페이지의 숫자는 어디서 왔나요?

모든 수치는 자사 벤치마크의 공개 CSV 행입니다 — results/summary_metrics.csv 및 results/field_method_comparison.csv(정규표현식(regex) 대 LLM 후처리기, llm_model = deepseek-v4-flash) — 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/hr 기준으로 계산되었으며, 가격은 각 실행의 편집된 매니페스트에 타임스탬프로 기록되어 있습니다.
  • 엔진: 기본 설정 그대로, 파인튜닝 없음. 버전 고정: docTR v1.0.1 및 Surya2 (surya-ocr 0.22.1)(문서 파싱 VLM, vLLM 서빙) — 공개 저장소 모델 표(README.md) 및 실행 매니페스트 기준.
  • LLM 후처리기: 결정적 출력을 위해 temperature 0으로 API를 통해 제공되는 deepseek-v4-flash — 두 엔진의 모든 LLM 필드 행에 사용된 단일 모델입니다.
  • 비용 기준: 벽시계 실행 시간 × $0.76/hr, 모델 초기화 포함 — 배치 처리는 페이지당 비용을 낮춥니다.
  • 필드 후처리: SROIE 정규표현식 필드 지표는 postprocessed_sroie_receipt_regex_*입니다 — 고정 패턴 세트로 OCR 텍스트에서 추출된 필드입니다. 이는 어느 모델의 기본 구조화된 출력이 아닌 OCR + 다운스트림 추출을 측정합니다. LLM_* 열은 OCR 텍스트 + LLM 추출을 측정합니다. 두 파이프라인은 절대 혼합되지 않습니다.

지표 정의

  • CER: OCR 텍스트와 실제 값(ground truth) 간의 편집 거리를 실제 값의 문자 수로 나눈 값입니다. 낮을수록 좋습니다. 대소문자 및 형식 규칙에 민감하며, Surya2의 정규화된 출력에 대해 다소 보수적입니다.
  • 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 시간입니다.

출처 목록

  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, 지연 시간, 비용 및 처리량 수치는 여기의 docTR 및 Surya2 행에서 비롯됩니다.
  2. field_method_comparison.csv (GitHub raw). 16개 행; 열: model, dataset, llm_model (= deepseek-v4-flash), regex/llm 필드 값 정확도 및 F1, 문서 필드 정확 일치, llm_median_latency_ms, 토큰 수. 모든 regex/LLM 필드 F1 수치는 여기의 docTR 및 Surya2 행에서 비롯됩니다.
  3. ImageToTableai/benchmark-ocr 저장소. 결과 CSV, 편집된 실행 매니페스트, 고정 프로토콜, 재현을 위한 데이터셋 샘플 목록을 호스팅하는 공개 저장소입니다.
  4. results/manifests/ (GitHub). 게시된 각 실행에 대한 편집된 manifest.json 하나로, 모델 버전, GPU/드라이버, torch/CUDA/Python 버전, 가격 타임스탬프가 포함된 비용 메타데이터, 아티팩트 해시를 포함합니다.
  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이 가장 큰 장점을 주장하는 레이아웃/표/수식/장문 처리 능력은 측정되지 않았습니다. Surya2의 마케팅 강점은 측정되지 않았습니다. 이 페이지를 "docTR이 모든 면에서 우세하다"는 결론으로 사용하지 마십시오.
  • 표본 크기: 영어 361건 + 인도네시아어 영수증 100건. 필드 F1과 CER은 말뭉치에 민감하며, 소수점 몇 자리 차이는 노이즈로 간주해야 하며 공학적 진실로 보아서는 안 됩니다.
  • 단일 GPU 티어 및 단일 가격: 모든 수치는 $0.76/hr의 RTX 4090 하나에서 나온 것이며, 가격은 실행 매니페스트에 2026년 8월 기준으로 기록되어 있습니다. 다른 GPU, 멀티 GPU 서빙, 배치 스케줄링 또는 가격 변경은 지연 시간, 처리량 및 비용을 변화시킵니다 — 예산을 세우기 전에 현재 요금으로 비용을 다시 산출하십시오.
  • 단일 LLM 후처리기: 모든 LLM 행은 temperature 0에서 deepseek-v4-flash를 사용합니다. 다른 LLM은 절대 필드 F1을 변화시키며, 수렴 순서는 경계에서 달라질 수 있습니다. LLM 지연 시간은 API로 인해 발생하며 두 엔진 자체의 지연 시간에 포함되지 않습니다.
  • 정규표현식(regex) 튜닝: 패턴 세트는 데이터셋당 한 번 작성되었습니다. 형식별로 집중 튜닝된 패턴 라이브러리는 자체 레이아웃에서 더 높은 점수를 얻을 수 있습니다 — LLM이 제거하는 유지보수 비용이 발생합니다.
  • CORD CER은 모델별 품질 판독이 아님: CORD 정답 데이터에는 주석 구조가 포함되어 있으며 두 엔진 모두 주로 인도네시아어로 훈련되지 않았습니다. CORD CER(0.90~0.91)은 언어 불일치 + 정답 데이터 인플레이션을 반영합니다. CORD 행은 프레이밍과 함께 인용되며 어떤 SROIE 순위에도 병합되지 않습니다.
  • VLM에 대한 CER 공정성: CER은 정확한 문자 일치를 측정하므로 Surya2의 대소문자 통합, 라벨 병합 출력은 오독이 아닌 출력 규칙으로 인해 약간 불이익을 받습니다. 따라서 CER 동률은 Surya2를 다소 과소평가하며, 필드 메트릭이 교차 패밀리 비교에서 더 공정한 기준입니다.
  • 두 엔진만 비교: 이 직접 비교는 의도적으로 기본 실행의 다른 6개 엔진, 클라우드/API OCR 서비스 및 호스팅 VLM API를 제외합니다. 이들의 지연 시간과 가격 모델은 여기서 측정된 로컬 엔진과 근본적으로 다릅니다.
  • 버전 고정: 결과는 docTR v1.0.1 및 Surya2 0.22.1에 적용됩니다. 두 엔진 중 하나의 최신 릴리스는 이 페이지의 모든 수치를 변경할 수 있습니다.

관련 참고 자료: 전통적 OCR vs 문서 파싱 VLM · 실제 문서에서 정규표현식(regex)이 실패하는 이유 · 문자 수가 필드 추출을 오도하는 이유 · 영수증 OCR 정확도

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

📮 contact email: [email protected]