class_docstr: Abstraction for using a EvalSavedModel.
  
  Note that this class overrides eval_metrics_graph.EvalMetricsGraph
  which contains most of the functionality for handling the metric ops.
  In the eval saved model path, a common graph is shared between generation
  FeaturesPredictionLabels through Predict and doing the metric ops.
  The specific methods of this class constructs the graph and handles
  the prediction ops.
docstr: Returns features, predictions, labels dictionaries (or values).
  
  The dictionaries contain references to the nodes, so they can be used
  to construct new metrics similarly to how metrics can be constructed in
  the Trainer.
  
  Returns:
    Tuple of features, predictions, labels dictionaries (or values).
docstr_tok: ["Returns","features",",","predictions",",","labels","dictionaries","(","or","values",")",".","The","dictionaries","contain","references","to","the","nodes",",","so","they","can","be","used","to","construct","new","metrics","similarly","to","how","metrics","can","be","constructed","in","the","Trainer",".","Returns",":","Tuple","of","features",",","predictions",",","labels","dictionaries","(","or","values",")","."]
code: def get_features_predictions_labels_dicts(
      self,
  ) -> Tuple[
      types.TensorTypeMaybeDict,
      types.TensorTypeMaybeDict,
      types.TensorTypeMaybeDict,
  ]:
      """Returns features, predictions, labels dictionaries (or values).
  
      The dictionaries contain references to the nodes, so they can be used
      to construct new metrics similarly to how metrics can be constructed in
      the Trainer.
  
      Returns:
        Tuple of features, predictions, labels dictionaries (or values).
      """
      features = {}
      for key, value in self._features_map.items():
          features[key] = value
      # Unnest if it wasn't a dictionary to begin with.
      features = util.extract_tensor_maybe_dict(
          constants.FEATURES_NAME, features
      )
  
      predictions = {}
      for key, value in self._predictions_map.items():
          predictions[key] = value
      # Unnest if it wasn't a dictionary to begin with.
      predictions = util.extract_tensor_maybe_dict(
          constants.PREDICTIONS_NAME, predictions
      )
  
      labels = {}
      for key, value in self._labels_map.items():
          labels[key] = value
      # Unnest if it wasn't a dictionary to begin with.
      labels = util.extract_tensor_maybe_dict(
          constants.LABELS_NAME, labels
      )
  
      return (features, predictions, labels)
  
imports: from typing import Any, Dict, Generator, List, NamedTuple, Optional, Tuple, Union
  import numpy
  import tensorflow
  from tensorflow_model_analysis.api import types
  from tensorflow_model_analysis.eval_metrics_graph import eval_metrics_graph
  from tensorflow_model_analysis.eval_saved_model import constants
  from tensorflow_model_analysis.eval_saved_model import encoding
  from tensorflow_model_analysis.eval_saved_model import graph_ref
  from tensorflow_model_analysis.eval_saved_model import util
  from tensorflow.core.protobuf import meta_graph_pb2
label_desc: Use image node_id 8 for calling the EvalSavedModel obj's underlying member method code with example usage: obj.get_features_predictions_labels_dicts() and returns: features,  predictions,  labels