code: def random_uniform(
      *,
      low: Union[float, tf.Tensor, tf.Variable] = 0.0,
      high: Union[float, tf.Tensor, tf.Variable] = 1.0,
      shape: Optional[
          Union[ivy.NativeShape, Sequence[int], tf.Tensor]
      ] = None,
      dtype: DType,
      device: Optional[str] = None,
      seed: Optional[int] = None,
      out: Optional[Union[tf.Tensor, tf.Variable]] = None,
  ) -> Union[tf.Tensor, tf.Variable]:
      shape = _check_bounds_and_get_shape(low, high, shape).shape
      low = tf.cast(low, dtype)
      high = tf.cast(high, dtype)
      if seed:
          tf.random.set_seed(seed)
      return tf.random.uniform(shape, low, high, dtype=dtype, seed=seed)
  
file_path: ivy/ivy/functional/backends/tensorflow/random.py
imports: from typing import Optional, Union, Sequence
  import tensorflow
  from tensorflow.python.framework.dtypes import DType
  import ivy
  from ivy.func_wrapper import with_unsupported_dtypes, with_supported_dtypes
  from ivy.functional.ivy.random import _check_bounds_and_get_shape, _randint_check_dtype_and_bound, _check_valid_scale
  from .None import backend_version
label_desc: Use image node_id 1 for calling a global function with example usage: random_uniform() and returns: tf