code: def vsplit(
      ary: np.ndarray,
      indices_or_sections: Union[int, Sequence[int], np.ndarray],
      /,
      *,
      copy: Optional[bool] = None,
  ) -> List[np.ndarray]:
      if ary.ndim < 2:
          raise ivy.exceptions.IvyError(
              "vsplit only works on arrays of 2 or more dimensions"
          )
      return ivy.split(
          ary, num_or_size_splits=indices_or_sections, axis=0
      )
  
imports: from typing import Iterable, Optional, Union, Sequence, Tuple, NamedTuple, Literal, Callable, Any, List
  from numbers import Number
  from collections import namedtuple
  import numpy
  import ivy
  from ivy.functional.backends.numpy.helpers import _scalar_output_to_0d_array
  from ivy.func_wrapper import with_supported_dtypes
  from .None import backend_version
label_desc: Use image node_id 14 for calling a global function with example usage: vsplit() and returns: ivy