用ROCm部署PP-StructureV3到AMD GPU上

电子说

1.4w人已加入

描述

作者:AVNET 李鑫杰

我们在上一篇文章中介绍了ROCm+PP-OCRv5,为实现在AMD计算平台上完成复杂文档的端到端智能解析,本文基于ROCm软件栈,提供一套完整的PP-StructureV3模型部署方案。该方案是对前文PP-OCRv5部署实践的深化与扩展。

一,RapidDoc系统概述

RapidDoc 是一个专精于文档智能解析的轻量级开源框架,集成了以下核心功能模块:

  • 光学字符识别(OCR)
  • 文档版面分析
  • 数学公式识别
  • 表格结构还原
  • 阅读顺序恢复

该系统基于 MinerU 架构进行二次开发,在保持高精度解析能力的同时,移除了视觉语言模型(VLM)模块,专注于构建高效稳定的端到端文档解析流水线。即使在纯 CPU 环境中,系统仍能保持流畅的推理性能。

本项目采用的核心模型均来自 PaddleOCR PP-StructureV3 模型系列,包括:

  • OCR 识别模块
  • 版面分析模块
  • 公式识别模块
  • 阅读顺序模块
  • 表格识别模型

所有模型均已完成 ONNX 格式转换,其跨平台特性为后续部署提供了良好基础,这也是选择 ROCm 进行适配的关键前提。

二,ROCm™工具套件简介

ROCm(Radeon Open Compute)是 AMD 推出的开源 GPU 计算平台,提供完整的软件栈支持:

  • 底层驱动与运行时
  • 编译器与工具链
  • 上层应用加速支持

平台特性包括:

  • 支持 CNN(预测式 AI)与 Transformer(生成式 AI)主流架构
  • 兼容 AMD 独立显卡(Radeon Pro/RX 系列)及部分 APU 核显
  • 针对高性能计算与大模型训练优化
  • 对推理场景提供良好支持

项目开源地址:

https://github.com/liebedir/RapidDoc-AMD-ROCm

三,搭建开发环境

在本地搭建开发环境步骤如下:

首先,克隆 PP-StructureV3-RapidDoc-AMD-ROCm 到本地:

git clone https://github.com/liebedir/RapidDoc-AMD-ROCm.gitcd RapidDoc-AMD-ROCm

接着,安装 ROCm:

wget https://repo.radeon.com/amdgpu-install/6.4.3/ubuntu/jammy/amdgpu-install_6.4.60403-1_all.deb

gpu图片

sudo apt install ./amdgpu-install_6.4.60403-1_all.deb

gpu图片

sudo apt update

gpu图片

sudo apt install "linux-headers-$(uname -r)" "linux-modules-extra-$(uname -r)"

gpu图片

sudo apt install amdgpu-dkms

gpu图片

gpu图片

sudo apt install python3-setuptools python3-wheel

gpu图片

sudo usermod -a -G render,video $LOGNAME # Add the current user to the render and video groups

gpu图片

sudo apt install rocm

gpu图片

设置环境变量,编辑 ~/.bashrc。注意该变量与核显架构相关,11.0.0 适用于 RDNA3 架构核显,其他架构请参考 GitHub 项目 liebedir/PP-OCRv5-AMD-ROCm:

vi ~/.bashrcexport HSA_OVERRIDE_GFX_VERSION=11.0.0

gpu图片

完成后重启计算机。

接下来安装 Python 环境与 ROCm-onnxruntime:

conda create -n ocr-rocm python==3.10pip3 install onnxruntime-rocm -f https://repo.radeon.com/rocm/manylinux/rocm-rel-6.4.2/

gpu图片

安装 PyTorch(请根据已安装的 ROCm 版本选择对应的 PyTorch 版本,向下兼容):

pip3 install torch torchvision --index-url https://download.pytorch.org/whl/rocm6.4

gpu图片

安装其他依赖包:

pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple

至此,模型与环境已全部准备就绪!

四,编写Demo推理程序

运行以下命令启动推理演示:

python demo.py

运行过程及结果如下图所示。默认使用的 Provider 为 MIGraphXExecutionProvider,这也是 AMD 未来主推的 onnxruntime Provider。你也可以通过修改 Provider_config.py 中的 self.default_provider = self.had_providers[1] 切换为 ROCmExecutionProvider:

gpu图片

测试结果如下:

gpu图片

gpu图片

四,总结

使用 AMD CPU 或 GPU 的用户,可以借助 ROCm 软件栈,将 RapidDoc——这一高速文档解析系统——顺利部署到 GPU 或核显硬件平台上。

如果你有更好的文章,欢迎投稿!

稿件接收邮箱:nami.liu@pasuntech.com

更多精彩内容请关注“ 算力魔方^®^ ”!

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐
  • 热点推荐
  • amd
  • gpu

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分