code: def shuffle(
      x: np.ndarray,
      axis: Optional[int] = 0,
      /,
      *,
      seed: Optional[int] = None,
      out: Optional[np.ndarray] = None,
  ) -> np.ndarray:
      if seed:
          np.random.seed(seed)
      if len(x.shape) == 0:
          return x
  
      x = np.array(x)
      rng = np.random.default_rng()
      rng.shuffle(x, axis=axis)
  
      return x
  
file_path: ivy/ivy/functional/backends/numpy/random.py
imports: import numpy
  from typing import Optional, Union, Sequence
  import ivy
  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_dtypes
  from .None import backend_version
label_desc: Use image node_id 6 for calling a global function with example usage: shuffle() and returns: x, x