class_docstr: Policy object that implements a SAC-like actor critic
  
  :param sess: (TensorFlow session) The current TensorFlow session
  :param ob_space: (Gym Space) The observation space of the environment
  :param ac_space: (Gym Space) The action space of the environment
  :param n_env: (int) The number of environments to run
  :param n_steps: (int) The number of steps to run for each environment
  :param n_batch: (int) The number of batch to run (n_envs * n_steps)
  :param reuse: (bool) If the policy is reusable or not
  :param scale: (bool) whether or not to scale the input
class_docstr_tok: ["Policy","object","that","implements","a","SAC-like","actor","critic",":","param","sess",":","(","TensorFlow","session",")","The","current","TensorFlow","session",":","param","ob_space",":","(","Gym","Space",")","The","observation","space","of","the","environment",":","param","ac_space",":","(","Gym","Space",")","The","action","space","of","the","environment",":","param","n_env",":","(","int",")","The","number","of","environments","to","run",":","param","n_steps",":","(","int",")","The","number","of","steps","to","run","for","each","environment",":","param","n_batch",":","(","int",")","The","number","of","batch","to","run","(","n_envs","*","n_steps",")",":","param","reuse",":","(","bool",")","If","the","policy","is","reusable","or","not",":","param","scale",":","(","bool",")","whether","or","not","to","scale","the","input"]
docstr: Creates the two Q-Values approximator along with the Value function
  
  :param obs: (TensorFlow Tensor) The observation placeholder (can be None for default placeholder)
  :param action: (TensorFlow Tensor) The action placeholder
  :param reuse: (bool) whether or not to reuse parameters
  :param scope: (str) the scope name
  :param create_vf: (bool) Whether to create Value fn or not
  :param create_qf: (bool) Whether to create Q-Values fn or not
  :return: ([tf.Tensor]) Mean, action and log probability
docstr_tok: ["Creates","the","two","Q-Values","approximator","along","with","the","Value","function",":","param","obs",":","(","TensorFlow","Tensor",")","The","observation","placeholder","(","can","be","None","for","default","placeholder",")",":","param","action",":","(","TensorFlow","Tensor",")","The","action","placeholder",":","param","reuse",":","(","bool",")","whether","or","not","to","reuse","parameters",":","param","scope",":","(","str",")","the","scope","name",":","param","create_vf",":","(","bool",")","Whether","to","create","Value","fn","or","not",":","param","create_qf",":","(","bool",")","Whether","to","create","Q-Values","fn","or","not",":","return",":","(","[","tf.Tensor","]",")","Mean",",","action","and","log","probability"]
code: def make_critics(
      self,
      obs=None,
      action=None,
      reuse=False,
      scope="values_fn",
      create_vf=True,
      create_qf=True,
  ):
      """
      Creates the two Q-Values approximator along with the Value function
  
      :param obs: (TensorFlow Tensor) The observation placeholder (can be None for default placeholder)
      :param action: (TensorFlow Tensor) The action placeholder
      :param reuse: (bool) whether or not to reuse parameters
      :param scope: (str) the scope name
      :param create_vf: (bool) Whether to create Value fn or not
      :param create_qf: (bool) Whether to create Q-Values fn or not
      :return: ([tf.Tensor]) Mean, action and log probability
      """
      raise NotImplementedError
  
imports: import tensorflow
  import numpy
  from gym.spaces import Box
  from stable_baselines.common.policies import BasePolicy, nature_cnn, register_policy
  from stable_baselines.common.tf_layers import mlp
label_desc: Use image node_id 3 for calling the SACPolicy obj's underlying member method code with example usage: obj.make_critics(obs, action, reuse, scope, create_vf, create_qf) without return types