paddle.static. save_inference_model ( path_prefix, feed_vars, fetch_vars, executor, **kwargs ) [source]

Static Graph

Save current model and its parameters to given path. i.e. Given path_prefix = “/path/to/modelname”, after invoking save_inference_model(path_prefix, feed_vars, fetch_vars, executor), you will find two files named modelname.pdmodel and modelname.pdiparams under “/path/to”, which represent your model and parameters respectively.

  • path_prefix (str) – Directory path to save model + model name without suffix.

  • feed_vars (Variable | list[Variable]) – Variables needed by inference.

  • fetch_vars (Variable | list[Variable]) – Variables returned by inference.

  • executor (Executor) – The executor that saves the inference model. You can refer to Executor for more details.

  • kwargs – Supported keys including ‘program’.Attention please, kwargs is used for backward compatibility mainly. - program(Program): specify a program if you don’t want to use default main program.



  • ValueError – If feed_vars is not a Variable or a list of Variable, an exception is thrown.

  • ValueError – If fetch_vars is not a Variable or a list of Variable, an exception is thrown.


import paddle


path_prefix = "./infer_model"

# User defined network, here a softmax regession example
image ='img', shape=[None, 28, 28], dtype='float32')
label ='label', shape=[None, 1], dtype='int64')
predict = paddle.static.nn.fc(image, 10, activation='softmax')

loss = paddle.nn.functional.cross_entropy(predict, label)

exe = paddle.static.Executor(paddle.CPUPlace())

# Feed data and train process

# Save inference model. Note we don't save label and loss in this example
paddle.static.save_inference_model(path_prefix, [image], [predict], exe)

# In this example, the save_inference_mode inference will prune the default
# main program according to the network's input node (img) and output node(predict).
# The pruned inference program is going to be saved in file "./infer_model.pdmodel"
# and parameters are going to be saved in file "./infer_model.pdiparams".