class_docstr: A CQL-SAC Agent based on the SAC Agent.
code: def _check_action_spec(self, action_spec):
      super(CqlSacAgent, self)._check_action_spec(action_spec)
  
      flat_action_spec = tf.nest.flatten(action_spec)
      if len(flat_action_spec) > 1:
          raise ValueError(
              "Only single action specs are supported now, but action spec is: {}".format(
                  action_spec
              )
          )
  
imports: from typing import Callable, Dict, NamedTuple, Optional, Text, Tuple, Union
  import gin
  import tensorflow
  import tensorflow_probability
  from tf_agents.agents import tf_agent
  from tf_agents.agents.sac import sac_agent
  from tf_agents.networks import network
  from tf_agents.policies import actor_policy
  from tf_agents.policies import tf_policy
  from tf_agents.trajectories import time_step
  from tf_agents.typing import types
  from tf_agents.utils import common
  from tf_agents.utils import nest_utils
  from tf_agents.utils import object_identity
label_desc: Use image node_id 2 for calling the CqlSacAgent obj's underlying member method code with example usage: obj._check_action_spec(action_spec) without return types