'Args:
config (PredictConfig): the config to use.'

def __init__(self, config):

    self.graph = config._maybe_create_graph()
    with self.graph.as_default():
        input = PlaceholderInput()
        input.setup(config.model.get_inputs_desc())
        with TowerContext('', is_training=False):
            config.model.build_graph(input)
        input_tensors = get_tensors_by_names(config.input_names)
        output_tensors = get_tensors_by_names(config.output_names)
        sess = config.session_creator.create_session()
        config.session_init.init(sess)
        super(OfflinePredictor, self).__init__(input_tensors, output_tensors, config.return_input, sess)
