PDF文件转Markdown,基于开源项目marker
首先我们来问下deepseek
为啥要选marker呢
基于深度学习,一看就逼格拉满。搞科研必备,效果应该不会太差。
看下官网
https://github.com/VikParuchuri/marker
一看头像是个印度佬,自吹——又快又好。那就试试吧。
安装步骤
安装Anaconda
https://www.anaconda.com/docs/main
进入Anaconda
进入conda命令行
安装系统级依赖
Poppler(PDF解析工具):
下载地址:Releases · oschwartz10612/poppler-windows · GitHub
解压到 D:\Information_Technology\App\pdf2md_package(路径可自定义,建议把这一套全放一个文件夹)
Tesseract OCR(用于OCR识别):
下载地址:Home · UB-Mannheim/tesseract Wiki · GitHub
安装时勾选中文语言包,记住安装路径(如 D:\Information_Technology\App\pdf2md_package\Tesseract-OCR)
并添加到系统环境变量
查看是否Tesseract OCR是否安装成功,是否安装中文库
如上,安装成功
创建虚拟环境
conda create -n marker_env python=3.10 // 还未试过3.12,理论上3.12会向下兼容conda env list // 查看创建的虚拟环境是否成功conda activate marker_env // 激活环境
安装PyTorch、Marker
1、安装PyTorch(CPU版本,无显卡用户用此命令):
pip3 install torch torchvision torchaudio
安装PyTorch(国内镜像加速)
Marker依赖PyTorch,根据硬件选择安装命令:
- CPU版本(无GPU时使用):
pip install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple
- GPU版本(需CUDA支持):
访问PyTorch官网生成对应命令,替换为清华镜像源:pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121 -i https://pypi.tuna.tsinghua.edu.cn/simple
有显卡的、可以在官网上的Start Locally | PyTorch,根据自己电脑的配置,选择后在箭头处复制语句后执行。(我的是图中这条命令行)
2、安装Marker,耐心等待插件安装。
pip install marker-pdf
或
使用国内镜像源安装marker-pdf
:
pip install marker-pdf -i https://pypi.tuna.tsinghua.edu.cn/simple
模型下载配置
Marker运行时需下载预训练模型(如布局分割、OCR模型),默认从Hugging Face下载。国内用户可通过以下方式加速:
-
配置HF镜像源
设置环境变量(临时生效):$env:HF_ENDPOINT = "https://hf-mirror.com"
或永久生效:在系统环境变量中添加
HF_ENDPOINT=https://hf-mirror.com
。 -
手动下载模型(可选)
若自动下载失败,可从HF镜像站手动下载模型至本地路径(默认路径为~/.cache
),参考项目文档中的模型列表。
执行marker_single 命令会自动下载模型到如下路径
模型自动下载的位置:
C:\Users\longz\AppData\Local\datalab\datalab\Cache\models
测试文件转换
准备一个PDF文件,路径不含中文或空格
执行转换命令:
marker_single D:\Information_Technology\App\pdf2md_package\input_pdf\DeepSeek15天入门手册.pdf --languages eng+chi_sim --llm_service cpu --output_dir D:\Information_Technology\App\pdf2md_package\output_md
或
如果是使用GPU的,并且使用默认的Surya
marker_single /path/to/yourfile.pdf /path/to/output/folder --langs "zh,en"
命令的解释:
--命令里没有其他博主的--batch_multiplier 2,有这个的都是有显卡的;-- marker_single:调用marker_single执行转换操作;-- D:\Information_Technology\App\pdf2md_package\input_pdf\DeepSeek15天入门手册.pdf:需要转换的文件的所在目录(可自定义);--languages eng+chi_si:设置语言,可查官网或帮助,支持的语言还是有蛮多的;--llm_service cpu:强制使用CPU,也可以不加此句;--output_dir:文件转换后的存放目录(可自定义)。
看下效果
效果拉满,格式基本跟原文档一致,甚至更简洁美观。印度佬确实有一手