code: def model(sigma):
      eta = pyro.sample(
          "eta", dist.Normal(torch.zeros(data.J), torch.ones(data.J))
      )
      mu = pyro.sample(
          "mu", dist.Normal(torch.zeros(1), 10 * torch.ones(1))
      )
      tau = pyro.sample(
          "tau", dist.HalfCauchy(scale=25 * torch.ones(1))
      )
  
      theta = mu + tau * eta
  
      return pyro.sample("obs", dist.Normal(theta, sigma))
  
file_path: pyro/examples/eight_schools/mcmc.py
imports: import argparse
  import logging
  import data
  import torch
  import pyro
  import pyro.distributions
  import pyro.poutine
  from pyro.infer import MCMC, NUTS
label_desc: Use image node_id 1 for calling a global function with example usage: model(sigma) and returns: pyro