code: def randint(
      low: Union[int, paddle.Tensor],
      high: Union[int, paddle.Tensor],
      /,
      *,
      shape: Optional[Union[ivy.NativeShape, Sequence[int]]] = None,
      device: core.Place = None,
      dtype: Optional[Union[paddle.dtype, ivy.Dtype]] = None,
      seed: Optional[int] = None,
      out: Optional[paddle.Tensor] = None,
  ) -> paddle.Tensor:
      if not dtype:
          dtype = ivy.default_int_dtype()
      dtype = ivy.as_native_dtype(dtype)
      _randint_check_dtype_and_bound(low, high, dtype)
      low = (
          paddle.cast(low, "float32")
          if isinstance(low, paddle.Tensor)
          else low
      )
      high = (
          paddle.cast(high, "float32")
          if isinstance(high, paddle.Tensor)
          else high
      )
      shape = _check_bounds_and_get_shape(low, high, shape).shape
      range = high - low
      if seed:
          _ = paddle.seed(seed)
  
      _retval = paddle.cast(
          paddle.uniform(shape or [1], min=0.0, max=1.0) * range + low,
          dtype,
      )
      return _retval if shape else _retval.squeeze(axis=0)
  
file_path: ivy/ivy/functional/backends/paddle/random.py
imports: import paddle
  import ivy.functional.backends.paddle
  from typing import Optional, Union, Sequence
  import ivy
  from paddle.device import core
  from ivy.functional.ivy.random import _check_bounds_and_get_shape, _randint_check_dtype_and_bound, _check_valid_scale
  from ivy.func_wrapper import with_unsupported_device_and_dtypes, with_supported_device_and_dtypes, with_unsupported_dtypes
  from .None import backend_version
label_desc: Use image node_id 4 for calling a global function with example usage: randint() and returns: unknown