作者:AVNET 李鑫杰
我們在上一篇文章中介紹了ROCm+PP-OCRv5,為實現(xiàn)在AMD計算平臺上完成復(fù)雜文檔的端到端智能解析,本文基于ROCm軟件棧,提供一套完整的PP-StructureV3模型部署方案。該方案是對前文PP-OCRv5部署實踐的深化與擴展。
一,RapidDoc系統(tǒng)概述
RapidDoc 是一個專精于文檔智能解析的輕量級開源框架,集成了以下核心功能模塊:
- 光學(xué)字符識別(OCR)
- 文檔版面分析
- 數(shù)學(xué)公式識別
- 表格結(jié)構(gòu)還原
- 閱讀順序恢復(fù)
該系統(tǒng)基于 MinerU 架構(gòu)進行二次開發(fā),在保持高精度解析能力的同時,移除了視覺語言模型(VLM)模塊,專注于構(gòu)建高效穩(wěn)定的端到端文檔解析流水線。即使在純 CPU 環(huán)境中,系統(tǒng)仍能保持流暢的推理性能。
本項目采用的核心模型均來自 PaddleOCR 的 PP-StructureV3 模型系列,包括:
- OCR 識別模塊
- 版面分析模塊
- 公式識別模塊
- 閱讀順序模塊
- 表格識別模型
所有模型均已完成 ONNX 格式轉(zhuǎn)換,其跨平臺特性為后續(xù)部署提供了良好基礎(chǔ),這也是選擇 ROCm 進行適配的關(guān)鍵前提。
二,ROCm?工具套件簡介
ROCm(Radeon Open Compute)是 AMD 推出的開源 GPU 計算平臺,提供完整的軟件棧支持:
- 底層驅(qū)動與運行時
- 編譯器與工具鏈
- 上層應(yīng)用加速支持
平臺特性包括:
- 支持 CNN(預(yù)測式 AI)與 Transformer(生成式 AI)主流架構(gòu)
- 兼容 AMD 獨立顯卡(Radeon Pro/RX 系列)及部分 APU 核顯
- 針對高性能計算與大模型訓(xùn)練優(yōu)化
- 對推理場景提供良好支持
項目開源地址:
https://github.com/liebedir/RapidDoc-AMD-ROCm
三,搭建開發(fā)環(huán)境
在本地搭建開發(fā)環(huán)境步驟如下:
首先,克隆 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
圖片
sudo apt install ./amdgpu-install_6.4.60403-1_all.deb
圖片
sudo apt update
圖片
sudo apt install "linux-headers-$(uname -r)" "linux-modules-extra-$(uname -r)"
圖片
sudo apt install amdgpu-dkms
圖片
圖片
sudo apt install python3-setuptools python3-wheel
圖片
sudo usermod -a -G render,video $LOGNAME # Add the current user to the render and video groups
圖片
sudo apt install rocm
圖片
設(shè)置環(huán)境變量,編輯 ~/.bashrc。注意該變量與核顯架構(gòu)相關(guān),11.0.0 適用于 RDNA3 架構(gòu)核顯,其他架構(gòu)請參考 GitHub 項目 liebedir/PP-OCRv5-AMD-ROCm:
vi ~/.bashrcexport HSA_OVERRIDE_GFX_VERSION=11.0.0
圖片
完成后重啟計算機。
接下來安裝 Python 環(huán)境與 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/
圖片
安裝 PyTorch(請根據(jù)已安裝的 ROCm 版本選擇對應(yīng)的 PyTorch 版本,向下兼容):
pip3 install torch torchvision --index-url https://download.pytorch.org/whl/rocm6.4
圖片
安裝其他依賴包:
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple
至此,模型與環(huán)境已全部準備就緒!
四,編寫Demo推理程序
運行以下命令啟動推理演示:
python demo.py
運行過程及結(jié)果如下圖所示。默認使用的 Provider 為 MIGraphXExecutionProvider,這也是 AMD 未來主推的 onnxruntime Provider。你也可以通過修改 Provider_config.py 中的 self.default_provider = self.had_providers[1] 切換為 ROCmExecutionProvider:
圖片
測試結(jié)果如下:
圖片
圖片
四,總結(jié)
使用 AMD CPU 或 GPU 的用戶,可以借助 ROCm 軟件棧,將 RapidDoc——這一高速文檔解析系統(tǒng)——順利部署到 GPU 或核顯硬件平臺上。
如果你有更好的文章,歡迎投稿!
稿件接收郵箱:nami.liu@pasuntech.com
更多精彩內(nèi)容請關(guān)注“ 算力魔方^?^ ”!
審核編輯 黃宇
-
amd
+關(guān)注
關(guān)注
25文章
5703瀏覽量
140371 -
gpu
+關(guān)注
關(guān)注
28文章
5258瀏覽量
136037
發(fā)布評論請先 登錄
如何在 VisionFive v2 上使用外部 GPU?
AMD迎頭猛追Intel 全球首發(fā)7nm GPU很威風!
如何在AMD的GPU上運行TensorFlow?
AMD同時推出Instinct MI100和Radeon ROCm 4.0
AMD推出Instinct MI100和Radeon ROCm4.0
PyTorch 1.8發(fā)布,支持AMD ROCm
AMD發(fā)布基于CDNA 2架構(gòu)的Instinct MI210 GPU
AMD RDNA 3/Navi 3X GPU升級
GPU平臺生態(tài):英偉達CUDA和AMD ROCm對比分析
用ROCm部署PP-StructureV3到AMD GPU上
評論