code: def median(
      input: Union[tf.Tensor, tf.Variable],
      /,
      *,
      axis: Optional[Union[Tuple[int], int]] = None,
      keepdims: bool = False,
      out: Optional[Union[tf.Tensor, tf.Variable]] = None,
  ) -> Union[tf.Tensor, tf.Variable]:
      return tfp.stats.percentile(
          input,
          50.0,
          axis=axis,
          interpolation="midpoint",
          keepdims=keepdims,
      )
  
file_path: ivy/ivy/functional/backends/tensorflow/sub_backends/tf_probability/experimental/statistical.py
imports: from typing import Optional, Sequence, Tuple, Union
  import ivy
  from ivy.func_wrapper import with_supported_dtypes
  from ivy.functional.backends.numpy.experimental.statistical import _handle_axis, _quantile, _validate_quantile
  import tensorflow_probability
  import tensorflow
  from ....None import backend_version
label_desc: Use image node_id 2 for calling a global function with example usage: median() and returns: tfp