class_docstr: Implementation for working with TF2.x Graph Mode.
code: def _build_fn(self, fn, *args, **kwargs):
      # Build the graph
      # Feed the args with placeholders
      args_with_ph, kwargs_with_ph = self._get_new_args(args, kwargs)
      refill_feed_dict = self._refill_fd
      fetches = fn(*args_with_ph, **kwargs_with_ph)
  
      # Build the strategy and get the runner with distributed graph
      session = self._create_distributed_session()
  
      def run_fn(*args, **kwargs):
          # fill out the feed_dict with new batch
          feed_dict = refill_feed_dict(*args, **kwargs)
          return session.run(fetches, feed_dict)
  
      return run_fn
  
imports: import atexit
  import os
  from collections import namedtuple
  import numpy
  from tensorflow.python.eager import context
  from tensorflow.python.framework import ops
  from tensorflow.python.ops import array_ops
  from tensorflow.python.util import tf_contextlib
  from autodist.cluster import Cluster, SSHCluster
  from autodist.const import ENV
  from autodist.coordinator import Coordinator
  from autodist.graph_item import GraphItem
  from autodist.kernel.device.resolver import DeviceResolver
  from autodist.kernel.graph_transformer import GraphTransformer
  from autodist.patch import PatchTensorFlow
  from autodist.remapper import Remapper
  from autodist.resource_spec import ResourceSpec
  from autodist.runner import WrappedSession
  from autodist.strategy import base
  from autodist.strategy.ps_lb_strategy import PSLoadBalancing
  from autodist.utils import logging
label_desc: Use image node_id 4 for calling the _V2Graph obj's underlying member method code with example usage: obj._build_fn(fn) and returns: run_fn, session