code: def _cached_ignore_args(method=None, name=None):
      """A decorator allowing for specifying the name of a cache, allowing it to be modified elsewhere.
      This variant ignores the calling args to the decorated function.
      """
      if method is None:
          return functools.partial(_cached_ignore_args, name=name)
  
      @functools.wraps(method)
      def g(self, *args, **kwargs):
          cache_name = name if name is not None else method
          if not _is_in_cache_ignore_args(self, cache_name):
              return _add_to_cache_ignore_args(
                  self, cache_name, method(self, *args, **kwargs)
              )
          return _get_from_cache_ignore_args(self, cache_name)
  
      return g
  
file_path: gpytorch/gpytorch/utils/memoize.py
imports: import functools
  import pickle
  from .errors import CachingError
label_desc: Use image node_id 8 for calling a global function with example usage: _cached_ignore_args(method, name) and returns: g, functools, _get_from_cache_ignore_args, _add_to_cache_ignore_args