소개
지난 9월 17일에 “한글과컴퓨터” 에서 “오픈데이터로더 PDF(OpenDataLoader PDF)” 를 오픈소스로 공개하였습니다.
“오픈데이터로더 PDF(OpenDataLoader PDF)” 는 PDF 문서 내 텍스트, 표, 이미지, 레이아웃 정보를 높은 정확도와 빠른 성능으로 추출해, AI 학습에 즉시 활용할 수 있는 정형화된 데이터(JSON, Markdown, HTML)로 변환이 가능하다고 합니다.
이와 관련된 유튜브 영상의 내용을 실습하며 PDF 문서에서 추출한 데이터가 얼마나 정확한지를 테스트 해보았습니다.
진행 내용
테스트 내용 : 서울특별시 행사 및 축제 정보 PDF 파일을 업로드하여 챗봇에서 질의
테스트 PDF 데이터 : 서울특별시 행사 및 축제 정보
사용 도구 : Next.js, OpenDataLoader PDF, Gemini, Claude Code
진행 과정
바이브 코딩으로 Next.js 기반의 페이지에서 비교 기능 구현
기존 Dify AI 채팅 플로우에서의 답변과도 비교
진행 방법
Next.js 프로젝트 및 앱 생성
npx create-next-app@lastest .PRD 작성
# PDF 내용 인식 검증 AI 챗봇 서비스 ## 두개의 탭 메뉴로 구성된 페이지 (AI 챗봇 페이지) - 하나는 PDF 인식이 가능한 오픈소스가 제 기능을 하는 페이지 -> <https://github.com/opendataloader-project/opendataloader-pdf> 링크를 참고해서 라이브러리를 설치하고 적용되는 페이지(Gemini-2.5-flash 도움 받음) - 두번째는 PDF 인식이 가능한 오픈 소스와 연결이 안된 페이지(기본적인 AI 챗봇 기능만 있다. Gemini-2.5-flash 로만 인식)Claude Code 에게 prd.md 파일 내용 수정 요청 및 init 명령어로 CLAUDE.md 파일 생성 (필요시 내용 직접 수정)
/init @prd.md 를 참고해서 서비스를 제작한다. 이것 은 MVP 이다. 먼저 @prd.md 를 읽고 mvp 서비스에 맞도록 내용을 더 자세하게 작성해.필요시 prd.md 및 CLAUDE.md 파일 내용을 직접 수정하고 파일 업데이트를 요청할 수 있다.
@prd.md 를 일부 수정했습니다. @CLAUDE.md 도 업데이트하고 MVP 로 아주 가볍게 만들어서 검증하는 게 목적입니다. 개발을 시작해 봅시다.“UI 생성 → pdf 파일 업로드 기능 추가 → 라이브러리 연동” 등 상황에 맞게 개발 진행.
테스트 페이지에서 결과 확인
1) 원본 PDF 데이터
2) 기본 챗봇3) OpenDataLoader PDF 적용 챗봇
4) 기존 Dify 챗봇 (한국문학 독서 모임은 이태원 행사가 아님.. 청킹 설정의 문제인가..)
결과와 배운점
PDF 파일 데이터 추출에 어려움이 많았는데 이러한 “OpenDataLoader PDF” 와 같은 툴을 같이 사용한다면 더욱 정확한 답변을 주는 챗봇을 구현할 수 있을 것으로 판단됩니다.
로컬에 구현했듯이 dify 등에서도 이 툴을 활용할 수 있는 방법이 있는지 궁금합니다.