code: def testLogits(self):
      tf.compat.v1.set_random_seed(1)
      wrapped = q_policy.QPolicy(
          self._time_step_spec, self._action_spec, q_network=DummyNet()
      )
      policy = boltzmann_policy.BoltzmannPolicy(
          wrapped, temperature=0.5
      )
  
      observations = tf.constant([[1, 2]], dtype=tf.float32)
      time_step = ts.restart(observations, batch_size=1)
      distribution_step = policy.distribution(time_step)
      logits = distribution_step.action.logits
      original_logits = wrapped.distribution(time_step).action.logits
      self.evaluate(tf.compat.v1.global_variables_initializer())
      # The un-temperature'd logits would be 4 and 5.5, because it is (1 2) . (1
      # 1) + 1 and (1 2) . (1.5 1.5) + 1. The temperature'd logits will be double
      # that.
      self.assertAllEqual([[4.0, 5.5]], self.evaluate(original_logits))
      self.assertAllEqual([[8.0, 11.0]], self.evaluate(logits))
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import tensorflow
  from tf_agents.networks import network
  from tf_agents.policies import boltzmann_policy
  from tf_agents.policies import q_policy
  from tf_agents.specs import tensor_spec
  from tf_agents.trajectories import time_step
  from tf_agents.utils import test_utils
label_desc: Use image node_id 5 for calling the BoltzmannPolicyTest obj's underlying member method code with example usage: obj.testLogits() without return types