PaddleOCR icon indicating copy to clipboard operation
PaddleOCR copied to clipboard

Autodl 平台中 VGPU 32GB 环境下 PaddleOCR/VLLM 依赖安装失败,陷入“死亡依赖循环”

Open nlpygq-svg opened this issue 1 month ago • 2 comments

🔎 Search before asking

  • [x] I have searched the PaddleOCR Docs and found no similar bug report.
  • [x] I have searched the PaddleOCR Issues and found no similar bug report.
  • [x] I have searched the PaddleOCR Discussions and found no similar bug report.

🐛 Bug (问题描述)

好的,这是去除所有 Markdown 格式(包括加粗、列表、表格和标题符号)的纯文本 Issue 报告:


Issue: Autodl 环境下 PaddleOCR/VLLM 依赖安装失败,陷入“死亡依赖循环”

  1. 问题描述 (Problem Description)

尝试在 Autodl 平台上部署 PaddleOCR 的视觉语言模型 (VLM) 推理服务,并使用 vllm 作为推理加速后端时,安装核心依赖 Flash Attention 环节频繁发生内存溢出 (OOM),并且在尝试降级 PyTorch 版本后,环境陷入依赖版本冲突的循环,无法完成部署。

  1. 环境信息 (Environment Details)

组件 | 原始配置 (Failed) | 降级尝试 (Failed) -- | -- | -- 云平台/容器 | Autodl 预配置环境 | Autodl 预配置环境 基础框架 | PyTorch 2.8 | PyTorch 2.7 CUDA 版本 | 12.8 | 12.8 Python 版本 | 3.12 | 3.12 核心依赖 1 | PaddleOCR (最新版) | PaddleOCR (最新版) 核心依赖 2 | vllm (通过 paddleocr install_genai_server_deps vllm 安装) | vllm
  1. 复现步骤 (Steps to Reproduce)

  2. 在 Autodl 平台上选择 PyTorch 2.8 / CUDA 12.8 / Python 3.12 的基础镜像。

  3. 创建并激活虚拟环境:

    python -m venv .venv_vlm

    source .venv_vlm/bin/activate

  4. 安装 PaddleOCR:

    python -m pip install "paddleocr[doc-parser]"

  5. 尝试安装 VLLM 依赖:

    paddleocr install_genai_server_deps vllm

    (Expected Result: 安装成功;Actual Result: 安装 Flash Attention 环节 OOM)

  6. (可选,尝试解决) 尝试安装 ninja 等编译加速工具,问题依然存在。

  7. (降级尝试) 切换到 PyTorch 2.7 / CUDA 12.8 / Python 3.12 环境,重复步骤 3-4。

    (Actual Result: OOM 依然发生,或遇到依赖强制升级 PyTorch 2.8 导致的版本冲突循环。)

  8. 关键错误信息 (Key Error Output)

  9. 内存溢出 (OOM) - PyTorch 2.8/2.7 环境:

    • 发生在编译和安装 flash-attn 包的过程中。

    • 推测是 Autodl 环境的 GPU 显存不足以支撑该版本 Flash Attention 的编译过程。

  10. 依赖冲突循环 (PyTorch 2.7 环境):

    • 在 PyTorch 2.7 环境下,安装其他 Paddle 生态依赖 (如 Paddlex 或其他相关包) 时,会强制下载并安装 PyTorch 2.8。

    • 这导致 Flash Attention 出现不适配或环境版本混乱,重新回到 OOM 或冲突状态。

  11. 期望结果 (Expected Outcome)

在所选的基础环境中,能够通过提供的安装命令顺利完成 vllm 及其核心依赖(Flash Attention)的安装,并使 PaddleOCR 的 VLM 推理服务正常运行。

  1. 临时解决方案/建议 (Workaround/Suggestions)

  2. 请官方明确给出 PyTorch / CUDA / Flash Attention 版本的稳定组合,避免此循环。

  3. 建议考虑提供 预编译的 flash-attn wheel 包,或指导用户在安装时禁用部分高显存消耗的编译选项。

  4. (用户侧) 建议将基础环境降级到 Python 3.9/3.10,并尝试 PyTorch 2.0.1/CUDA 11.8 等更成熟的组合。

🏃‍♂️ Environment (运行环境)

组件 原始配置 (Failed) 降级尝试 (Failed)
云平台/容器 Autodl 预配置环境 Autodl 预配置环境
基础框架 PyTorch 2.8 PyTorch 2.7
CUDA 版本 12.8 12.8
Python 版本 3.12 3.12
核心依赖 1 PaddleOCR (最新版) PaddleOCR (最新版)
核心依赖 2 vllm (通过 paddleocr install_genai_server_deps vllm 安装) vllm

🌰 Minimal Reproducible Example (最小可复现问题的Demo)

安装 PaddleOCR:

python -m pip install "paddleocr[doc-parser]"

尝试安装 VLLM 依赖:

paddleocr install_genai_server_deps vllm

nlpygq-svg avatar Nov 26 '25 06:11 nlpygq-svg

可以尝试安装预编译版本的flash-attn,以绕过编译过程:https://github.com/mjun0812/flash-attention-prebuild-wheels

Bobholamovic avatar Dec 01 '25 11:12 Bobholamovic

我也遇到这个环境安装的死循环问题了,PyTorch 2.8 CUDA12.8 vllm0.10.2 运行paddleocr install_genai_server_deps vllm命令时一直要求下载flash-attn2.8.2,但是这个预编译版本对应的PyTorch 2.8版本。这要怎么解决呢

justok12 avatar Dec 11 '25 11:12 justok12