class_docstr: A wrapper algorithm for repeating trials of same parameters.
  
  Set tune.TuneConfig(num_samples=...) to be a multiple of `repeat`. For example,
  set num_samples=15 if you intend to obtain 3 search algorithm suggestions
  and repeat each suggestion 5 times. Any leftover trials
  (num_samples mod repeat) will be ignored.
  
  It is recommended that you do not run an early-stopping TrialScheduler
  simultaneously.
  
  Args:
      searcher: Searcher object that the
          Repeater will optimize. Note that the Searcher
          will only see 1 trial among multiple repeated trials.
          The result/metric passed to the Searcher upon
          trial completion will be averaged among all repeats.
      repeat: Number of times to generate a trial with a repeated
          configuration. Defaults to 1.
      set_index: Sets a tune.search.repeater.TRIAL_INDEX in
          Trainable/Function config which corresponds to the index of the
          repeated trial. This can be used for seeds. Defaults to True.
  
  Example:
  
  .. code-block:: python
  
      from ray.tune.search import Repeater
  
      search_alg = BayesOptSearch(...)
      re_search_alg = Repeater(search_alg, repeat=10)
  
      # Repeat 2 samples 10 times each.
      tuner = tune.Tuner(
          trainable,
          tune_config=tune.TuneConfig(
              search_alg=re_search_alg,
              num_samples=20,
          ),
      )
      tuner.fit()
class_docstr_tok: ["A","wrapper","algorithm","for","repeating","trials","of","same","parameters",".","Set","tune.TuneConfig","(","num_samples=","...",")","to","be","a","multiple","of","`","repeat","`",".","For","example",",","set","num_samples=15","if","you","intend","to","obtain","3","search","algorithm","suggestions","and","repeat","each","suggestion","5","times",".","Any","leftover","trials","(","num_samples","mod","repeat",")","will","be","ignored",".","It","is","recommended","that","you","do","not","run","an","early-stopping","TrialScheduler","simultaneously",".","Args",":","searcher",":","Searcher","object","that","the","Repeater","will","optimize",".","Note","that","the","Searcher","will","only","see","1","trial","among","multiple","repeated","trials",".","The","result\/metric","passed","to","the","Searcher","upon","trial","completion","will","be","averaged","among","all","repeats",".","repeat",":","Number","of","times","to","generate","a","trial","with","a","repeated","configuration",".","Defaults","to","1.","set_index",":","Sets","a","tune.search.repeater.TRIAL_INDEX","in","Trainable\/Function","config","which","corresponds","to","the","index","of","the","repeated","trial",".","This","can","be","used","for","seeds",".","Defaults","to","True",".","Example",":","..","code-block",":",":","python","from","ray.tune.search","import","Repeater","search_alg","=","BayesOptSearch","(","...",")","re_search_alg","=","Repeater","(","search_alg",",","repeat=10",")","#","Repeat","2","samples","10","times","each",".","tuner","=","tune.Tuner","(","trainable",",","tune_config=tune.TuneConfig","(","search_alg=re_search_alg",",","num_samples=20",",",")",",",")","tuner.fit","(",")"]
code: def restore(self, checkpoint_path: str):
      self.searcher.restore(checkpoint_path)
  
imports: import copy
  import logging
  from typing import Dict, List, Optional
  import numpy
  from ray.tune.search import Searcher
  from ray.tune.search.util import _set_search_properties_backwards_compatible
  from ray.util import PublicAPI
label_desc: Use image node_id 7 for calling the Repeater obj's underlying member method code with example usage: obj.restore(checkpoint_path) without return types