code: def _trace_and_get_metadata(
      concrete_transform_fn: function.ConcreteFunction,
      structured_inputs: Mapping[str, common_types.TensorType],
      preprocessing_fn: Callable[
          [Mapping[str, common_types.TensorType]],
          Mapping[str, common_types.TensorType],
      ],
      base_temp_dir: Optional[str],
      tensor_replacement_map: Optional[Dict[str, tf.Tensor]],
  ) -> dataset_metadata.DatasetMetadata:
      """Compute and return metadata for the outputs of `concrete_transform_fn`."""
      tf_graph_context = graph_context.TFGraphContext(
          module_to_export=tf.Module(),
          temp_dir=base_temp_dir,
          evaluated_replacements=tensor_replacement_map,
      )
      concrete_metadata_fn = schema_inference.get_traced_metadata_fn(
          preprocessing_fn,
          structured_inputs,
          tf_graph_context,
          evaluate_schema_overrides=True,
      )
      return dataset_metadata.DatasetMetadata(
          schema=schema_inference.infer_feature_schema_v2(
              concrete_transform_fn.structured_outputs,
              concrete_metadata_fn,
              evaluate_schema_overrides=True,
          )
      )
  
imports: import functools
  import os
  import re
  from typing import Callable, Dict, List, Mapping, Optional, FrozenSet
  from absl import logging
  import numpy
  import pyarrow
  import tensorflow
  from tensorflow_transform import analyzer_nodes
  from tensorflow_transform import annotators
  from tensorflow_transform import common_types
  from tensorflow_transform import graph_context
  from tensorflow_transform import graph_tools
  from tensorflow_transform import schema_inference
  from tensorflow_transform import tf2_utils
  from tensorflow_transform import tf_utils
  from tensorflow_transform.output_wrapper import TFTransformOutput
  from tensorflow_transform.saved import saved_transform_io
  from tensorflow_transform.saved import saved_transform_io_v2
  from tensorflow_transform.tf_metadata import dataset_metadata
  from tensorflow_transform.tf_metadata import metadata_io
  from tensorflow_transform.tf_metadata import schema_utils
  from tfx_bsl.coders import example_coder
  from tfx_bsl.tfxio import tensor_to_arrow
  from tensorflow.python.eager import function
  from tensorflow.python.framework import ops
  from tensorflow_metadata.proto.v0 import schema_pb2
label_desc: Use image node_id 16 for calling a global function with example usage: _trace_and_get_metadata(concrete_transform_fn, structured_inputs, preprocessing_fn, base_temp_dir, tensor_replacement_map) and returns: dataset_metadata