class_docstr: Aim Logger: logs metrics in Aim format.
  
  Aim is an open-source, self-hosted ML experiment tracking tool.
  It's good at tracking lots (thousands) of training runs, and it allows you to
  compare them with a performant and well-designed UI.
  
  Source: https://github.com/aimhubio/aim
  
  Args:
      repo: Aim repository directory or a `Repo` object that the Run object will
          log results to. If not provided, a default repo will be set up in the
          experiment directory (one level above trial directories).
      experiment: Sets the `experiment` property of each Run object, which is the
          experiment name associated with it. Can be used later to query
          runs/sequences.
          If not provided, the default will be the Tune experiment name set
          by `RunConfig(name=...)`.
      metrics: List of metric names (out of the metrics reported by Tune) to
          track in Aim. If no metric are specified, log everything that
          is reported.
      aim_run_kwargs: Additional arguments that will be passed when creating the
          individual `Run` objects for each trial. For the full list of arguments,
          please see the Aim documentation:
          https://aimstack.readthedocs.io/en/latest/refs/sdk.html
code: def _log_trial_hparams(self, trial: "Trial"):
      params = flatten_dict(trial.evaluated_params, delimiter="/")
      flat_params = flatten_dict(params)
  
      scrubbed_params = {
          k: v
          for k, v in flat_params.items()
          if isinstance(v, self.VALID_HPARAMS)
      }
  
      np_params = {
          k: v.tolist()
          for k, v in flat_params.items()
          if isinstance(v, self.VALID_NP_HPARAMS)
      }
  
      scrubbed_params.update(np_params)
      removed = {
          k: v
          for k, v in flat_params.items()
          if not isinstance(
              v, self.VALID_HPARAMS + self.VALID_NP_HPARAMS
          )
      }
      if removed:
          logger.info(
              "Removed the following hyperparameter values when "
              "logging to aim: %s",
              str(removed),
          )
  
      run = self._trial_to_run[trial]
      run["hparams"] = scrubbed_params
  
file_path: ray/python/ray/tune/logger/aim.py
imports: import logging
  import numpy
  from typing import TYPE_CHECKING, Dict, Optional, List, Union
  from ray.air.constants import TRAINING_ITERATION
  from ray.tune.logger.logger import LoggerCallback
  from ray.tune.result import TIME_TOTAL_S, TIMESTEPS_TOTAL
  from ray.tune.utils import flatten_dict
  from ray.util.annotations import PublicAPI
label_desc: Use image node_id 6 for calling the AimLoggerCallback obj's underlying member method code with example usage: obj._log_trial_hparams(trial) without return types