class_docstr: A sampler using `torch.fork_rng` to enable replicable sampling
  from a posterior that does not support base samples.
  
  NOTE: This approach is not a one-to-one replacement for base sample
  driven sampling. The main missing piece in this approach is that its
  outputs are not replicable across the batch dimensions. As a result,
  when an acquisition function is batch evaluated with repeated candidates,
  each candidate will produce a different acquisition value, which is not
  compatible with Sample Average Approximation.
docstr: Draws MC samples from the posterior in a `fork_rng` context.
  
  Args:
      posterior: The posterior to sample from.
  
  Returns:
      The samples drawn from the posterior.
docstr_tok: ["Draws","MC","samples","from","the","posterior","in","a","`","fork_rng","`","context",".","Args",":","posterior",":","The","posterior","to","sample","from",".","Returns",":","The","samples","drawn","from","the","posterior","."]
code: def forward(self, posterior: Posterior) -> Tensor:
      r"""Draws MC samples from the posterior in a `fork_rng` context.
  
      Args:
          posterior: The posterior to sample from.
  
      Returns:
          The samples drawn from the posterior.
      """
      with torch.random.fork_rng():
          torch.manual_seed(self.seed)
          return posterior.rsample(sample_shape=self.sample_shape)
  
file_path: botorch/botorch/sampling/stochastic_samplers.py
imports: from __future__ import annotations
  import torch
  from botorch.posteriors import Posterior
  from botorch.sampling.base import MCSampler
  from torch import Tensor
label_desc: Use image node_id 1 for calling the ForkedRNGSampler obj's underlying member method code with example usage: obj.forward(posterior) and returns: posterior