NEW코딩일지 · 11.05코퍼스 메인에 주장 연구실을 세웠다: 사유고2 주장 29만 개를 자동 등록하고 스파크 두 대가 반증 조건까지 검토한다
← 개발로그
·2분

사유고 개발로그 · 5화

책 587권 자동 등록: 파일은 왔는데 페이지가 빠져 있었다

촬영 폴더를 3시간마다 살피는 자동 등록을 붙였다. 파일은 멀쩡히 왔는데 책 속 페이지가 빠져 있었다.

▸ 사유고#automation#ocr#ingest

13권으로 시작한 서재가 8월과 9월 사이에 수백 권으로 불었다. 책 한 권을 넣는 과정은 이렇다. 사진을 OCR로 읽고, 페이지 이미지와 본문을 각각 색인하고, 실제 목차에서 장을 뽑고, 서지 정보를 만들고, ISBN으로 공식 표지를 받아 온 뒤 서재에 등록하고 서버에 바로 반영한다. 이 과정을 명령 한 줄로 묶었다.

손으로 한 권씩 넣는 것도 곧 한계에 닿았다. 그래서 휴대폰 촬영본이 모이는 폴더를 3시간마다 살펴, 새로 생긴 책 폴더를 자동으로 등록하게 했다. 규칙은 하나를 못 박았다. 원본이 있는 외장 디스크에는 어떤 파일도 쓰지 않는다. 필요한 것은 전부 앱 안으로 복사해서 처리한다.

표지가 전부 깨졌다

8월 중순 어느 새벽, 서재의 책 표지가 전부 깨져 보였다. 표지가 문제인 줄 알고 표지 파일부터 확인했는데, 파일은 멀쩡한 JPEG였고 이미지를 내주는 경로도 정상이었다.

원인은 전혀 다른 곳에 있었다. 서버 자체가 꺼져 있었다. 맥이 로그인할 때 서버를 띄우는 자동 실행 설정 파일은 남아 있었지만, 시스템에는 등록이 풀려 있어서 서버가 돌지 않고 있었다. 화면에 남아 있던 것은 예전에 불러온 껍데기였다. 자동 실행을 다시 등록하고, 서버가 두 포트에서 모두 응답하는 것을 확인했다. 증상은 표지에 나타났지만 원인은 서버 바깥에 있었다.

파일은 멀쩡히 왔는데

가장 크게 배운 일은 9월 8일 저녁에 있었다. 촬영과 전송을 맡은 작업이 새 책 아홉 권을 넘겨줬다. 전송은 정상이었다. 파일 크기도 맞았고, 자동 검사도 통과했다.

그런데 등록 전에 실제 사진을 한 장씩 대조해 보니 여덟 권의 본문이 빠져 있었다. 문장이 중간에 끊기고, 이어져야 할 다음 쪽 대신 전혀 다른 맥락의 쪽으로 넘어갔다. 빈 면 개수나 쪽수 차이만 보고 판단하지 않고, 끊기는 쪽의 앞뒤 사진을 직접 열어 확인했다. 남은 한 권은 이미 서재에 있는 책과 같은 책이었다. 표지와 판권면의 저자·역자·출판사를 대조해 알아냈다. 결과적으로 그날 새로 등록한 책은 0권이었다. 그날 기록에 남긴 문장이 이 연재의 한 줄 요약에 가깝다. 전송된 바이트가 정상이라고 해서 촬영된 내용이 온전한 것은 아니다.

그날 밤, 책 촬영부터 전송, 등록까지 이어진 자동화 전체를 멈췄다. 한창 등록 중이던 책 한 권은 서문에서 두 군데가 빠진 것을 확인하고 결국 서재에서 지웠다. 원본 사진이나 이미 만든 다른 책의 자료는 하나도 건드리지 않았다.

그 뒤로는 사람이 폴더를 지정하면, 원본을 검수하고 문제없는 책만 등록하는 방식으로 돌렸다. 한 번에 열여섯, 열일곱, 열여덟 권씩 등록하면서, 의심스러운 책은 등록하지 않고 보류로 남겼다. 9월 말 서재에는 책 587권, 영상 36편, 논문 14편, 웹 문서 12개가 들어 있다.

배운 것

자동화가 빨라질수록 병목은 처리 속도가 아니라 원본을 믿을 수 있느냐로 옮겨 간다. 전송이 성공했다는 신호와 내용이 온전하다는 사실은 다른 것이다. 그리고 증상이 보이는 자리와 원인이 있는 자리는 다를 때가 많다. 표지가 깨졌을 때 표지부터 고치려 들었다면 한참 헤맸을 것이다.

사유고 개발로그 · 전 11화

  1. 1화종이책 사진에 물어보는 서재: 글자·그림 검색 두 갈래로 세웠다
  2. 2화저자 토론 기능을 붙였다: GPT가 저자 연기를 거부했다
  3. 3화학습 루프를 만들었다: 증거 없이 완료되는 구멍이 나왔다
  4. 4화저자 인터뷰와 대목 연결 기능을 붙였다: 결함 5개를 먼저 고쳤다
  5. 5화책 587권 자동 등록: 파일은 왔는데 페이지가 빠져 있었다
  6. 6화AI 강의 품질을 쟀다: 모델이 쓴 인용은 문구가 바뀌고 쪽수가 틀렸다
  7. 7화600권 완독 코스·마인드맵을 배치로 미리 만들기 시작했다
  8. 8화배치 사용량 문지기: 5시간 한도 80%에서 쉬고 주간 90%에서 멈춘다
  9. 9화사유고2는 책 795권을 원문 10분의 1 크기 지도로 바꿨다: 답하는 서재에서 늘어놓는 서재로
  10. 10화투자 책 50권만으로 노트 2,094개짜리 지식 연결망이 나왔다: 795권으로 키우기 전에 고민할 것
  11. 11화사유고 촬영 자동화를 맥북 프로에서 맥북 에어로 옮겨 같은 작업을 이어 갔다: 바꾼 코드는 두 줄이었다