微信扫码
添加专属顾问
我要投稿
PyMuPDF4LLM,顾名思义,它是一个为pymupdf添加了LLM的输出功能的库。
PyMuPDF4LLM的特点:
PyMuPDF4LLM支持广泛的任务,从基本的文本提取到适合微调LLM的 Markdown格式的数据采集。
除了文本提取之外,该工具还可以逐页检索数据,将其保存为RAG任务所需的格式,甚至将数据直接传递给 LlamaIndex 等框架。
除了文本之外,还可以满足图像提取、分词、表格提取等细节需求。这些功能在多种情况下都很有用,包括知识库创建和情感分析。
首先,让我们安装 PyMuPDF4LLM。
pip install pymupdf4llm
用例 1:基本 Markdown 提取
让我们获取 Markdown 格式的 PDF 内容。
import pymupdf4llmmd_text = pymupdf4llm.to_markdown("document.pdf")以 Markdown 格式获取可以保留标题和列表等结构,使其成为 LLM 训练数据的理想选择。
仅提取您需要的页面也很容易。
import pymupdf4llm# 只抽取指定的第8页,第9页md_text = pymupdf4llm.to_markdown("document.pdf", pages=[8, 9])它非常高效,因为您可以从大型PDF中仅提取所需的部分。
让我们将提取的 Markdown 保存到文件中。
import pymupdf4llmimport pathlibmd_text = pymupdf4llm.to_markdown("document.pdf")pathlib.Path("output.md").write_bytes(md_text.encode())您还可以以与 LlamaIndex兼容的格式检索数据。
import pymupdf4llmllama_reader = pymupdf4llm.LlamaMarkdownReader()llama_docs = llama_reader.load_data("document.pdf")提取图像也很容易。
md_text_images = pymupdf4llm.to_markdown(doc="document.pdf",pages=[1, 11],page_chunks=True,write_images=True,image_path="images",image_format="png",dpi=300)
还可以对数据进行分块并使用元数据检索它。
md_text_chunks = pymupdf4llm.to_markdown(doc="document.pdf",pages=[0, 1, 2],page_chunks=True)
它还支持您想要以字为单位获取数据的情况。
md_text_words = pymupdf4llm.to_markdown(doc="document.pdf",pages=[1, 2],page_chunks=True,write_images=True,image_path="images",image_format="png",dpi=300,extract_words=True)print(md_text_words[0]['words'][:5])
import pymupdf4llmmd_text_tables = pymupdf4llm.to_markdown(doc="document.pdf",pages=[12]# 存在表格的页面)print(md_text_tables)
如果您正在构建RAG系统、微调您的LLM,或者只是在寻找出色的 PDF提取工具,可以尝试一下PyMuPDF4LLM。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2026-05-20
AIOps探索:给不能联网的客户做一个AI运维助手到底有多难?
2026-05-18
别再错过啦,AI Agent记忆革命:95.2%检索率的持久记忆系统深度解析
2026-05-18
有多少人把Agent与RAG的检索策略,简化成了 if-else?
2026-05-18
RAG 全链路技术详解
2026-05-18
捅破个人AI天花板!YC总裁开源GBrain:8层架构打造AI第二大脑,解决记忆难题,狂揽 1.6w Star!网友:第六层才是护城河!
2026-05-16
RAG 在企业的落地,从来不是一个“大模型问题”
2026-05-14
2026年知识库幻觉根治指南:从 Naive RAG 到 Agentic RAG
2026-05-11
到底是谁会相信RAG已死啊?
2026-03-23
2026-04-06
2026-02-22
2026-03-18
2026-03-20
2026-02-27
2026-02-21
2026-03-21
2026-03-31
2026-04-27
2026-05-20
2026-05-18
2026-05-11
2026-05-07
2026-05-06
2026-04-27
2026-04-21
2026-03-17