code: def open_datasets(path, backend_kwargs={}, no_warn=False, **kwargs):
      # type: (str, T.Dict[str, T.Any], bool, T.Any) -> T.List[xr.Dataset]
      
      if not no_warn:
          warnings.warn("open_datasets is an experimental API, DO NOT RELY ON IT!", FutureWarning)
  
      fbks = []
      datasets = []
      try:
          datasets.append(open_dataset(path, backend_kwargs=backend_kwargs, **kwargs))
      except DatasetBuildError as ex:
          fbks.extend(ex.args[2])
      # NOTE: the recursive call needs to stay out of the exception handler to avoid showing
      #   to the user a confusing error message due to exception chaining
      for fbk in fbks:
          bks = backend_kwargs.copy()
          bks['filter_by_keys'] = fbk
          datasets.extend(open_datasets(path, backend_kwargs=bks, no_warn=True, **kwargs))
      return datasets
docs: Open a GRIB file groupping incompatible hypercubes to different datasets via simple heuristics.