반응형
RAG를 위해 벡터 DB에 pdf 파일을 올리려면 텍스트를 추출해야 합니다.

위와 같은 표가 있는 문서를 텍스트로 처리하는 게 가장 어려운 문제입니다.
무료면서 문서 형식을 markdown으로 변환해 주는 괜찮은 도구로 PyMuPDF4LLM과 PyMyPDFLoader가 있습니다.
1. PyMuPDF4LLM 예시
!pip install pymupdf4llm
import pymupdf4llm
md_text = pymupdf4llm.to_markdown("KDS677015.pdf", pages=[8])
print(md_text)

너무 길어서 markdown 부분부터 첨부했습니다.
Markdown 성능 괜찮은데, 이상하게 markdown 이후 같은 내용이 뒤에 반복돼서 나오는 문제가 있습니다.
2. PyMuPDFLoader 예시
!pip install -qU langchain_community pymupdf
from langchain_community.document_loaders import PyMuPDFLoader
loader = PyMuPDFLoader(
"KDS677015.pdf",
mode="page",
extract_tables="markdown",
)
docs = loader.load()
print(len(docs))
print(docs[8].page_content)

Markdown 처리되고 딱 끝납니다.
PyMuPDF4LLM, PyMuPDFLoader 둘이 비슷한 기능인데 PyMuPDFLoader가 조금 더 좋은 것 같습니다.
반응형
'AI > LLM' 카테고리의 다른 글
| 임베딩 모델 한국어 성능 비교(BGE-M3 vs E5-large) (0) | 2025.04.10 |
|---|---|
| QWQ vs Llama3.3 Ollama 기반 Agentic RAG 해보기 (0) | 2025.04.09 |
| Qwen2.5-VL-32B 모델로 image to text(이미지로 텍스트 생성) 해보기(Gemma3 비교) (0) | 2025.04.03 |
| Qwen2.5-VL-32B 모델로 OCR, 질문 답 해보기(LLM OCR) (0) | 2025.04.02 |
| Gemma3로 image to text(이미지로 텍스트 생성) 해보기 (0) | 2025.04.02 |