code: def extra_action_out_fn(
      policy: Policy, input_dict, state_batches, model, action_dist
  ) -> Dict[str, TensorType]:
      return {"q_values": policy.q_values}
  
imports: from typing import Dict, Tuple
  import gymnasium
  import ray
  from ray.rllib.algorithms.dqn.dqn_tf_policy import PRIO_WEIGHTS, postprocess_nstep_and_prio
  from ray.rllib.algorithms.dqn.dqn_torch_policy import adam_optimizer, build_q_model_and_distribution, compute_q_values
  from ray.rllib.algorithms.r2d2.r2d2_tf_policy import get_distribution_inputs_and_class
  from ray.rllib.models.modelv2 import ModelV2
  from ray.rllib.models.torch.torch_action_dist import TorchDistributionWrapper
  from ray.rllib.policy.policy import Policy
  from ray.rllib.policy.policy_template import build_policy_class
  from ray.rllib.policy.sample_batch import SampleBatch
  from ray.rllib.policy.torch_mixins import LearningRateSchedule, TargetNetworkMixin
  from ray.rllib.utils.framework import try_import_torch
  from ray.rllib.utils.torch_utils import FLOAT_MIN, apply_grad_clipping, concat_multi_gpu_td_errors, huber_loss, sequence_mask
  from ray.rllib.utils.typing import AlgorithmConfigDict, TensorType
label_desc: Use image node_id 9 for calling a global function with example usage: extra_action_out_fn(policy, input_dict, state_batches, model, action_dist) and returns: dict