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

相关推荐
小鸡吃米…5 小时前
机器学习 - K - 中心聚类
人工智能·机器学习·聚类
好奇龙猫6 小时前
【AI学习-comfyUI学习-第三十节-第三十一节-FLUX-SD放大工作流+FLUX图生图工作流-各个部分学习】
人工智能·学习
沈浩(种子思维作者)6 小时前
真的能精准医疗吗?癌症能提前发现吗?
人工智能·python·网络安全·健康医疗·量子计算
minhuan6 小时前
大模型应用:大模型越大越好?模型参数量与效果的边际效益分析.51
人工智能·大模型参数评估·边际效益分析·大模型参数选择
Cherry的跨界思维6 小时前
28、AI测试环境搭建与全栈工具实战:从本地到云平台的完整指南
java·人工智能·vue3·ai测试·ai全栈·测试全栈·ai测试全栈
MM_MS6 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
ASF1231415sd6 小时前
【基于YOLOv10n-CSP-PTB的大豆花朵检测与识别系统详解】
人工智能·yolo·目标跟踪
njsgcs7 小时前
ue python二次开发启动教程+ 导入fbx到指定文件夹
开发语言·python·unreal engine·ue
io_T_T7 小时前
迭代器 iteration、iter 与 多线程 concurrent 交叉实践(详细)
python
水如烟7 小时前
孤能子视角:“意识“的阶段性回顾,“感质“假说
人工智能