MinerU_安装部署完全指南
MinerU 安装部署完全指南:CPU、GPU、Docker 保姆级教程
MinerU 是由 OpenDataLab 开源的 PDF 文档解析工具,GitHub 星标 25000+,GitHub 地址:https://github.com/opendatalab/MinerU。它可以将 PDF 精准转换为 Markdown、JSON 等格式,支持 OCR 109 种语言识别、公式转 LaTeX、表格转 HTML、自动阅读顺序排序、标题分级、水印过滤等功能。
当前版本:v3.1.x本文将从零开始,一步一步带你完成 所有部署方式,涵盖每一个安装细节和常见问题的解决方案。无论你是 Windows 用户还是 Linux 用户,无论你是用 CPU 还是 GPU,都能找到对应的完整教程。
目录
- 一、硬件与软件环境要求
- 二、安装前的准备工作
- 三、CPU 部署(纯 CPU 环境)
- 四、GPU 部署(Conda + CUDA 加速)
- 五、Docker 部署
- 六、Gradio Web 界面部署
- 七、HTTP Client/Server 分离部署
- 八、常用命令与使用方式
- 九、常见问题排查 FAQ
- 十、总结与方案选择
一、硬件与软件环境要求
1.1 硬件要求
| 硬件 | 最低要求 | 推荐配置 |
|---|---|---|
| CPU | x86_64 或 ARM64 | Intel i5 / AMD Ryzen 5 及以上 |
| 内存 | 16GB | 32GB 及以上 |
| 硬盘空间 | 20GB(SSD 推荐) | 100GB(模型文件较大) |
| GPU(可选) | 6GB 显存的 NVIDIA 显卡(Volta 架构及之后) | 8GB+ 显存 |
GPU 支持:所有 2017 年及之后的 NVIDIA 显卡(RTX 20/30/40 系列、GTX 16 系列、Tesla/A100/H100 等)。不满足可用 CPU 模式。
1.2 软件要求
| 软件 | 版本 | 说明 |
|---|---|---|
| 操作系统 | Windows 10/11、Linux (2019+)、macOS 14+ | 三平台均可用 |
| Python | 3.10 ~ 3.12(Windows 不支持 3.13) | 通过 Conda 管理 |
| Conda | 任意版本 | 强烈推荐用于环境管理 |
| NVIDIA 驱动 | 最新 | 仅 GPU 模式需要 |
1.3 检查 GPU 和 CUDA(GPU 用户必看)
nvidia-smi
输出示例:
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 572.70 Driver Version: 572.70 CUDA Version: 12.8 |
|-----------------------------------------+------------------------+----------------------+
| 0 NVIDIA GeForce RTX 3050 WDDM | 00000000:01:00.0 On | N/A |
| 41% 44C P0 25W / 70W | 1050MiB / 6144MiB | 0% Default |
+-----------------------------------------+------------------------+----------------------+
关键信息:
- CUDA Version: 12.8 — 驱动支持的最高 CUDA 版本
- RTX 3050 / 6144MiB — 显卡型号和 6GB 显存
注意:这里的 CUDA 版本是驱动支持的上限。安装 PyTorch 时选择 cu124(CUDA 12.4) 兼容性最好,向下兼容。
二、安装前的准备工作
2.1 安装 Conda
Windows 用户:
前往清华大学镜像站下载:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
选择最新版本(如 Anaconda3-2020.11-Windows-x86.exe),下载后运行安装程序。
Linux 用户:
# 下载 Miniconda(轻量版)
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh
# 运行安装脚本
bash Miniconda3-latest-Linux-x86_64.sh
# 按提示操作,完成后刷新配置
source ~/.bashrc
验证:
conda --version
# 应输出:conda 24.x.x
2.2 配置 Conda 国内镜像源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
2.3 创建并激活 Conda 虚拟环境
conda create -n mineru python=3.12 -y
conda activate mineru
为什么选 Python 3.12? Windows 下
ray依赖不支持 Python 3.13,3.12 是当前最佳选择。
2.4 配置 pip 国内镜像源
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config set global.trusted-host mirrors.aliyun.com
安装 uv(比 pip 更快的包安装工具):
pip install uv
三、CPU 部署(纯 CPU 环境)
适用场景: 没有 NVIDIA 显卡、只需快速体验、偶尔解析少量 PDF。
预计耗时: 20-40 分钟(主要取决于模型下载速度)
3.1 安装 MinerU
uv pip install -U "mineru[all]"
重要提醒:这条命令安装的是 CPU 模式!
mineru[all]会自动安装 PyTorch 的 CPU 版本。即使你有 NVIDIA 显卡,执行这条命令后也 无法使用 GPU 加速。如果你的设备有 NVIDIA 显卡且希望使用 GPU 加速,请跳到 第四章 GPU 部署。
3.2 下载模型文件
国内用户使用 ModelScope(魔搭)源:
mineru-models-download -s modelscope -m all
模型文件约 3-5GB,下载完成后会自动生成配置文件
mineru.json(位于用户目录)。
3.3 运行测试
建议显式指定 pipeline 后端(轻量、稳定、纯 CPU 即可运行):
mineru -p "你的PDF路径" -o "输出目录" -b pipeline
例如:
mineru -p "demo1.pdf" -o "./output" -b pipeline
解析完成后,输出目录会包含 .md(Markdown)和 .json 等格式的结果文件。
CPU 模式速度较慢,处理 10 页纯文字 PDF 约需 2-5 分钟。如果需要批量处理大量 PDF,建议使用 GPU 模式。
四、GPU 部署(Conda + CUDA 加速)
适用场景: 有 NVIDIA 显卡(显存 >= 6GB),需要高性能解析,批量处理 PDF。
预计耗时: 30-60 分钟(主要取决于 PyTorch 和模型下载速度)
速度提升: 相比 CPU 模式快 3-15 倍
4.1 安装 MinerU
uv pip install -U "mineru[all]"
关键说明: 这一步会自动安装 PyTorch 的 CPU 版本。因此接下来必须执行第 4.2 步手动覆盖为 CUDA 版本。
4.2 关键步骤:安装 CUDA 版本的 PyTorch
这是最容易踩坑的一步! 如果你只执行了 uv pip install -U "mineru[all]" 就开始使用,那么你用的仍然是 CPU 模式,即使你有 RTX 显卡。
必须手动将 PyTorch 替换为 CUDA 版本:
pip install --force-reinstall torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
命令解释:
--force-reinstall— 强制重新安装,覆盖mineru[all]自动安装的 CPU 版 PyTorch--index-url .../cu124— 从 PyTorch 官方 CUDA 12.4 仓库下载- 虽然你的 CUDA 驱动可能是 12.8,但 cu124 向下兼容,兼容性最好
4.3 验证 CUDA 可用
python -c "import torch; print('CUDA:', torch.cuda.is_available()); print('Device:', torch.cuda.get_device_name(0) if torch.cuda.is_available() else 'None')"
正常输出:
CUDA: True
Device: NVIDIA GeForce RTX 3050
必须看到 CUDA: True,否则 GPU 不可用! 如果返回 False,说明 PyTorch 仍是 CPU 版本,请重新执行 4.2 步。
4.4 下载模型文件
mineru-models-download -s modelscope -m all
如果之前 CPU 模式已经下载过模型,可以跳过此步。CPU 和 GPU 共用同一套模型文件。
4.5 运行测试
GPU 模式下直接运行即可,会自动使用 GPU 加速:
mineru -p "你的PDF路径" -o "输出目录"
例如:
mineru -p "demo1.pdf" -o "./output"
运行过程中可以在另一个终端窗口运行 nvidia-smi -l 1 观察 GPU 使用情况,应该能看到 GPU 利用率和显存占用上升。
4.6 CPU vs GPU 性能对比参考
以同一份 20 页扫描版 PDF 为例:
| 模式 | 耗时 | 速度提升 |
|---|---|---|
| CPU | 约 15-30 分钟 | 基准 |
| GPU (RTX 3050, 6GB) | 约 3-8 分钟 | 约 3-5 倍 |
| GPU (RTX 3060, 12GB) | 约 2-5 分钟 | 约 5-8 倍 |
| GPU (RTX 4090, 24GB) | 约 1-2 分钟 | 约 10-15 倍 |
4.6 监控 GPU 使用情况
运行解析任务时,在另一个终端窗口运行:
nvidia-smi -l 1
关键指标:
- GPU-Util — GPU 利用率,越高说明 GPU 越充分地被利用
- Memory-Usage — 显存使用量,如果接近上限可能会 OOM
- Temp — GPU 温度,超过 85°C 建议增加散热
五、Docker 部署
适合服务器部署、团队协作、CI/CD 集成、环境隔离等场景。
仅支持 Linux 和 Windows(WSL2)。macOS 用户请用前面提到的 Conda 方式。
5.1 前置条件
- 已安装 Docker(Windows 用户安装 Docker Desktop 并启用 WSL2 后端)
- GPU 模式还需安装 NVIDIA Container Toolkit
验证 Docker GPU 支持:
docker run --rm --gpus=all nvidia/cuda:12.1.0-base-ubuntu22.04 nvidia-smi
5.2 获取 Dockerfile
MinerU 项目自带两个 Dockerfile:
| 文件 | 适用场景 | 模型源 |
|---|---|---|
docker/china/Dockerfile |
国内用户 | ModelScope(魔搭) |
docker/global/Dockerfile |
海外用户 | HuggingFace |
国内用户:
# 如果你已 clone 项目,进入目录
cd MinerU/docker/china
# 或者复制 Dockerfile 到空目录
cp MinerU/docker/china/Dockerfile ./
5.3 构建镜像
docker build -t mineru:latest .
构建过程约 30-60 分钟,主要耗时在下载安装包和模型。
5.4 运行容器
进入容器交互:
docker run -it --name mineru --gpus=all mineru:latest /bin/bash
挂载宿主机目录解析:
docker run --rm --gpus=all \
-v /d/pdfs:/data/pdfs \
-v /d/output:/data/output \
mineru:latest \
mineru -p /data/pdfs/sample.pdf -o /data/output
说明:
-v挂载目录,--rm容器运行结束后自动删除,--gpus=all启用 GPU。
CPU 模式运行(去掉 --gpus=all):
docker run --rm -v /d/pdfs:/data/pdfs -v /d/output:/data/output mineru:latest mineru -p /data/pdfs/sample.pdf -o /data/output -b pipeline
六、Gradio Web 界面部署
提供图形化 Web 界面,适合不喜欢命令行的用户。
6.1 启动 Gradio
conda activate mineru
mineru-gradio --server-name 0.0.0.0 --server-port 7860
6.2 访问
浏览器打开:http://127.0.0.1:7860
外网访问:http://你的IP地址:7860

