다들 지저분한 인보이스나 계약서에서 필드 추출 어떻게 안정적으로 하고 있음?
How are people reliably pulling fields out of messy invoices or contracts?
핵심 요약
LLM 단일 호출의 한계를 지적하며, 문서 파싱 후 필드를 추출하는 2단계 방식이나 전문 서비스를 활용하는 방안을 논의함.
- LLM 단일 호출 — OCR, 레이아웃, 추출을 한 번에 처리해 오류 추적이 어려움.
- 2단계 파싱 방식 — LlamaParse나 Docling으로 먼저 마크다운 변환 후 필드 추출.
- 전문 서비스 활용 — Azure Document Intelligence 등 엔드투엔드 솔루션으로 구축 비용 절감.
인보이스/계약서 필드 추출할 때 GPT-4o, Gemini, Claude에 던져서 JSON/MD로 뽑아내는 게 기본인데, 이게 실패한다는 건 아니지만 장기적으로 테스트해 봤거나 복잡한 인보이스를 넣고 누군가 오류를 지적하기 전까지 그냥 믿고 쓴 사람 있음?
문제는 단일 비전 패스가 OCR, 레이아웃 읽기, 필드 추출, 스키마 준수까지 한꺼번에 다 한다는 거임. 그래서 숫자가 틀리면 어디서 잘못됐는지 알기가 정말 힘듦. 이 경우 더 잘 먹히는 방법은 문서를 두 개로 나누는 거임. 클라우드면 LlamaParse, 로컬이면 Docling을 써서 먼저 문서를 깔끔한 .md 파일로 파싱하고, 그 깔끔한 마크다운에서 스키마 검증에 따른 구조화된 출력으로 필드 추출을 실행하는 거임. 이렇게 하면 파서가 지저분한 표와 레이아웃을 처리해주니까 추출 단계가 아주 빨라짐.
Azure Document Intelligence, Docsumo, Nanonets, Rossum처럼 엔드투엔드로 다 해주는 서비스들도 있는데, 확실히 더 경직되어 있긴 하지만 구축할 건 적음. 인보이스 산더미처럼 쌓아두고 처리하는 사람들, 다들 어떻게 하고 있는지 생각이나 절차 좀 공유해 줘.

