docstr: Fuse conv/bn/relu modules in resnet models
  
  Fuse conv+bn+relu/ Conv+relu/conv+Bn modules to prepare for quantization.
  Model is modified in place.  Note that this operation does not change numerics
  and the model after modification is in floating point
code: def fuse_model(self, is_qat: Optional[bool] = None) -> None:
      r"""Fuse conv/bn/relu modules in resnet models
  
      Fuse conv+bn+relu/ Conv+relu/conv+Bn modules to prepare for quantization.
      Model is modified in place.  Note that this operation does not change numerics
      and the model after modification is in floating point
      """
      _fuse_modules(
          self, ["conv1", "bn1", "relu"], is_qat, inplace=True
      )
      for m in self.modules():
          if (
              type(m) is QuantizableBottleneck
              or type(m) is QuantizableBasicBlock
          ):
              m.fuse_model(is_qat)
  
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 QuantizableResNet obj's underlying member method code with example usage: obj.fuse_model(is_qat) without return types