code: def _test_vision(self, model_name, dtype):
      m = getattr(torchvision.models, model_name)().eval()
      if dtype == torch.bfloat16:
          m = optimization.fuse(m)
      x = torch.rand(1, 3, 224, 224) / 10
      _, graph = self.checkTrace(m, [x], dtype)
      self.assertFused(
          graph,
          [
              "aten::_convolution",
              "aten::batch_norm",
              "aten::relu",
              "aten::linear",
              "aten::avg_pool2d",
              "aten::max_pool2d",
          ],
      )
  
imports: import sys
  import torch
  import unittest
  import itertools
  import torch.nn
  from functools import wraps
  from concurrent import futures
  import torch.nn.functional
  import torch.fx.experimental.optimization
  from torch.testing._internal.jit_utils import JitTestCase
  from torch.testing._internal.common_utils import run_tests, TEST_SCIPY, IS_WINDOWS, IS_MACOS
  from torch.testing._internal.common_device_type import instantiate_device_type_tests, onlyCPU, dtypes
label_desc: Use image node_id 1 for calling the TestModel obj's underlying member method code with example usage: obj._test_vision(model_name, dtype) without return types