简介

Paddle2ONNX 支持将 PaddlePaddle 模型格式转化到 ONNX 模型格式。通过 ONNX 可以完成将 Paddle 模型到多种推理引擎的部署,包括 TensorRT/OpenVINO/MNN/TNN/NCNN,以及其它对 ONNX 开源格式进行支持的推理引擎或硬件。

步骤

1.环境依赖

PaddlePaddle == 2.6.0
onnxruntime >= 1.10.0

2.安装

针对PaddlePaddle2.5.2的用户可以直接运行以下命令行代码来安装P2O

pip install paddle2onnx

由于没有自动发包机制,针对PaddlePaddle2.6.0的用户,请按照Github 源码安装方式编译Paddle2ONNX。

3.获取PaddlePaddle部署模型

Paddle2ONNX 在导出模型时,需要传入部署模型格式,包括两个文件

model_name.pdmodel: 表示模型结构
model_name.pdiparams: 表示模型参数 [注意] 这里需要注意,两个文件其中参数文件后辍为 .pdiparams,如你的参数文件后辍是 .pdparams ,那说明你的参数是训练过程中保存的,当前还不是部署模型格式。 部署模型的导出可以参照各个模型套件的导出模型文档。

4.命令行转换

使用如下命令将Paddle模型转换为ONNX模型

paddle2onnx --model_dir saved_inference_model \
            --model_filename model.pdmodel \
            --params_filename model.pdiparams \
            --save_file model.onnx

可调整的转换参数见:Paddle2ONNX

5.之后的模型转化

见我另外的博文onnx转化ncnn实现过程,对onnx进行进一步的优化simplifier,以及转化。

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