code: def test_inverse_conditional_transform_module(
      batch_shape, input_dim, context_dim
  ):
      cond_transform = T.conditional_spline(input_dim, context_dim, [6])
  
      noise = torch.rand(batch_shape + (input_dim,))
      context = torch.rand(batch_shape + (context_dim,))
  
      assert_close(
          cond_transform.inv.condition(context)(noise),
          cond_transform.condition(context).inv(noise),
      )
  
      assert cond_transform.inv.inv is cond_transform
      assert_close(
          cond_transform.inv.condition(context).inv(noise),
          cond_transform.condition(context).inv.inv(noise),
      )
  
imports: import operator
  from functools import partial, reduce
  from unittest import TestCase
  import pytest
  import torch
  import pyro.distributions
  import pyro.distributions.transforms
  from pyro.distributions import constraints
  from tests.common import assert_close
label_desc: Use image node_id 3 for calling a global function with example usage: test_inverse_conditional_transform_module(batch_shape, input_dim, context_dim) without return types