MinerU 不使用显卡怎么办?把 CPU 版 PyTorch 换成 CUDA 版让 RTX 4060 生效

记录 MinerU 环境中 PyTorch 显示 2.8.0+cpu、CUDA unavailable 时的排查方法,以及如何在同一个 .venv 中安装 CUDA 12.8 版 PyTorch 并验证 RTX 4060 是否生效。

如果 MinerU 环境里检查 PyTorch 后看到下面这种结果:

1
2
3
4
5
PyTorch: 2.8.0+cpu
PyTorch CUDA: None
CUDA available: False
GPU count: 0
GPU: 未检测到

基本可以确定:当前环境安装的是 CPU 版 PyTorch,所以 MinerU 不会使用 NVIDIA GPU。即使电脑里有 RTX 4060,只要 Python 环境里的 torch 是 CPU 版,MinerU 也只能走 CPU。

解决思路很直接:在同一个 .venv 里,把 torchtorchvision 换成 CUDA 版。对于 PyTorch 2.8.0,官方提供 CUDA 12.8 对应版本,可以直接安装 cu128 轮子。

先确认 NVIDIA 驱动正常

在 PowerShell 执行:

1
nvidia-smi

正常情况下应该能看到类似信息:

1
2
3
NVIDIA GeForce RTX 4060
Driver Version: ...
CUDA Version: 12.x

这里显示的 CUDA Version 是当前显卡驱动最高支持的 CUDA 版本。只要 nvidia-smi 能正常识别显卡,通常不需要单独安装完整的 CUDA Toolkit。

如果连 nvidia-smi 都无法识别显卡,先不要折腾 PyTorch,应该先更新或重新安装 NVIDIA 驱动。

进入 MinerU 使用的虚拟环境

先进入 MinerU 所在目录。这里以 C:\Work\test 为例:

1
cd C:\Work\test

如果项目使用 .venv,激活它:

1
.\.venv\Scripts\Activate.ps1

确认当前 Python 路径:

1
python -c "import sys; print(sys.executable)"

结果应当指向类似路径:

1
C:\Work\test\.venv\Scripts\python.exe

这一步很重要。你要替换的是 MinerU 实际使用的那个 Python 环境里的 PyTorch,而不是系统 Python、Conda 里的另一个环境,或者 VS Code 随便选中的解释器。

卸载 CPU 版 PyTorch

确认 .venv 已激活后,卸载当前 CPU 版:

1
uv pip uninstall torch torchvision

如果你不是用 uv 管理环境,也可以用普通 pip,但同一个环境里最好不要混乱切换工具。这里沿用 uv pip

安装 CUDA 12.8 版 PyTorch

安装 PyTorch 2.8.0 对应的 CUDA 12.8 版本:

1
uv pip install torch==2.8.0 torchvision==0.23.0 --index-url https://download.pytorch.org/whl/cu128

PyTorch 官方给出的这组版本对应关系是:

1
2
3
torch 2.8.0
torchvision 0.23.0
CUDA 12.8

CUDA 版 PyTorch 下载量可能比较大,通常会达到数 GB。网络慢时需要耐心等一下。

如果 uv 提示已经安装,但你检查后仍然是 CPU 版,可以强制重装:

1
uv pip install --reinstall torch==2.8.0 torchvision==0.23.0 --index-url https://download.pytorch.org/whl/cu128

安装后验证 CUDA 是否可用

执行:

1
python -c "import torch; print('PyTorch:', torch.__version__); print('CUDA build:', torch.version.cuda); print('CUDA available:', torch.cuda.is_available()); print('GPU count:', torch.cuda.device_count()); print('GPU:', torch.cuda.get_device_name(0) if torch.cuda.is_available() else '未检测到')"

正确结果应类似:

1
2
3
4
5
PyTorch: 2.8.0+cu128
CUDA build: 12.8
CUDA available: True
GPU count: 1
GPU: NVIDIA GeForce RTX 4060

最关键的是这一行:

1
CUDA available: True

