복잡한 차트나 흐름도는 곧바로 답을 만들기보다 객체와 관계를 Logic Graphic DSL로 다시 적은 뒤 검증하면 오류를 추적하기 쉬우며, Thinking with Drafting(TwD)이 이 접근을 시험합니다. 중간 표현을 재렌더링할 수 있어 OCR, 관계 연결, 집계 중 어느 단계가 틀렸는지 확인할 수 있다는 점이 핵심입니다. 다만 DSL이 표현하지 못하는 기호와 흐릿한 현실 문서에서는 벤치마크 성과가 그대로 이어지지 않을 수 있습니다.
차트, 흐름도를 바로 읽지 말고 다시 그리면 나아질까: Thinking with Drafting
왜 “파싱 자체가 추론”이라고 볼까?
멀티모달 모델이 글자를 정확히 읽어도 선의 연결, 부모, 자식 관계, 좌표 위치를 놓치면 답은 틀립니다. TwD는 이미지 이해와 텍스트 추론을 분리된 단계로 두지 않고, 시각 구조를 실행 가능한 중간 표현으로 복원하는 일 자체를 추론으로 봅니다.
이 중간 표현이 있으면 최종 답이 틀렸을 때 OCR, 객체 추출, 관계 연결, 집계 중 어디에서 오류가 시작됐는지 살펴볼 수 있습니다. 다만 DSL이 그럴듯하다는 사실만으로 원본을 정확히 옮겼다고 보장되지는 않습니다.
예를 들어 트리의 노드 이름을 모두 읽었더라도 부모와 자식의 선을 하나 바꾸면 깊이와 경로에 관한 답이 모두 틀립니다. 막대그래프에서도 눈금과 막대 값을 잘 읽고 축 방향을 반대로 연결하면 집계가 어긋납니다. TwD가 겨냥하는 문제는 텍스트 인식 이후에 남는 이런 구조적 연결입니다.
중간 표현의 장점은 검토 가능한 단위가 생긴다는 데 있습니다. 사람이 전체 그림을 다시 해석하는 대신 엔티티 수, 연결 수, 좌표, 집계식을 원본과 대조할 수 있습니다. 그러나 모델이 빠뜨린 객체는 DSL 내부의 문법 검사만으로 찾기 어려우므로 원본과 재구성 결과의 시각 비교가 필요합니다.
초안은 어떤 세 단계로 검증될까?
TwD는 먼저 이미지의 텍스트와 시각 요소를 찾고, 이를 엔티티, 관계, 집계 연산으로 구성된 Logic Graphic DSL로 바꾼 뒤, 문법과 시각적 완전성, 논리 일관성을 검증합니다.
엔티티에는 좌표, 선, 막대, 트리 노드가 들어가고 관계에는 연결, 부모, 자식, 인접성이 포함됩니다. 합계나 평균, 흐름 방향 같은 집계도 명시할 수 있습니다. 답만 생성하는 방식보다 단계가 늘지만, 중간 구조를 렌더링하거나 수치로 확인할 수 있다는 것이 장점입니다.
문법 검증은 DSL이 실행 가능한지 확인하고, 시각적 완전성 검증은 원본 요소가 빠지지 않았는지 살피며, 논리 일관성 검증은 관계와 집계가 서로 모순되지 않는지 보는 역할로 구분할 수 있습니다. 문법이 맞아도 잘못된 부모 관계는 남을 수 있고, 그림이 비슷해도 합계 연산이 틀릴 수 있으므로 세 검사를 하나로 합치면 원인을 놓치기 쉽습니다.
재렌더링은 특히 유용한 비교 지점입니다. 원본과 초안을 겹쳤을 때 레이블은 맞지만 선이 끊기거나, 좌표는 비슷하지만 화살표 방향이 반대인 사례를 찾을 수 있습니다. 자동 점수와 함께 핵심 관계 몇 개를 사람이 확인하면 최종 답만 검수할 때보다 오류의 시작점을 좁힐 수 있습니다.
VisAlg 결과는 현실 문서까지 얼마나 설명할까?
VisAlg는 Seed Logic에서 이미지를 렌더링하고 질문, 답을 만드는 방식으로 구축됩니다.
평가 범주는 Coordinate, Line, Bar, Tree, Flow의 다섯 가지입니다.
연구는 직접적인 Chain-of-Thought보다 TwD가 다섯 유형 모두에서 높은 성능을 보였다고 보고하며, 특히 Tree와 Flow에서 차이가 두드러졌다고 설명합니다.
하지만 논리에서 렌더링한 정돈된 이미지와 현실의 흐릿한 스캔, 손글씨, 겹친 선은 난도가 다릅니다. VisAlg 성과를 의료 영상, CAD, 금융 차트 전반의 정확성으로 확대해서는 안 됩니다.
다섯 범주는 좌표, 선, 막대, 트리, 흐름이라는 대표 구조를 나누지만, 한 현실 문서에는 여러 유형이 동시에 있을 수 있습니다. 범례와 주석, 색으로만 구분되는 관계, 표 안의 작은 차트처럼 DSL 스키마 밖 요소도 등장합니다. Tree와 Flow에서 차이가 컸다는 결과는 관계를 명시적으로 복원하는 이점을 보여 주지만, 모든 복합 문서의 해결을 뜻하지는 않습니다.
평가 데이터를 논리 표현에서 렌더링했다는 점도 중요합니다. 생성 규칙이 명확한 그림은 노이즈가 적고 DSL과 구조가 잘 맞을 가능성이 큽니다. 실제 적용 전에 저해상도, 회전, 잘린 선, 겹친 레이블을 포함한 자체 문서로 성능 하락을 확인해야 합니다.
어떤 실패가 반복되면 실무 적용을 보류해야 할까?
적용 후보 문서에서 먼저 OCR 오류, 끊긴 선, 겹치는 화살표, DSL에 없는 기호를 모은 실패 세트를 만들어야 합니다. 원본과 재렌더링 결과를 겹쳐 보고, 관계 수와 레이블 수가 보존되는지도 검사합니다. 최종 답뿐 아니라 생성된 DSL을 사람이 수정할 수 있어야 이 방식의 설명 가능성이 실제 이점이 됩니다.
TwD는 정의된 시각 문법에서 강하지만 새로운 도형과 관계가 DSL에 없으면 표현 자체가 불가능할 수 있습니다. DSL 생성, 실행, 검증으로 지연도 늘고, 첫 OCR 오류가 뒤 단계 전체에 전파될 수 있습니다. 따라서 즉시 응답이 필요한 환경보다 구조가 제한되고 감사 가능성이 중요한 문서부터 평가하는 편이 적절합니다.
평가표에는 최종 정답률만 두지 말고 엔티티 누락, 잘못된 관계, 잘못된 집계, DSL 미지원 요소를 분리해 기록해야 합니다. 재렌더링이 원본과 비슷해도 질문에 필요한 화살표 하나가 틀릴 수 있으므로 핵심 관계에는 더 높은 가중치를 줄 수 있습니다. 사람이 DSL을 고쳤을 때 최종 답도 바로 바로잡히는지 보면 중간 표현이 실제 설명 수단인지 확인할 수 있습니다.
문서 유형마다 새로운 기호를 계속 추가해야 하거나 OCR 오류가 대부분을 차지하거나, 직접 답변보다 지연이 지나치게 커진다면 TwD 구조의 이점이 줄어듭니다. 반대로 반복되는 차트 문법이 있고 결과를 감사해야 하며 DSL 수정 도구를 제공할 수 있다면, 직접 답변 방식과 비교할 이유가 있습니다. 선택 기준은 더 긴 추론이 아니라 오류를 발견하고 수정하기 쉬워지는지입니다.
파일럿 문서는 어떻게 고르고 채점해야 할까?
첫 파일럿에는 DSL이 지원하는 구조가 하나씩 분명하게 등장하는 문서를 고릅니다. 막대그래프, 트리, 흐름도를 섞기 전에 각 유형에서 엔티티, 관계, 집계가 올바르게 복원되는지 확인해야 합니다. 정돈된 원본과 스캔 품질이 낮은 원본을 짝으로 두면 시각 노이즈의 영향을 볼 수 있습니다.
채점표는 OCR 문자열, 객체 수, 관계 방향, 집계식, 최종 답을 별도 열로 둡니다. 최종 답이 맞아도 관계를 잘못 복원한 경우는 우연한 성공으로 표시하고, DSL은 맞지만 실행기가 틀린 경우도 생성 오류와 나눕니다. 이 구분이 있어야 어느 단계를 고쳐야 하는지 알 수 있습니다.
원본과 재렌더링 결과를 겹칠 때 모든 픽셀을 동일하게 비교할 필요는 없습니다. 질문에 필요한 노드와 화살표, 축 눈금처럼 답을 바꾸는 요소를 먼저 확인하고 장식은 낮은 우선순위로 둘 수 있습니다. 작은 방향 표식이 핵심인 문서에서는 전체 유사도보다 그 표식 보존을 중요하게 봐야 합니다.
사람이 DSL을 수정하는 데 걸린 시간도 기록합니다. 직접 문서를 읽어 답하는 것보다 수정과 실행이 오래 걸리면 감사 가능성의 가치가 충분한지 재검토해야 합니다. 반복 문서에서 같은 수정 규칙을 재사용할 수 있고 오류 위치가 빠르게 드러날 때 중간 표현이 실무적 이점을 갖습니다.
문서가 지원 스키마를 벗어났을 때 억지로 가장 가까운 엔티티에 끼워 넣지 않도록 “미지원 요소”를 출력할 수 있어야 합니다. 새로운 기호를 틀린 관계로 변환하는 것보다 사람이 확인하도록 보류하는 편이 안전합니다. 미지원 비율이 높으면 DSL 확장과 적용 중단 중 어느 쪽이 비용이 적은지 비교합니다.
DSL 확장 시에는 기존 스키마의 의미가 바뀌지 않는지 회귀 시험을 합니다. 새 화살표 유형을 추가한 뒤 예전 흐름도의 연결이 달라지면 설명 가능성이 오히려 낮아집니다. 버전별 문법과 실행기를 함께 보관하고 과거 결과를 어떤 버전으로 만들었는지 표시해야 합니다.
질문이 바뀌어도 같은 재구성 결과를 재사용할 수 있는지가 중요한 효율 지점입니다. 한 차트를 한 번 정확히 DSL로 옮긴 뒤 합계, 경로, 최댓값 질문을 여러 번 풀 수 있다면 초기 비용을 나눌 수 있습니다. 질문마다 전체 파싱을 다시 한다면 지연과 결과 변동성을 별도로 계산해야 합니다.
재사용 전에는 원본 문서가 바뀌지 않았는지 확인해야 합니다. 오래된 DSL이 수정된 차트의 질문에 쓰이면 구조는 타당해 보여도 답은 틀릴 수 있습니다.
초안의 장점은 사람이 중간 표현을 고칠 수 있다는 데 있습니다. 최종 답이 틀렸을 때 원본 이미지, 재구성한 DSL, 실행 결과를 나란히 두면 축 라벨을 잘못 읽었는지 연결 관계를 틀렸는지 분리할 수 있습니다. 수정한 DSL로 답이 바로 복구된다면 시각 파싱이 병목이고, 구조가 맞아도 계산이 틀리면 추론기가 병목입니다. 두 오류를 한 점수로 합치지 않아야 더 정교한 모델을 쓸지, 문서별 파서를 보강할지 결정할 수 있습니다.
함께 읽으면 이해가 이어지는 글
- 차트 OCR은 글자만 맞으면 될까? OCRVerse의 문서, 웹, 수치 보상 분리 — OCRVerse가 문서의 줄바꿈, 차트의 수치, 웹의 계층 구조를 같은 기준으로 채점하지 않고 SFT 뒤 도메인별 보상 RL로 다듬는 이유와 실제 검수 포인트를 정리합니다.
- olmOCR: 비전-언어 모델로 PDF 문서의 한계를 뛰어넘다 — olmOCR은 PDF 문서에서 텍스트를 추출하고 구조를 유지하는 강력한 비전-언어 모델입니다. 기존 OCR 도구의 한계를 극복하며, 연구 논문, 법률 문서, 기술 보고서 등 다양한 문서에서 깨끗한 텍스트 데이터를 생성할 수 있습니다.
- 긴 추론을 이미지로 저장하면 왜 빨라질까? VTC-R1의 Optical Memory — VTC-R1이 이전 reasoning segment를 text token 대신 렌더링 image로 되먹임해 optical memory로 쓰는 과정, 3.4배 압축, 2.7배 속도 보고와 OCR 오류 위험을 설명합니다.
←→ 키와 좌우 스와이프를 지원합니다. 읽던 페이지는 이 기기에 저장됩니다.




