소개
최근 RAG(Retrieval-Augmented Generation) 구축을 준비하면서, 데이터 전처리와 문서 변환의 중요성을 크게 느꼈습니다. Microsoft의 오픈소스 라이브러리인 markitdown은 매우 유용했지만, 실제 프로젝트에서는 대량의 파일을 한 번에 변환할 수 있는 기능이 필요했습니다. 그래서 이를 보완하는 전용 문서 변환 툴을 만들어보기로 했습니다. 💡
1 차 version 완료후, 추가로 OCR을 적용하여 이미지 파일을 markdown 변환 기능을 추가 했습니다.
진행 방법
사용 도구
markitdown 라이브러리
Claude Code: PRD, TRD, Tasks 문서 자동화 작성
기본 UI설계
Python + PyQt6: GUI 기반 툴 개발
진행 과정
markitdown 기본 기능 테스트
Claude Code를 활용해 개발 문서( PRD, TRD, Tasks) 작성
Python PyQt6를 활용한 대량 파일 변환 툴 개발
이미지 등 비정형 데이터 전처리 기능 추가
화면 중앙에 파란색 화살표가있는 컴퓨터의 스크린 샷
한국어 프로 그램의 스크린 샷
Open AI LLM 설정
이미지 변환
원본 이미지
변환된 Markdown 파일
--- # 변환 정보 - **원본 파일**: 스크린샷 2023-07-11 054812.png - **파일 크기**: 584.0 KB - **파일 타입**: PNG - **수정일**: 2023-07-11 05:48:12 - **변환일**: 2025-09-24 20:48:12 - **변환 시간**: 48.65s --- # 스크린샷 2023-07-11 054812.png **Image OCR Result** ```markdown # 문제상황 및 데이터 살펴보기 ## 반도체 웨이퍼 칩 데이터 분석 † 반도체 8대 공정 - PHOTO > ETCH > CLN > CMP > CVD > METEL > DIFF > IMP | 구분 | 공정명 | 비고 | |------------|--------|------------------------------------------------| | PHOTO | PHOTO | Pattern의 시작 | | ETCH | 이방성 식각 (Plasma를 이용한 화학적 식각, 불순물 제거에도 활용) | | | Etching / CLN | CLN | 등방성 식각 (용액을 활용한 화학적 식각) | | | CMP | 평탄화 공정 (Slurry라는 화학 용액 + 회전하는 PAD를 활용한 평탄화) | | | CVD | Depo용 가스를 Wafer 표면에 흡착시켜 증착 | | | Deposition | METAL | Sputter or 도금 방식으로 이용한 증착 | | | DIFF | 고온의 설비 안에서 Ion을 주입하여 전극을 만들게 하는 공정 | | | Implantation| IMP | | ``` --- *OCR Confidence Score: 0.95*
tool download path : https://github.com/suhwanju/MarkItDownGUI.git
결과와 배운점 도움 받은 글
Microsoft markitdown GitHub: https://github.com/microsoft/markitdown