code: def get_optimizers(
      *names: str, seed: tp.Optional[int] = None
  ) -> tp.List[Optim]:
      """Returns an deterministically ordered list of optimizers, belonging to the
      provided groups. If a seed is provided, it is used to shuffle the list.
  
      Parameters
      ----------
      *names: str
          names of the groups to use. See nevergrad/benchmarks/optimizer_groups.txt
          (generated/updated when running pytest)
          for the list of groups and what they contain
      seed: optional int
          a seed to shuffle the list of optimizers
      """
      optims: tp.List[Optim] = []
      for name in names:
          for optim in registry[name]():
              if optim not in optims:  # avoid duplicates
                  optims.append(optim)
      if seed is not None:
          np.random.RandomState(seed).shuffle(optims)  # type: ignore
      return optims
  
imports: import typing
  import numpy
  import nevergrad
  from nevergrad.common.decorators import Registry
  from nevergrad.optimization import base
  from nevergrad.optimization.optimizerlib import ConfSplitOptimizer
  from nevergrad.optimization.optimizerlib import registry
  from nevergrad.optimization.optimizerlib import ParametrizedOnePlusOne
  from nevergrad.optimization.optimizerlib import NonObjectOptimizer
label_desc: Use image node_id 1 for calling a global function with example usage: get_optimizers() and returns: optims