如果这里仍然是 False,说明 PyTorch 仍然没有用上 CUDA。常见原因包括:装错环境、仍然是 CPU 版 torch、NVIDIA 驱动异常,或者 Python 解释器不是 MinerU 那个 .venv

再做一次真实 GPU 运算

只看到 CUDA available: True 还不够稳妥,可以再跑一个真实 CUDA 张量计算:

1
python -c "import torch; x=torch.randn(4096,4096,device='cuda'); y=x@x; torch.cuda.synchronize(); print('设备:', y.device); print('显存:', round(torch.cuda.memory_allocated()/1024**2,1), 'MB')"

正常结果类似:

1
2
设备: cuda:0
显存: 128.0 MB

这说明 PyTorch 不只是识别到了显卡,而且确实能在 RTX 4060 上执行 CUDA 运算。

运行 MinerU 时观察显卡

打开第二个 PowerShell 窗口,持续观察显卡:

1
nvidia-smi -l 1

然后在第一个窗口运行 MinerU:

1
mineru -p "C:\Work\test\input.pdf" -o "C:\Work\test\output"

如果没有激活虚拟环境,也可以直接调用 .venv 里的可执行文件:

1
.\.venv\Scripts\mineru.exe -p "C:\Work\test\input.pdf" -o "C:\Work\test\output"

观察 nvidia-smi,如果满足下面几个现象,基本就能确认 MinerU 正在使用 RTX 4060:

  1. 出现 python.exe
  2. 显存占用增加。
  3. 推理阶段 GPU-Util 升高。
  4. MinerU 结束后显存释放。

RTX 4060 和 MinerU 模式怎么理解

RTX 4060 属于 NVIDIA 40 系显卡,也就是 Ada Lovelace 架构,属于 MinerU 官方支持 GPU 加速的硬件范围。安装正确的 CUDA 版 PyTorch 后,普通 mineru 命令就可以使用 GPU。

如果显式指定:

1
mineru -p "input.pdf" -o "output" -b pipeline

它更偏稳定和兼容,也适合 CPU 回退或低显存场景。想使用 hybrid-enginevlm-engine 这类更依赖 VLM 的模式,就更需要确认 CUDA 版 PyTorch 已经安装成功。

常见坑

第一,装错环境。最常见的问题是你在一个 Python 环境里安装了 CUDA 版 PyTorch,但 MinerU 实际运行的是另一个 .venv。所以一定要先看:

1
python -c "import sys; print(sys.executable)"

第二,只看驱动,不看 PyTorch。nvidia-smi 正常只能说明驱动识别显卡,不代表 Python 里的 PyTorch 一定支持 CUDA。最终还是要看:

1
python -c "import torch; print(torch.__version__, torch.version.cuda, torch.cuda.is_available())"

第三,把 CUDA Toolkit 和 PyTorch CUDA 混为一谈。多数普通使用场景不需要单独安装完整 CUDA Toolkit。只要 NVIDIA 驱动正常,安装 PyTorch 官方 CUDA 轮子即可。

第四,显存被别的程序占满。RTX 4060 8GB 属于能跑但不宽裕的配置。运行 MinerU 前,最好关掉游戏、浏览器硬件加速、其他 AI 推理程序和占显存的软件。

一句话总结

看到:

1
2
PyTorch: 2.8.0+cpu
CUDA available: False

就说明 MinerU 当前用不了 RTX 4060。正确做法是在同一个 .venv 里卸载 CPU 版 torch / torchvision,再安装:

1
uv pip install torch==2.8.0 torchvision==0.23.0 --index-url https://download.pytorch.org/whl/cu128

验证结果变成:

1
2
3
PyTorch: 2.8.0+cu128
CUDA available: True
GPU: NVIDIA GeForce RTX 4060

再运行 MinerU,并用 nvidia-smi -l 1 观察 python.exe、显存和 GPU 利用率,就能确认 GPU 加速是否真正生效。

记录并分享
使用 Hugo 构建
主题 StackJimmy 设计