code: def test_get_detached_model_outputs(self):
      trainer = self._construct_trainer()
      action_scores, _ = trainer.get_detached_model_outputs(
          FeatureData(
              float_features=torch.rand(self.batch_size, self.state_dim)
          )
      )
      self.assertEqual(action_scores.shape[0], self.batch_size)
      self.assertEqual(action_scores.shape[1], self.action_dim)
  
imports: import unittest
  import torch
  from reagent.core.parameters import EvaluationParameters, RLParameters
  from reagent.core.types import DiscreteDqnInput, ExtraData, FeatureData
  from reagent.evaluation.evaluator import get_metrics_to_score
  from reagent.models.actor import FullyConnectedActor
  from reagent.models.dqn import FullyConnectedDQN
  from reagent.training.discrete_crr_trainer import DiscreteCRRTrainer
  from reagent.training.parameters import CRRTrainerParameters
  from reagent.workflow.types import RewardOptions
label_desc: Use image node_id 8 for calling the TestCRR obj's underlying member method code with example usage: obj.test_get_detached_model_outputs() without return types