code: def posterior_guide(
      y_dict, design, observation_labels, target_labels
  ):
      y = torch.cat(list(y_dict.values()), dim=-1)
      A = pyro.param("A", torch.zeros(2, 3))
      scale_tril = pyro.param(
          "scale_tril",
          torch.tensor([[1.0, 0.0], [0.0, 1.5]]),
          constraint=torch.distributions.constraints.lower_cholesky,
      )
      mu = rmv(A, y)
      pyro.sample(
          "w", dist.MultivariateNormal(mu, scale_tril=scale_tril)
      )
  
imports: import pytest
  import torch
  import pyro
  import pyro.distributions
  import pyro.optim
  from pyro.contrib.oed.eig import donsker_varadhan_eig, laplace_eig, lfire_eig, marginal_eig, marginal_likelihood_eig, nmc_eig, posterior_eig, vnmc_eig
  from pyro.contrib.oed.glmm import known_covariance_linear_model
  from pyro.contrib.oed.glmm.guides import LinearModelLaplaceGuide
  from pyro.contrib.oed.util import linear_model_ground_truth
  from pyro.contrib.util import rmv, rvv
  from pyro.infer import Trace_ELBO
  from tests.common import assert_equal
label_desc: Use image node_id 3 for calling a global function with example usage: posterior_guide(y_dict, design, observation_labels, target_labels) without return types