책 스캔 변환에서 OCR에 LLM을 끼울 때의 환각
에이전트코리아에서 오전에 오간, 책 스캔 변환 때 표와 그림을 가르는 법, OCR에 LLM을 끼울 때 생기는 환각 경험, 무작위 글자열로 학습·시험용 데이터를 만드는 방식에 대한 대화를 정리한 기사.
오전 에이전트코리아 대화창에서 한 참가자가 스캔한 책의 한 페이지를 가리키며 질문을 던졌다. 이걸 표로 인식할지, 그림으로 인식할지 알고 싶다는 것이었다. 같은 방의 다른 참가자가 짧게 답했다.
그림으로 할것 같은데
질문한 참가자는 "저거는 llm으로 빼야겠네"라고 받았다. 답한 참가자는 이런 쪽은 이미지 설명을 만드는 캡셔닝으로 따로 처리해야 한다고 거들었다. 표처럼 보이는 페이지라도 칸과 글자를 읽어내는 대신 그림으로 다루고 설명문을 붙이는 편이 낫다는 추측 섞인 조언으로 읽힌다(캡셔닝 풀이는 기사 설명이다).
1차는 OCR, 이미지만 LLM
질문한 참가자가 설명한 작업 방식은 단계가 나뉘어 있었다. 먼저 패들 OCR(오픈소스 문자 인식 도구)로 한 번 돌리고, 이미지가 들어 있는 쪽만 따로 빼서 LLM으로 보낸다는 구성이다. 이 참가자는 많은 책을 처리해 왔고, 그날도 처리할 책이 남아 있다고 말했다. PDF와 ePUB, 스캔본이 섞여 있다는 점도 함께 적었다.
답한 참가자는 그 방식이 낫다고 평했고, 영어 문서라면 LLM 말고 다른 파싱 도구를 살펴보라는 말도 보탰다. 즉 문서 종류에 따라 글자를 읽는 길과 그림을 풀이하는 길을 가르는 설계가 이 대화의 첫 번째 축이었다. 그 뒤 질문한 참가자가 올린 한글 스캔본 몇 쪽을 답한 참가자가 OCR 도구로 돌려 보이는 장면이 이어졌고, 질문한 참가자는 한글 인식이 좋다는 반응을 남겼다.
OCR에 추론이 끼어드는 문제
대화가 가장 달아오른 대목은 OCR 단계에 LLM을 넣었을 때의 부작용이었다. 옛 표기를 가진 쪽을 LLM으로 돌리면 오류가 더 많다는 이야기 끝에, 답한 참가자는 직접 해봐서 안다며 LLM이 글자를 알아서 바꿔 놓는다고 말했다.
100% 환각끼고 알아서 대체해놔서
질문한 참가자도 같은 경험이 있다고 맞장구쳤다. 그는 모델에게 보이는 대로 쓰라고 한 것이지 추론해서 쓰라고 한 적이 없다는 취지로 불만을 적었다.
아니.. 보이는데로 쓰라는거지.. 누가 추론해서 쓰래
답한 참가자는 추론 강도를 낮춰 돌려도 더 심해진다고 했고, 그래서 오죽하면 이미지를 생성하는 확산 모델 쪽을 쓸까 고민했다는 말까지 이어졌다. 질문한 참가자 역시 예전에 아스트라를 울트라로 돌려 봤더니 책 한 권 분량을 써내다가 팬아웃을 세 번쯤 한 뒤 기준을 못 맞추겠다며 실패했다고 털어놓았다. 모두 참가자 개인의 경험담이며, 어떤 모델이든 같은 결과가 나온다는 일반론으로 확인된 것은 아니다. 또 이 경험담을 꺼낸 쪽이 OCR 도구를 직접 다루며 소개하던 참가자라는 점은 읽는 이가 감안할 대목이다.
무작위 글자로 데이터 만들기
학습에 쓸 만한 데이터가 마땅치 않다는 고민 끝에 답한 참가자는 다른 방법을 소개했다. 의미 없는 글자열을 키보드로 무작위로 쳐서 만들고, 그것과 비교해 본다는 것이다. 그는 글자가 무작위여야 OCR 인식이 더 잘 된다고 했다. 뜻이 있는 문장이면 모델이 앞뒤 문맥으로 글자를 짐작해 맞힐 수 있지만, 뜻 없는 글자열은 짐작할 근거가 없어 글자를 읽는 능력이 더 분명히 드러난다는 풀이가 가능하다(이 풀이는 기사의 해석이다). 같은 참가자는 OCR 결과를 사전과 비교하는 방식은 편법에 가깝다고 평하기도 했다.
여기에 손글씨체와 바탕체, 궁서체 같은 여러 글꼴을 입혀 데이터를 불리고, 종이에 넣어 기울이고 구기고 화질을 떨어뜨린 상태에서 읽히는지 시험한다는 설명이 따라붙었다.
종이에 기울여 넣고 구기고 화질 맛가게 하고
질문한 참가자는 이 방식을 두고 영상 쪽 작업하는 사람들에게 먹여 볼 만하다고 말했고, 답한 참가자는 영어 글자를 벤치마크용으로 남겨 두었다는 점을 덧붙였다. 한국어를 올리는 데 집중하느라 중국어는 학습에서 뺐고, 필요하면 중국어 전용 OCR을 쓰면 된다는 이야기도 나왔다. 끝에는 한글이나 한문에서 줄바꿈 때 띄어쓰기가 무너지는 문제가 남는다는 하소연이 붙었다.
읽어야 하는 일과 풀이해야 하는 일
이 대화는 책 변환이라는 구체적인 작업에서 출발했지만, 가른 선은 분명했다. 표든 그림이든 설명이 필요한 쪽은 LLM이 맡고, 글자를 있는 그대로 옮기는 쪽은 추론이 끼지 않는 도구가 맡는다는 구도다. LLM이 글을 잘 안다는 점이 OCR에서는 오히려 약점이 된다는 지적으로 풀이할 수 있다. 보이지 않는 글자를 알아서 채워 넣는 능력이 인식 작업에서는 오류의 입구가 되기 때문이다.
참가자들이 내놓은 대응 방식도 눈여겨볼 만하다. 이미지가 든 쪽만 LLM으로 보내는 앞서의 구성은 결과적으로 모델이 개입할 자리를 줄이는 셈이고(이는 기사의 해석이며 환각 대응으로 소개된 것은 아니다), 문맥을 지운 무작위 글자로 시험 문제를 만드는 방법은 모델이 짐작하지 못하게 막는 쪽에 가깝다. 수많은 책을 넘기는 변환 작업에서는 한 글자의 사소한 바뀜이 쌓여 책 전체의 신뢰를 흔들 수 있다. 다만 이 대화에서 이런 감각을 분명히 밝힌 것은 질문한 참가자의 맞장구 정도였고, 방 전체의 의견으로 보기는 어렵다.