import tensorflow as tf
import sys

input_model='./1548227457'
output_model='./out'
output_tensor_name='user_embedding:0'

with tf.Session(graph=tf.Graph()) as sess:
    tf.saved_model.loader.load(sess,
            [tf.saved_model.tag_constants.SERVING],
            input_model)
    graph = tf.get_default_graph()
    inputs = {"inputs": tf.saved_model.utils.build_tensor_info(graph.get_tensor_by_name('input_example_tensor:0'))}
    outputs = {"scores": tf.saved_model.utils.build_tensor_info(graph.get_tensor_by_name(output_tensor_name))}
    signature = (tf.saved_model.signature_def_utils.build_signature_def(
        inputs=inputs,
        outputs=outputs,
        method_name=tf.saved_model.signature_constants.PREDICT_METHOD_NAME
    ))

    try:
        __import__('shutil').rmtree(output_model)
    except OSError:
        pass
    b = tf.saved_model.builder.SavedModelBuilder(output_model)
    b.add_meta_graph_and_variables(sess, [tf.saved_model.tag_constants.SERVING], signature_def_map={
           "serving_default": signature})
    b.save()

original refer