当前位置:首页|资讯

MinerU/Magic PDF本地部署记录

作者:拉哩啦哩发布时间:2024-10-20

MinerUOpenDataLab开源的一款文本提取工具,支持将PDF文件转换为易读的Markdown格式,支持:

  • 识别时自动删除页眉、页脚、页码等无关元素。

  • 智能处理双栏论文。

  • 保留文档原始结构(暂不支持多级标题识别,都输出为标题1)。

  • 提取文档中的图像、表格。

  • 自动识别公式,转换为Latex格式。

  • 支持OCR提取图片PDF。

工具全程在终端运行,指令简单,非开发者也能使用。

MinerU目前更新到了0.8.0版本,本地部署已经简化很多,且大部分步骤都有国内源加速。

MinerU整合了大量包,还要下载模型文件,实际并不轻量。如果网络较慢或使用机械硬盘,建议预留较多时间安装。

工作室主页:https://opendatalab.com/OpenSourceTools?tool=extract&navbarIsFixed=1

MinerU项目地址:https://github.com/opendatalab/MinerU

MinerU官方文档:https://github.com/opendatalab/MinerU/blob/master/README_zh-CN.md

安装过程

MinerU推荐使用Python 3.10。为了避免冲突,建议参照官方文档,使用Anaconda或者Miniconda在虚拟环境中进行部署。

1. 安装Anaconda

打开清华大学开源软件镜像站:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D

下载最新版本的exe文件,打开进行安装。安装完成后打开cmd终端,依次输入:

能够返回结果,说明安装成功。


如果无法返回结果,一般是由于未配置环境变量,需要手工添加path路径。

在我的电脑(此电脑)空白处右键选择“属性-高级系统设置-高级-环境变量”,检查用户变量和系统变量的path中是否已添加了Anaconda的安装路径。

如Anaconda的安装位置为`E:\anaconda3`,在用户变量或系统变量中添加以下路径,并移动到顶端:

    E:\anaconda3

    E:\anaconda3\Library\mingw-w64\bin

    E:\anaconda3\Library\usr\bin

    E:\anaconda3\Library\bin

    E:\anaconda3\Scripts


如果输入python打开了微软商店,则打开控制面板,选择应用-应用和功能-应用执行别名,关闭里面的python.exepython3.exe


2. 安装MinerU/magic-pdf

打开cmd终端,创建专用的虚拟环境,输入:

如果后面重新打开了终端,可使用后两句指令,重新进入虚拟环境。


安装magic-pdf,依赖包较多,界面可能会卡一段时间:

3. 下载模型文件

通过ModelScope进行下载。继续在cmd终端下输入:

python脚本会自动下载模型文件并配置好配置文件中的模型目录,配置文件可以在用户目录( "C:\Users\用户名")中找到,文件名为magic-pdf.json

运行完成后,终端会输出模型文件所在的位置,可以先截图保存。如果对默认的文件位置不满意,可以移动后,再手工修改magic-pdf.json

如果提示“'wget' 不是内部或外部命令,也不是可运行的程序或批处理文件。”,可手动下载安装脚本。

在网页浏览器中打开“https://gitee.com/myhloli/MinerU/raw/master/docs/download_models.py”,保存文件名为“download_models.py”,放到当前cmd终端显示的目录位置,然后执行下一条指令。


4. 使用CUDA进行加速

如果使用N卡,且显存大于8G(OCR加速需大于16G),可参考官方文档启用。

文档地址:https://github.com/opendatalab/MinerU/blob/master/README_zh-CN.md#使用gpu

5. 使用magic-pdf提取pdf内容

继续在cmd终端输入(重启终端需先进入虚拟环境):

文档目录可以指定到单个PDF,也可以指定到文件夹(提取文件夹内所有PDF)。win11用户可以直接右键文件,复制文件地址,粘贴到终端。


程序有个缺点是在运行过程中不会输出结果,要等到单个文件提取完成后,才能在输出目录看到。

如果PDF文件较大/页数较多,可能无法输出结果。可以先对PDF文件进行分割成多个文件,然后对文件夹进行提取。分段提取也比较方便后面的校对。


如果提示缺少module,通过`pip install`指令安装相应的`module`即可。

如果提示“json.decoder.JSONDecodeError: Extra data: line 24 column 1 (char 570)”,我这里是'magic-pdf.json'出了问题,对照样例文件,重新创建后可正常运行。

样例文件地址:https://github.com/opendatalab/MinerU/blob/master/magic-pdf.template.json

6. 输出结果

打开输出目录,可以看到输出了多个文件。提取的图表在`images`文件夹内。


一般用户关注"xx_layout.pdf"和"xx.md"两个文件即可,将两个文件并排排列(win+←/→),对照识别框进行校对。

可以看到MinerU已经自动去除了PDF文件中的页眉、页码、脚注,相比传统的OCR软件,方便很多。


Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1