code: def build_eval_session(module_spec, class_count):
    
    # If quantized, we need to create the correct eval graph for exporting.
    eval_graph, bottleneck_tensor, resized_input_tensor, wants_quantization = (
        create_module_graph(module_spec))
  
    eval_sess = tf.Session(graph=eval_graph)
    with eval_graph.as_default():
      # Add the new layer for exporting.
      (_, _, bottleneck_input,
       ground_truth_input, final_tensor) = add_final_retrain_ops(
           class_count, FLAGS.final_tensor_name, bottleneck_tensor,
           wants_quantization, is_training=False)
  
      # Now we need to restore the values from the training graph to the eval
      # graph.
      tf.train.Saver().restore(eval_sess, CHECKPOINT_NAME)
  
      evaluation_step, prediction = add_evaluation_step(final_tensor,
                                                        ground_truth_input)
  
    return (eval_sess, resized_input_tensor, bottleneck_input, ground_truth_input,
            evaluation_step, prediction)
docs: Builds an restored eval session without train operations for exporting.
  
    Args:
      module_spec: The hub.ModuleSpec for the image module being used.
      class_count: Number of classes
  
    Returns:
      Eval session containing the restored eval graph.
      The bottleneck input, ground truth, eval step, and prediction tensors.