serialize_program¶
- paddle.static. serialize_program ( feed_vars, fetch_vars, **kwargs ) [source]
-
- Api_attr
-
Static Graph
Serialize default main program according to feed_vars and fetch_vars.
- Parameters
-
feed_vars (Variable | list[Variable]) – Variables needed by inference.
fetch_vars (Variable | list[Variable]) – Variables returned by inference.
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.
- Returns
-
serialized program.
- Return type
-
bytes
- Raises
-
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.
Examples
import paddle paddle.enable_static() path_prefix = "./infer_model" # User defined network, here a softmax regession example image = paddle.static.data(name='img', shape=[None, 28, 28], dtype='float32') label = paddle.static.data(name='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()) exe.run(paddle.static.default_startup_program()) # serialize the default main program to bytes. serialized_program = paddle.static.serialize_program([image], [predict]) # deserialize bytes to program deserialized_program = paddle.static.deserialize_program(serialized_program)