code: def percentile(
      a: ArrayLike,
      q: ArrayLike,
      axis: AxisLike = None,
      out: Optional[OutArray] = None,
      overwrite_input=False,
      method="linear",
      keepdims: KeepDims = False,
      *,
      interpolation: NotImplementedType = None,
  ):
      # np.percentile(float_tensor, 30) : q.dtype is int64 => q / 100.0 is float32
      if _dtypes_impl.python_type_for_torch(q.dtype) == int:
          q = q.to(_dtypes_impl.default_dtypes().float_dtype)
      qq = q / 100.0
  
      return quantile(
          a,
          qq,
          axis=axis,
          overwrite_input=overwrite_input,
          method=method,
          keepdims=keepdims,
          interpolation=interpolation,
      )
  
imports: from __future__ import annotations
  import functools
  from typing import Optional
  import torch
  from .None import _dtypes_impl, _util
  from ._normalizations import ArrayLike, AxisLike, DTypeLike, KeepDims, NotImplementedType, OutArray
label_desc: Use image node_id 20 for calling a global function with example usage: percentile(a, q, axis, out, overwrite_input, method, keepdims) and returns: quantile