微信扫码
与创始人交个朋友
我要投稿
PyMuPDF4LLM,顾名思义,它是一个为pymupdf添加了LLM的输出功能的库。
PyMuPDF4LLM的特点:
PyMuPDF4LLM支持广泛的任务,从基本的文本提取到适合微调LLM的 Markdown格式的数据采集。
除了文本提取之外,该工具还可以逐页检索数据,将其保存为RAG任务所需的格式,甚至将数据直接传递给 LlamaIndex 等框架。
除了文本之外,还可以满足图像提取、分词、表格提取等细节需求。这些功能在多种情况下都很有用,包括知识库创建和情感分析。
首先,让我们安装 PyMuPDF4LLM。
pip install pymupdf4llm
用例 1:基本 Markdown 提取
让我们获取 Markdown 格式的 PDF 内容。
import pymupdf4llm
md_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 pymupdf4llm
import pathlib
md_text = pymupdf4llm.to_markdown("document.pdf")
pathlib.Path("output.md").write_bytes(md_text.encode())
您还可以以与 LlamaIndex兼容的格式检索数据。
import pymupdf4llm
llama_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 pymupdf4llm
md_text_tables = pymupdf4llm.to_markdown(
doc="document.pdf",
pages=[12] # 存在表格的页面
)
print(md_text_tables)
如果您正在构建RAG系统、微调您的LLM,或者只是在寻找出色的 PDF提取工具,可以尝试一下PyMuPDF4LLM。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-10-30
大模型与知识图谱结合用于推荐及LLM驱动分块ChunkRAG实现策略解读
2024-10-29
Genie:Uber的生成式AI随叫随到副驾驶
2024-10-29
RAG 或 Fine Tume - 为您的用例选择正确方法的权威指南
2024-10-28
一文读懂:从RAG到多模态RAG
2024-10-28
行业落地分享:腾讯混元RAG/Agent落地实践
2024-10-28
揭秘RAG神器!如何通过上下文检索与混合搜索打造超强生成效果
2024-10-27
claude提供了一种增强的上下文检索预处理
2024-10-27
全网最全国内Agent平台深度测评:扣子、Dify、FastGPT,谁是你的Agent开发首选?
2024-07-18
2024-07-09
2024-07-09
2024-05-19
2024-07-07
2024-05-05
2024-07-07
2024-07-08
2024-06-20
2024-07-09