class_docstr: Abstract base class for torch stochastic policies.
class_docstr_tok: ["Abstract","base","class","for","torch","stochastic","policies","."]
docstr: Compute the action distributions from the observations.
  
  Args:
      observations (torch.Tensor): Batch of observations on default
          torch device.
  
  Returns:
      torch.distributions.Distribution: Batch distribution of actions.
      dict[str, torch.Tensor]: Additional agent_info, as torch Tensors.
          Do not need to be detached, and can be on any device.
docstr_tok: ["Compute","the","action","distributions","from","the","observations",".","Args",":","observations","(","torch.Tensor",")",":","Batch","of","observations","on","default","torch","device",".","Returns",":","torch.distributions.Distribution",":","Batch","distribution","of","actions",".","dict","[","str",",","torch.Tensor","]",":","Additional","agent_info",",","as","torch","Tensors",".","Do","not","need","to","be","detached",",","and","can","be","on","any","device","."]
code: def forward(self, observations):
      """Compute the action distributions from the observations.
  
      Args:
          observations (torch.Tensor): Batch of observations on default
              torch device.
  
      Returns:
          torch.distributions.Distribution: Batch distribution of actions.
          dict[str, torch.Tensor]: Additional agent_info, as torch Tensors.
              Do not need to be detached, and can be on any device.
      """
  
file_path: garage/src/garage/torch/policies/stochastic_policy.py
imports: import abc
  import akro
  import numpy
  import torch
  from garage.torch._functions import list_to_tensor, np_to_torch
  from garage.torch.policies.policy import Policy
label_desc: Use image node_id 3 for calling the StochasticPolicy obj's underlying member method code with example usage: obj.forward(observations) without return types