MinerU Gradio 界面展示
七、HTTP Client/Server 分离部署
这种架构将 MinerU 的推理服务和客户端调用分离,适合 分布式部署、多机协同、边缘设备接入 等场景。推理服务运行在一台机器上(通常是有 GPU 的服务器),客户端通过 HTTP 协议发送解析请求并获取结果。
核心优势: 客户端机器不需要安装 PyTorch 等重型依赖,只需一个轻量 HTTP Client 即可调用远程 GPU 服务器的解析能力。
7.1 架构说明
MinerU 提供两种 HTTP Client 后端:
| 后端名称 | 说明 | 本地依赖要求 |
|---|---|---|
vlm-http-client |
轻量远程客户端,通过 HTTP 调用远程 VLM 服务 | 不要求本地安装 torch |
hybrid-http-client |
混合模式,需要本地具备 pipeline 依赖 | 需要本地安装 mineru[pipeline] 及 torch 等依赖 |
7.2 启动 OpenAI 兼容服务器
首先在有 GPU 的机器上启动推理服务(需要先安装 vllm 或 lmdeploy 环境):
# 启动 OpenAI 兼容服务器,默认端口 30000
mineru-openai-server --port 30000
Tip: 该服务基于 vllm 或 lmdeploy 推理框架,因此需要预先安装对应环境:
# 安装 vllm 环境 pip install vllm # 或安装 lmdeploy 环境 pip install lmdeploy
服务启动后,会监听 http://127.0.0.1:30000(或你指定的地址)。
7.3 使用 HTTP Client 连接服务器
在另一个终端中,使用 HTTP Client 连接 OpenAI 兼容服务器进行文档解析:
# 使用 hybrid-http-client 后端(需要本地有 pipeline 依赖)
mineru -p <input_path> -o <output_path> -b hybrid-http-client -u http://127.0.0.1:30000
# 使用 vlm-http-client 后端(轻量,不要求本地安装 torch)
mineru -p <input_path> -o <output_path> -b vlm-http-client -u http://127.0.0.1:30000
参数说明:
-p <input_path>— 要解析的 PDF/图片/DOCX 等文件路径-o <output_path>— 输出目录-b— 指定后端类型(hybrid-http-client或vlm-http-client)-u— 远程 OpenAI 兼容服务器的地址
7.4 典型部署场景
场景一:本机 Server + Client
所有组件在同一台机器上运行,适合单机多进程并行处理:
# 终端 1:启动服务器
mineru-openai-server --port 30000
# 终端 2:发起解析请求
mineru -p document.pdf -o ./output -b hybrid-http-client -u http://127.0.0.1:30000
场景二:远程服务器 + 轻量客户端
服务器(有 GPU)运行推理服务,客户端(无 GPU、无 PyTorch)远程调用:
# 服务器端(192.168.1.100,有 GPU)
mineru-openai-server --port 30000 --host 0.0.0.0
# 客户端(无 GPU 的笔记本)
mineru -p document.pdf -o ./output -b vlm-http-client -u http://192.168.1.100:30000
vlm-http-client的优势: 客户端只需安装 mineru 核心包,不需要 torch 等重型依赖,非常适合边缘设备或资源受限的环境。
场景三:多客户端共享一台 GPU 服务器
多个客户端同时连接一台 GPU 服务器,实现资源复用:
客户端 A (192.168.1.10) ──┐
客户端 B (192.168.1.11) ──┤── GPU 服务器 (192.168.1.100:30000)
客户端 C (192.168.1.12) ──┘
每个客户端使用相同的服务器地址发起解析请求。
八、常用命令与使用方式
7.1 命令行解析
# 基本用法(自动选择后端,GPU 用户优先使用此方式)
mineru -p <PDF路径> -o <输出目录>
# 指定 pipeline 后端(CPU 用户推荐)
mineru -p <PDF路径> -o <输出目录> -b pipeline
# 指定 hybrid-auto-engine 后端(GPU 用户,高精度)
mineru -p <PDF路径> -o <输出目录> -b hybrid-auto-engine
# 指定 vlm-auto-engine 后端(GPU 用户,VLM 高精度)
mineru -p <PDF路径> -o <输出目录> -b vlm-auto-engine
7.2 常用命令速查
| 操作 | 命令 |
|---|---|
| 创建环境 | conda create -n mineru python=3.12 -y |
| 激活环境 | conda activate mineru |
| 安装 MinerU | uv pip install -U "mineru[all]" |
| 安装 CUDA PyTorch(GPU 必须) | pip install --force-reinstall torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124 |
| 验证 GPU | python -c "import torch; print(torch.cuda.is_available())" |
| 下载模型(国内) | mineru-models-download -s modelscope -m all |
| 下载模型(海外) | mineru-models-download -s huggingface -m all |
| 解析 PDF | mineru -p sample.pdf -o ./output |
| 启动 Gradio | mineru-gradio --server-name 0.0.0.0 --server-port 7860 |
| 启动 OpenAI 兼容服务器 | mineru-openai-server --port 30000 |
| HTTP Client 远程调用 | mineru -p sample.pdf -o ./output -b vlm-http-client -u http://服务器IP:30000 |
| 查看版本 | mineru --version |
| 查看帮助 | mineru --help |
7.3 配置文件说明
模型下载后自动生成 mineru.json(位于用户目录),内容示例:
{
"models-dir": {
"pipeline": "C:\\Users\\用户名\\.cache\\modelscope\\hub\\models\\OpenDataLab\\PDF-Extract-Kit-1___0",
"vlm": "C:\\Users\\用户名\\.cache\\modelscope\\hub\\models\\OpenDataLab\\MinerU2___5-Pro-2604-1___2B"
},
"config_version": "1.3.1"
}
| 字段 | 说明 |
|---|---|
models-dir.pipeline |
pipeline 后端模型路径 |
models-dir.vlm |
VLM 后端模型路径 |
7.4 可用后端一览
| 后端名称 | 特点 | 适用场景 |
|---|---|---|
pipeline |
快速稳定、无需 GPU | CPU 用户、追求速度 |
hybrid-auto-engine |
高精度,原生文本提取 | 高精度需求、GPU 用户 |
vlm-auto-engine |
VLM 视觉语言模型 | 复杂版面、GPU 用户 |
vlm-http-client |
轻量远程客户端,不要求本地安装 torch | 边缘设备、远程调用 |
hybrid-http-client |
混合 HTTP 客户端 | 需要本地 pipeline 依赖 |
7.5 Python API 调用
from mineru.tools.cli import do_parse
# 一行代码解析
do_parse("sample.pdf", "./output")
九、常见问题排查 FAQ
Q1: uv pip install -U "mineru[all]" 后 GPU 不可用?
这是最常见的误区!
mineru[all] 依赖中包含 PyTorch,但 pip 默认安装的是 CPU 版本。即使你有 NVIDIA 显卡,执行这条命令后也只能用 CPU 模式。
解决方案: 安装完成后,再执行一条命令覆盖为 CUDA 版 PyTorch:
pip install --force-reinstall torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
然后验证:
python -c "import torch; print(torch.cuda.is_available())"
# 必须输出 True
Q2: 安装时出现依赖冲突怎么办?
解决方案: 使用干净的 Conda 环境
conda env remove -n mineru -y
conda create -n mineru python=3.12 -y
conda activate mineru
pip install uv
uv pip install -U "mineru[all]"
# GPU 用户继续执行:
pip install --force-reinstall torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
Q3: CUDA 不可用(torch.cuda.is_available() 返回 False)
排查步骤:
步骤 1:确认当前 PyTorch 版本
python -c "import torch; print(torch.__version__)"
如果版本号中不包含 +cu124(如显示 2.8.0+cpu),说明是 CPU 版本。
步骤 2:强制安装 CUDA 版本
pip install --force-reinstall torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
步骤 3:验证
python -c "import torch; print(torch.cuda.is_available())"
# 应输出: True
步骤 4:如果仍然为 False
检查 NVIDIA 驱动是否正确安装:
nvidia-smi
如果这个命令报错,说明显卡驱动有问题,需要先修复驱动。
Q4: 模型下载失败
解决方案: 切换到另一个镜像源
# 如果 ModelScope 下载失败,换 HuggingFace
mineru-models-download -s huggingface -m all
Q5: 显存不足 (OOM)
解决方案: 换用轻量后端
# 使用 pipeline 后端(显存占用最低)
mineru -p sample.pdf -o ./output -b pipeline
Q6: Windows 中文路径问题
为避免编码问题,PDF 文件路径尽量使用英文。
Q7: 如何更新到最新版本?
conda activate mineru
uv pip install -U "mineru[all]"
# GPU 用户别忘了重新安装 CUDA 版 PyTorch
pip install --force-reinstall torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
mineru-models-download -s modelscope -m all
十、总结与方案选择
9.1 各部署方式对比
| 部署方式 | 适合谁 | 安装难度 | 速度 | 维护成本 |
|---|---|---|---|---|
| 本机 CPU | 个人体验、无 GPU | 低 | 慢 | 低 |
| 本机 GPU | 日常使用、有 GPU | 中 | 快 3-15 倍 | 低 |
| Docker | 服务器、团队协作 | 中 | 取决于配置 | 低 |
| Gradio Web | 非技术用户 | 低 | 取决于底层 | 低 |
| HTTP Client/Server | 分布式部署、多机协同 | 中高 | 取决于服务器配置 | 中 |
9.2 推荐方案
| 场景 | 推荐 | 预计时间 |
|---|---|---|
| 个人体验(无 GPU) | 本机 CPU 部署 | 20-40 分钟 |
| 个人体验(有 GPU) | 本机 GPU 部署 | 30-60 分钟 |
| 团队/生产环境 | Docker GPU 部署 | 60-120 分钟 |
| 提供 Web 服务 | GPU + Gradio | 30-60 分钟 |
| 多机协同/边缘设备 | HTTP Client/Server | 30-60 分钟 |
9.3 关键区别速览:CPU vs GPU 安装
| 步骤 | CPU 模式 | GPU 模式 |
|---|---|---|
| 安装 MinerU | uv pip install -U "mineru[all]" |
uv pip install -U "mineru[all]" |
| 安装 CUDA PyTorch | 不需要 | 必须:pip install --force-reinstall torch ... --index-url .../cu124 |
| 验证 | python -c "import torch; print(torch.cuda.is_available())" 返回 False 正常 |
必须返回 True |
| 运行 | mineru -p xxx.pdf -o ./output -b pipeline |
mineru -p xxx.pdf -o ./output |
遇到问题? 前往 MinerU GitHub Issues 搜索或提交,附上操作系统版本、Python 版本、显卡型号及完整错误日志。

浙公网安备 33010602011771号