code: def ubersum(equation, *operands, **kwargs):
      """
      Deprecated, use :func:`einsum` instead.
      """
      warnings.warn(
          "'ubersum' is deprecated, use 'pyro.ops.contract.einsum' instead",
          DeprecationWarning,
      )
      if "batch_dims" in kwargs:
          warnings.warn(
              "'batch_dims' is deprecated, use 'plates' instead",
              DeprecationWarning,
          )
          kwargs["plates"] = kwargs.pop("batch_dims")
      kwargs.setdefault("backend", "pyro.ops.einsum.torch_log")
      return einsum(equation, *operands, **kwargs)
  
imports: import itertools
  import warnings
  from collections import OrderedDict, defaultdict
  import opt_einsum
  import torch
  from opt_einsum import shared_intermediates
  from pyro.ops.rings import BACKEND_TO_RING, LogRing
  from pyro.util import ignore_jit_warnings
label_desc: Use image node_id 8 for calling a global function with example usage: ubersum(equation) and returns: einsum