code: def vdot(a, b):
      """Returns the dot product of two vectors.
  
      The input arrays are flattened into 1-D vectors and then it performs inner
      product of these vectors.
  
      Args:
          a (cupy.ndarray): The first argument.
          b (cupy.ndarray): The second argument.
  
      Returns:
          cupy.ndarray: Zero-dimensional array of the dot product result.
  
      .. seealso:: :func:`numpy.vdot`
  
      """
      if a.size != b.size:
          raise ValueError("Axis dimension mismatch")
      if a.dtype.kind == "c":
          a = a.conj()
  
      return _core.tensordot_core(a, b, None, 1, 1, a.size, ())
  
file_path: cupy/cupy/linalg/_product.py
imports: import collections.abc
  import numbers
  import numpy
  import cupy
  from cupy import _core
  from cupy._core import internal
  from cupy._core._gufuncs import _GUFunc
  from cupy.linalg import _solve
  from cupy.linalg import _util
label_desc: Use image node_id 2 for calling a global function with example usage: vdot(a, b) and returns: _core