code: def sample_tqc_params(trial: optuna.Trial) -> dict[str, Any]:
      """
      Sampler for TQC hyperparams.
  
      :param trial:
      :return:
      """
      # TQC is SAC + Distributional RL
      hyperparams = sample_sac_params(trial)
  
      n_quantiles = trial.suggest_int("n_quantiles", 5, 50)
      top_quantiles_to_drop_per_net = trial.suggest_int(
          "top_quantiles_to_drop_per_net", 0, n_quantiles - 1
      )
  
      hyperparams["policy_kwargs"].update({"n_quantiles": n_quantiles})
      hyperparams[
          "top_quantiles_to_drop_per_net"
      ] = top_quantiles_to_drop_per_net
  
      return hyperparams
  
file_path: FinRL/finrl/agents/stablebaselines3/hyperparams_opt.py
imports: from __future__ import annotations
  from typing import Any
  from typing import Dict
  import numpy
  import optuna
  from stable_baselines3.common.noise import NormalActionNoise
  from stable_baselines3.common.noise import OrnsteinUhlenbeckActionNoise
  from torch import nn
  from utils import linear_schedule
label_desc: Use image node_id 9 for calling a global function with example usage: sample_tqc_params(trial) and returns: hyperparams