code: def _fulldot(x, y):
      assert x.dim() == y.dim()
      if x.dim() == 0:
          return x * y
      return torch.tensordot(x, y, dims=x.dim())
  
imports: import math
  import numbers
  from collections import Counter, defaultdict
  from contextlib import contextmanager
  import torch
  from opt_einsum import shared_intermediates
  from opt_einsum.sharing import count_cached_ops
  from pyro.distributions.util import is_identically_zero
  from pyro.ops import packed
  from pyro.ops.einsum.adjoint import require_backward
  from pyro.ops.rings import MarginalRing
  from pyro.poutine.util import site_is_subsample
  from ..None import settings
label_desc: Use image node_id 12 for calling a global function with example usage: _fulldot(x, y) and returns: torch, unknown