# GPU 子项目 GPU 环境与 CPU 环境隔离,所有用户功能通过仓库根目录统一入口调用。 > 当前开发机器没有 NVIDIA 独立显卡,GPU 实机功能尚未验证。 ## 安装 依据 PaddlePaddle 官方兼容表选择 CUDA Wheel: ```bash python gpu/setup_env.py --cuda cu118 --dry-run python gpu/setup_env.py --cuda cu118 ``` 或: ```bash python gpu/setup_env.py --cuda cu126 ``` 安装脚本会: 1. 创建 `gpu/.venv` 2. 使用 PaddlePaddle CUDA 专用索引安装依赖 3. 成功后创建 `gpu/.gpu-ready` 无 `nvidia-smi` 时默认拒绝安装。`--allow-no-gpu` 仅用于准备环境或 CI,不代表环境可以推理。 ## 统一入口 ```bash python ocr.py verify --device gpu python ocr.py data/images/手写01.png --device gpu --warmup 1 --rounds 3 python ocr.py data/images/ --device gpu python ocr.py data/documents/sample.pdf --device gpu --pdf-mode hybrid ``` 统一入口只调用已经安装完成的 `gpu/.venv`,不会从默认 PyPI 重新解析 `paddlepaddle-gpu`,也不会自动回退到 CPU。 ## PDF 混合模式 `--pdf-mode hybrid` 会先读取 PDF 文本层。只有需要 OCR 的页面才初始化 GPU 模型,因此纯电子 PDF 不会创建 CUDA 模型或占用大块显存。 ```bash python ocr.py data/documents/sample.pdf \ --device gpu \ --device-id 0 \ --pdf-mode hybrid ``` ## 当前限制 - 仅单 GPU - 批量图片使用单模型串行处理 - 未启用 TensorRT/FP16/BF16 - 未验证 PaddleOCR-VL-1.6 在目标显卡上的显存需求 - 未实现多 GPU 调度 目标 GPU 机器安装后,先执行: ```bash python ocr.py verify --device gpu ```