code: def take(data, indices, axis=None, batch_dims=0, mode="clip"):
      """Take elements from an array along an axis.
  
      Parameters
      ----------
      data : relay.Expr
          The source array.
  
      indices : relay.Expr
          The indices of the values to extract.
  
      axis : int, optional
          The axis over which to select values. By default,
          the flattened input array is used.
  
      batch_dims : int, optional
          The number of batch dimensions. By default is 0.
  
      mode : str, optional
          Specifies how out-of-bound indices will behave [clip, wrap, fast].
          clip: clip to the range (default).
          wrap: wrap around the indices.
          fast: no clip or wrap around (user must make sure indices are in-bound).
  
      Returns
      -------
      ret : relay.Expr
          The computed result.
      """
      return _make.take(data, indices, batch_dims, axis, mode)
  
imports: from ...tir import expr
  from ..expr import Constant, Expr, Tuple, TupleWrapper, const
  from .None import _make
  from .dyn import _make
  from .tensor import shape_of
label_desc: Use image node_id 13 for calling a global function with example usage: take(data, indices, axis, batch_dims, mode) and returns: _make