code: def fuse_model(self, is_qat: Optional[bool] = None) -> None:
      _fuse_modules(
          self,
          [
              ["conv1", "bn1", "relu1"],
              ["conv2", "bn2", "relu2"],
              ["conv3", "bn3"],
          ],
          is_qat,
          inplace=True,
      )
      if self.downsample:
          _fuse_modules(
              self.downsample, ["0", "1"], is_qat, inplace=True
          )
  
imports: from functools import partial
  from typing import Any, List, Optional, Type, Union
  import torch
  import torch.nn
  from torch import Tensor
  from torchvision.models.resnet import BasicBlock, Bottleneck, ResNet, ResNet18_Weights, ResNet50_Weights, ResNeXt101_32X8D_Weights, ResNeXt101_64X4D_Weights
  from ...transforms._presets import ImageClassification
  from .._api import register_model, Weights, WeightsEnum
  from .._meta import _IMAGENET_CATEGORIES
  from .._utils import _ovewrite_named_param, handle_legacy_interface
  from .utils import _fuse_modules, _replace_relu, quantize_model
label_desc: Use image node_id 3 for calling the QuantizableBottleneck obj's underlying member method code with example usage: obj.fuse_model(is_qat) without return types