PDF转化为机器可读格式的工具

MinerU

PDF转化为机器可读格式的工具

项目简介

MinerU是一款将PDF转化为机器可读格式的工具 (如markdown、json),可以很方便地抽取为任意格式。

项目地址:

复制代码
https://github.com/opendatalab/MinerU/tree/master

主要功能

  • 删除页眉、页脚、脚注、页码等元素,保持语义连贯
  • 对多栏输出符合人类阅读顺序的文本
  • 保留原文档的结构,包括标题、段落、列表等
  • 提取图像、图片标题、表格、表格标题
  • 自动识别文档中的公式并将公式转换成latex
  • 自动识别文档中的表格并将表格转换成latex
  • 乱码PDF自动检测并启用OCR
  • 支持CPU和GPU环境
  • 支持windows/linux/mac平台

由于本人使用win11, 32G内存,睿频3.7G,显存只有6G,使用CPU快速体验。我将146个页面的教学指南转为markdown超1个小时。


最后结果:

看上去还不错。

使用步骤

1. 安装magic-pdf

Anaconda 创建虚拟环境,最新版本国内镜像源同步可能会有延迟,请耐心等待。

bash 复制代码
conda create -n MinerU python=3.10
conda activate MinerU
pip install magic-pdf[full]==0.7.0b1 --extra-index-url https://wheels.myhloli.com -i https://pypi.tuna.tsinghua.edu.cn/simple
2. 下载模型权重文件

我是直接在E盘运行git,拉到E:\PDF-Extract-Kit
注意:最后这个目录有11个多G

bash 复制代码
git lfs install # 安装 Git 大文件存储插件 (Git LFS) 
git lfs clone https://huggingface.co/wanderkid/PDF-Extract-Kit # 从 Hugging Face 下载 PDF-Extract-Kit 模型

模型下载后请务必检查模型文件是否下载完整,请检查目录下的模型文件大小与网页上描述是否一致,如果可以的话用certutil校验证一下。不校验应该没有问题。

3. 拷贝配置文件并进行配置

将项目拉到E盘

bash 复制代码
git https://github.com/opendatalab/MinerU.git

在MinerU当前目录下可以获得magic-pdf.template.json配置模版文件,执行以下命令将配置文件拷贝到【你的用户】目录下,否则程序将无法运行。例如:以下命令,将magic-pdf.template.json 复制到"C:\Users\你的用户名"下,并重命名为magic-pdf.json。

bash 复制代码
# PowerShell 中执行
cp magic-pdf.template.json C:\Users\你的用户名\magic-pdf.json

编辑magic-pdf.json文件,设置models目录,请正确配置模型权重文件所在目录的【绝对路径】,否则会因为找不到模型文件而导致程序无法运行。windows系统中此路径应包含盘符,且需把路径中所有的"\"替换为"/",否则会因为转义原因导致json文件语法错误。

例如:模型放在E:/PDF-Extract-Kit/models,则model-dir的值应为"E:/PDF-Extract-Kit/models"

json 复制代码
{
    "bucket_info":{
        "bucket-name-1":["ak", "sk", "endpoint"],
        "bucket-name-2":["ak", "sk", "endpoint"]
    },
    "models-dir":"E:/PDF-Extract-Kit/models",
    "device-mode":"cpu",
    "table-config": {
        "is_table_recog_enable": false, //表格识别默认关闭,如果需要可以true
        "max_time": 400
    }
}

接下来运行magic-pdf,这个可执行文件在MinerU虚拟环境的scripts下,运行magic-pdf --help可以查看帮助

shell 复制代码
magic-pdf --help
Usage: magic-pdf [OPTIONS]

Options:
  -v, --version                display the version and exit
  -p, --path PATH              local pdf filepath or directory  [required]
  -o, --output-dir TEXT        output local directory
  -m, --method [ocr|txt|auto]  the method for parsing pdf.  
                               ocr: using ocr technique to extract information from pdf,
                               txt: suitable for the text-based pdf only and outperform ocr,
                               auto: automatically choose the best method for parsing pdf
                                  from ocr and txt.
                               without method specified, auto will be used by default. 
  --help                       Show this message and exit.


## show version
magic-pdf -v

## command line example
magic-pdf -p {some_pdf} -o {some_output_dir} -m auto
## 其中 {some_pdf} 可以是单个pdf文件,也可以是一个包含多个pdf文件的目录。 运行完命令后输出的结果会保存在{some_output_dir}目录下,

例如:执行以下命令,将当前scripts目录下的demo.pdf 自动选择解析方式,输出到e:\pdf_totxt_out

复制代码
cd D:\ProgramData\Anaconda3\envs\MinerU\scripts>
.\magic-pdf.exe -p .\demo.pdf -o e:\pdf_totxt_out -m auto

  在本文中,我们探讨了使用 MinerU 项目将 PDF 文件转换为机器可读格式的有效方法。尽管由于电脑配置较低,转换过程可能会耗费较长时间,但该工具在解析效果方面表现良好,能够有效地提取信息并转换为实用的 Markdown 格式。这种转换方式不仅提升了文本的可读性,还为后续的数据处理与分析提供了便利。借助 MinerU,我们可以更轻松地从 PDF 文档中提取关键内容,从而大大增强了信息获取的效率。

相关推荐
程序猿老A2 分钟前
GPU云服务器怎么安装AI
运维·服务器·人工智能
库拉大叔6 分钟前
从 0 到 1 做一部 AI 漫剧,知漫剧完整制作流程
人工智能·aigc
Omics Pro7 分钟前
之江实验室NAR|虚拟细胞3阶段训练范式
数据库·人工智能·算法·机器学习·自然语言处理
AIGC小尼19 分钟前
8G 显存零基础本地部署 AI 漫剧全流程|ComfyUI+Wan2.2+FFmpeg 离线成片完整方案(含代码 / 指令 / 排坑)
人工智能·ffmpeg·php·comfyui·ai漫剧
悟天特斯20 分钟前
AI驱动的楼宇节能:从“经验省电“到“算法能效“的进化之路
人工智能·物联网
破无差22 分钟前
人工智能训练师(三级)理论知识复习题-KimiK3的参考答案
人工智能
网络毒刘24 分钟前
AtomGit Actions + AI 评审草稿:PR 描述自动生成与安全敏感词门禁示例
人工智能·安全
ai_xiaogui25 分钟前
PanelAI 1.1.1重磅更新:秒级安装脚本优化 + 无公网IP算力节点组网,私有化AI管理平台全面升级
人工智能·网络协议·tcp/ip·api聚合管理·开发者ai一键部署·ai底层架构解析·ai应用快速变现
wflynn28 分钟前
语言判别增强多语言语音模型的语言学习能力
人工智能·ai
neocheng_52229 分钟前
自学、培训、项目还是认证?HR 学习 AI 的四种路径如何组合
人工智能