class_docstr: A general model arch for mapping from state and action to scalar values.
  
  The model arch is often used to implement the critic in actor-critic algorithms.
code: def forward(self, state: rlt.FeatureData, action: rlt.FeatureData):
      state_float_features_dim = state.float_features.dim()
      action_float_features_dim = action.float_features.dim()
      state_float_features_batch_size = state.float_features.size(dim=0)
      action_float_features_batch_size = action.float_features.size(
          dim=0
      )
  
      run_feature_validation(
          state_float_features_dim,
          action_float_features_dim,
          state_float_features_batch_size,
          action_float_features_batch_size,
      )
      cat_input = torch.cat(
          (state.float_features, action.float_features), dim=-1
      )
      return self.fc(cat_input)
  
file_path: ReAgent/reagent/models/critic.py
imports: from typing import List
  import torch
  import torch.fx
  from reagent.core import types
  from reagent.models.base import ModelBase
  from reagent.models.fully_connected_network import FullyConnectedNetwork
label_desc: Use image node_id 3 for calling the FullyConnectedCritic obj's underlying member method code with example usage: obj.forward(state, action) and returns: self