Paddle Inference部署推理(二)

二:Paddle Inference推理之保存与加载模型API详解

模型训练后,训练好的模型参数保存在内存中,通常需要使用模型保存(save)功能将其持久化保存到磁盘文件中,并在后续需要训练调优或推理部署时,再加载(load)到内存中运行。详细介绍不同场景下模型保存与加载的方法。

概述

在模型训练过程中,通常会在如下场景中用到模型的保存与加载功能:

训练调优场景:

  • 模型训练过程中定期保存模型,以便后续对不同时期的模型恢复训练或进行研究;
  • 模型训练完毕,需要保存模型方便进行评估测试;
  • 载入预训练模型,并对模型进行微调(fine-tune)。

推理部署场景:

  • 模型训练完毕,在云、边、端不同的硬件环境中部署使用,飞桨提供了服务器端部署的 Paddle Inference、移动端/IoT端部署的 Paddle Lite、服务化部署的 Paddle Serving 等,以实现模型的快速部署上线。

针对以上场景,飞桨框架推荐使用的模型保存与加载基础 API 主要包括:
a. paddle.save

源代码:地址

:将对象实例 obj 保存到指定的路径中。

入参和返回值详解:

复制代码
 >>> # example 2: Save multiple state_dict at the same time
 >>> import paddle
 >>> from paddle import nn
 >>> from paddle.optimizer import Adam

 >>> layer = paddle.nn.Linear(3, 4)
 >>> adam = Adam(learning_rate=0.001, parameters=layer.parameters())
 >>> obj = {'model': layer.state_dict(), 'opt': adam.state_dict(), 'epoch': 100}
 >>> path = 'example/model.pdparams'
 >>> paddle.save(obj, path)

b. paddle. Load

源代码:地址

:从指定路径载入可以在 paddle 中使用的对象实例。

入参和返回值详解:

复制代码
 >>> # example 2: Load multiple state_dict at the same time
 >>> import paddle
 >>> from paddle import nn
 >>> from paddle.optimizer import Adam

 >>> layer = paddle.nn.Linear(3, 4)
 >>> adam = Adam(learning_rate=0.001, parameters=layer.parameters())
 >>> obj = {'model': layer.state_dict(), 'opt': adam.state_dict(), 'epoch': 100}
 >>> path = 'example/model.pdparams'
 >>> paddle.save(obj, path)
 >>> obj_load = paddle.load(path)

c. paddle.jit.save

源代码:地址

:将输入的 Layer 或 function 存储为 paddle.jit.TranslatedLayer 格式的模型,载入后可用于预测推理或者 fine-tune 训练。该接口会将输入 Layer 转写后的模型结构 Program 和所有必要的持久参数变量存储至输入路径 path 。

path 是存储目标的前缀,存储的模型结构 Program 文件的后缀为 .pdmodel ,存储的持久参数变量文件的后缀为 .pdiparams,同时这里也会将一些变量描述信息存储至文件,文件后缀为 .pdiparams.info,这些额外的信息将在 fine-tune 训练中使用。

存储的模型能够被以下 API 完整地载入使用:

  • paddle.jit.load
  • paddle.static.load_inference_model
  • 其他 C++ 预测库 API

    入参和返回值详解:

    d. paddle.jit.load
    源代码:地址
相关推荐
leehao_vip4 天前
windows 下的paddle ocr 部署
windows·ocr·paddle
三千院本院4 天前
安装paddle_ocr踩坑(使用PP-OCRv5_server_rec)
ocr·paddle
2401_8652737915 天前
【无标题】
百度·facebook·paddle·新浪微博·segmentfault
动能小子ohhh21 天前
Langchain从零开始到应用落地案例[AI智能助手]【3】---使用Paddle-OCR识别优化可识别图片进行解析回答
人工智能·python·pycharm·langchain·ocr·paddle·1024程序员节
2401_865273791 个月前
郑光荣:守护市井烟火
百度·facebook·paddle·新浪微博·微信开放平台
7723891 个月前
Paddle导出PP-OCRv5 onnx并推理
paddle
颢师傅2 个月前
【算法部署】百度paddle环境适配
百度·paddle
国服第二切图仔4 个月前
【源力觉醒 创作者计划】文心开源大模型ERNIE-4.5系列与Qwen/DeepSeek/GPT-4横向深度测评报告
百度·开源·文心大模型·paddle·gitcode
国服第二切图仔4 个月前
基于文心开源大模型ERNIE-4.5-0.3B-Paddle私有化部署并构建一个企业智能客服系统
百度·开源·智能客服·知识库·文心大模型·paddle·gitcode
LucianaiB4 个月前
百度开源文心4.5系列开源21款模型,实测 ERNIE-4.5-VL-28B-A3B-Paddle 多项评测结果超 Qwen3-235B-A22B
百度·开源·文心大模型·paddle·gitcode