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

相关推荐
小智RE0-走在路上2 分钟前
Python学习笔记(9) --文件操作
笔记·python·学习
qq_12498707533 分钟前
基于协同过滤算法的在线教育资源推荐平台的设计与实现(源码+论文+部署+安装)
java·大数据·人工智能·spring boot·spring·毕业设计
万俟淋曦3 分钟前
【论文速递】2025年第38周(Sep-14-20)(Robotics/Embodied AI/LLM)
人工智能·深度学习·机器学习·机器人·大模型·论文·具身智能
一水鉴天8 分钟前
整体设计 定稿 之7 共享给定表格文档的分析(豆包助手)
人工智能·架构
愈努力俞幸运11 分钟前
Python heapq (堆/优先队列)
python
SHolmes185411 分钟前
给定某日的上班时间段,计算当日的工作时间总时长(Python)
开发语言·前端·python
C嘎嘎嵌入式开发19 分钟前
NLP 入门:从原理到实战的个人经验总结
人工智能·python·自然语言处理·nlp
咖啡の猫19 分钟前
Python字典元素的增、删、改操作
java·开发语言·python
Swizard21 分钟前
Python 并不慢,是你看不懂:拆解 CPython 虚拟机背后的魔法引擎
python
自由生长202428 分钟前
一次“虚拟环境复制引发的血案”:记一次 itsdangerous 版本混乱排查全过程
python