class_docstr: Simple CategoricalMLPModel for testing.
  
  Args:
      output_dim (int): Dimension of the network output.
      name (str): Policy name, also the variable scope.
      args: Extra arguments which are not used.
      kwargs: Extra keyword arguments which are not used.
class_docstr_tok: ["Simple","CategoricalMLPModel","for","testing",".","Args",":","output_dim","(","int",")",":","Dimension","of","the","network","output",".","name","(","str",")",":","Policy","name",",","also","the","variable","scope",".","args",":","Extra","arguments","which","are","not","used",".","kwargs",":","Extra","keyword","arguments","which","are","not","used","."]
docstr: Build model.
  
  Args:
      obs_input (tf.Tensor): Observation inputs.
      name (str): Name of the model, also the name scope.
  
  Returns:
      tf.Tensor: Network outputs.
      tfp.distributions.OneHotCategorical: Distribution.
docstr_tok: ["Build","model",".","Args",":","obs_input","(","tf.Tensor",")",":","Observation","inputs",".","name","(","str",")",":","Name","of","the","model",",","also","the","name","scope",".","Returns",":","tf.Tensor",":","Network","outputs",".","tfp.distributions.OneHotCategorical",":","Distribution","."]
code: def _build(self, obs_input, name=None):
      """Build model.
  
      Args:
          obs_input (tf.Tensor): Observation inputs.
          name (str): Name of the model, also the name scope.
  
      Returns:
          tf.Tensor: Network outputs.
          tfp.distributions.OneHotCategorical: Distribution.
  
      """
      prob = super()._build(obs_input, name)
      dist = tfp.distributions.OneHotCategorical(prob)
      return prob, dist
  
imports: import tensorflow_probability
  from tests.fixtures.models.simple_mlp_model import SimpleMLPModel
label_desc: Use image node_id 3 for calling the SimpleCategoricalMLPModel obj's underlying member method code with example usage: obj._build(obs_input, name) and returns: prob,  dist