class_docstr: Wraps the nevergrad library to expose its algorithm to orion
  
  Parameters
  ----------
  space: `orion.algo.space.Space`
      Optimisation space with priors for each dimension.
  model_name: str
      Nevergrad model to use as optimizer
  budget: int
      Maximal number of trial to generated
  num_workers: int
      Number of worker to use
  seed: None, int or sequence of int
      Seed for the random number generator used to sample new trials.
      Default: ``None``
docstr: Suggest a number of new sets of parameters.
  
  Parameters
  ----------
  num: int, optional
      Number of trials to suggest. The algorithm may return less than the number of trials
      requested.
  
  Returns
  -------
  list of trials
      A list of trials representing values suggested by the algorithm. The algorithm may opt
      out if it cannot make a good suggestion at the moment (it may be waiting for other
      trials to complete), in which case it will return None.
docstr_tok: ["Suggest","a","number","of","new","sets","of","parameters",".","Parameters","--","--","--","--","--","num",":","int",",","optional","Number","of","trials","to","suggest",".","The","algorithm","may","return","less","than","the","number","of","trials","requested",".","Returns","--","--","--","-","list","of","trials","A","list","of","trials","representing","values","suggested","by","the","algorithm",".","The","algorithm","may","opt","out","if","it","can","not","make","a","good","suggestion","at","the","moment","(","it","may","be","waiting","for","other","trials","to","complete",")",",","in","which","case","it","will","return","None","."]
code: def suggest(self, num: int) -> list[Trial]:
      """Suggest a number of new sets of parameters.
  
      Parameters
      ----------
      num: int, optional
          Number of trials to suggest. The algorithm may return less than the number of trials
          requested.
  
      Returns
      -------
      list of trials
          A list of trials representing values suggested by the algorithm. The algorithm may opt
          out if it cannot make a good suggestion at the moment (it may be waiting for other
          trials to complete), in which case it will return None.
  
      """
      attempts = 0
      max_attempts = num + 100
      trials: list[Trial] = []
  
      while (
          len(trials) < num
          and attempts < max_attempts
          and self._can_produce()
      ):
          attempts += 1
  
          trial = self._ask()
          if trial is not None:
              trials.append(trial)
  
      if not trials and self._can_produce():
          self._is_done = True
  
      self._fresh = False
      return trials
  
imports: from __future__ import annotations
  import logging
  import pickle
  from typing import Callable, Iterable, Sequence, SupportsInt
  from orion.algo.base import BaseAlgorithm
  from orion.algo.space import Categorical, Dimension, Fidelity, Integer, Real, Space
  from orion.core.utils.format_trials import dict_to_trial
  from orion.core.utils.module_import import ImportOptional
  from orion.core.worker.trial import Trial
label_desc: Use image node_id 8 for calling the NevergradOptimizer obj's underlying member method code with example usage: obj.suggest(num) and returns: trials