AI 模型部署体系全景:从 PyTorch 到 RKNN 的嵌入式类比解析

📘 AI 模型部署体系全景:从 PyTorch 到 RKNN 的嵌入式类比解析


🧠 一、AI 模型部署的整体流程

AI 模型的部署流程可以类比嵌入式系统的启动流程:

阶段 嵌入式系统 AI 模型部署
源码定义 DTS + SPL + U-Boot PyTorch / TensorFlow 模型结构
编译构建 U-Boot.img ONNX / TFLite / RKNN / TensorRT
烧录部署 烧录到 eMMC / SPI 推理引擎加载模型
执行运行 SPL/U-Boot 启动 GPU/NPU 执行推理逻辑

🧩 二、主流 AI 框架与模型格式对照表

框架 常见模型 原始格式 可导出格式 推理引擎 典型后缀
PyTorch YOLO, LLM, Qwen .pt, .pth .onnx TensorRT, ONNX Runtime .pt, .onnx, .engine
TensorFlow SSD, MobileNet .pb, .ckpt .tflite, .onnx TFLite, TensorRT .pb, .tflite, .onnx
Caffe AlexNet, VGG .caffemodel, .prototxt .onnx Caffe, TensorRT .caffemodel, .prototxt, .onnx
Darknet YOLOv3/v4 .weights, .cfg .onnx TensorRT, OpenCV DNN .weights, .cfg, .onnx
PaddlePaddle PP-YOLO, ERNIE .pdmodel, .pdparams .onnx Paddle Lite, ONNX Runtime .pdmodel, .onnx
Keras 简化版 TF 模型 .h5 .tflite, .onnx TFLite, ONNX Runtime .h5, .tflite, .onnx
RKNN Toolkit 任意模型转 Rockchip 格式 .onnx, .tflite, .pb.rknn .rknn RKNN Lite, RKNN API .rknn

📦 三、模型文件后缀详解

后缀 来源 含义 特点
.pt / .pth PyTorch 原始模型文件 包含结构和权重,训练环境使用
.onnx 通用 中间交换格式 跨框架部署,支持多平台
.pb TensorFlow Protocol Buffer 格式 TF 原始模型,适合服务器部署
.tflite TensorFlow Lite 轻量模型 适合移动端和嵌入式设备
.caffemodel Caffe 权重文件 .prototxt 配合使用
.prototxt Caffe 网络结构定义 类似设备树结构定义
.weights Darknet 权重文件 YOLOv3/v4 原始格式
.cfg Darknet 网络结构定义 配合 .weights 使用
.h5 Keras 模型结构 + 权重 可导出为 .tflite.onnx
.rknn Rockchip Rockchip 专用格式 用于 RK3588/NPU 推理
.engine TensorRT 编译后的推理引擎 高速执行,适合 Jetson
.pdmodel / .pdparams PaddlePaddle Paddle 模型结构与参数 Paddle 专用格式

🔄 四、ONNX 的核心作用与转换流程

ONNX 是 AI 模型部署中的"中间格式",类似于嵌入式系统中的 .dtb

  • 跨平台兼容:支持 PyTorch、TensorFlow、Caffe、Keras 等框架导出
  • 部署灵活:可用于 TensorRT、ONNX Runtime、RKNN Toolkit 等推理引擎
  • 便于优化:支持量化、剪枝、融合等模型优化操作

示例转换流程(YOLOv8)

复制代码
YOLOv8.pt → YOLOv8.onnx → YOLOv8.engine(Jetson)
                     ↓
               YOLOv8.rknn(RK3588)

🚀 五、典型平台部署路径

Jetson 平台(NVIDIA)

步骤 工具 文件
模型训练 PyTorch .pt
导出中间格式 ONNX .onnx
编译推理引擎 TensorRT .engine
推理执行 C++/Python + TensorRT 实时目标检测

RK3588 平台(Rockchip)

步骤 工具 文件
模型准备 ONNX / TFLite .onnx / .tflite
转换为 RKNN RKNN Toolkit .rknn
推理执行 RKNN API / Lite NPU 加速推理

Android 平台

步骤 工具 文件
模型训练 TensorFlow / Keras .pb / .h5
导出轻量模型 TFLite Converter .tflite
推理执行 TFLite Runtime 手机端部署推理

🧠 六、LLM 与 Qwen 的位置

名称 类型 说明
LLM(Large Language Model) 模型类型 用于自然语言理解与生成,参数量巨大
Qwen(通义千问) 模型实例 阿里巴巴推出的 LLM,支持中文、代码、多模态输入
部署方式 推理引擎 可导出为 ONNX,部署到服务器或边缘设备
类比嵌入式 脚本解释器 类似复杂 shell 脚本系统,支持上下文理解与生成

📘 七、嵌入式类比总结表

AI 概念 嵌入式类比 说明
PyTorch 模型(.pt) U-Boot 源码 原始模型定义
ONNX 模型(.onnx) 编译后的设备树(.dtb) 中间格式,跨平台
TensorRT 引擎(.engine) 烧录后的 U-Boot 镜像 高速执行体
推理执行 SPL/U-Boot 启动 实际运行逻辑
模型结构定义(cfg, prototxt) DTS 网络结构描述
模型转换工具链 编译器 模型构建与优化流程

🛠️ 八、推荐工具链与脚本模板

平台 工具链 推荐脚本
Jetson PyTorch → ONNX → TensorRT trtexec, torch.onnx.export
RK3588 ONNX → RKNN rknn_toolkit, rknn_convert.py
Android TF → TFLite tflite_convert, FlatBuffer
通用服务器 ONNX → ONNX Runtime onnxruntime.InferenceSession

相关推荐
qq_12498707536 分钟前
基于Hadoop的信贷风险评估的数据可视化分析与预测系统的设计与实现(源码+论文+部署+安装)
大数据·人工智能·hadoop·分布式·信息可视化·毕业设计·计算机毕业设计
Coder_Boy_9 分钟前
TensorFlow小白科普
人工智能·深度学习·tensorflow·neo4j
全栈老石9 分钟前
Python 异步生存手册:给被 JS async/await 宠坏的全栈工程师
后端·python
L、21810 分钟前
CANN 中的图优化技术详解:如何让 AI 模型跑得更快、更省
人工智能
大模型玩家七七12 分钟前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习
新缸中之脑13 分钟前
像画家一样编程
人工智能
tq108615 分钟前
心主神明:传统智慧如何启示AI的可靠之道
人工智能
梨落秋霜17 分钟前
Python入门篇【模块/包】
python
珠海西格电力科技18 分钟前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
新缸中之脑20 分钟前
“AI 裁员“神话
人工智能