docstr: we have:
  w(float) -- quant - dequant         x(float) ------------- F.conv3d ---
  
  In the full model, we will see
  w(float) -- quant - *dequant         x -- quant --- *dequant --  *F.conv3d --- *quant - dequant
  and the backend should be able to fuse the ops with `*` into a quantized conv3d
docstr_tok: ["we","have",":","w","(","float",")","--","quant","-","dequant","x","(","float",")","--","--","--","--","--","--","-","F.conv3d","--","-","In","the","full","model",",","we","will","see","w","(","float",")","--","quant","-","*","dequant","x","--","quant","--","-","*","dequant","--","*","F.conv3d","--","-","*","quant","-","dequant","and","the","backend","should","be","able","to","fuse","the","ops","with","`","*","`","into","a","quantized","conv3d"]
code: def forward(self, x: torch.Tensor) -> torch.Tensor:
      """
          we have:
          w(float) -- quant - dequant \
          x(float) ------------- F.conv3d ---
  
          In the full model, we will see
          w(float) -- quant - *dequant \
          x -- quant --- *dequant --  *F.conv3d --- *quant - dequant
          and the backend should be able to fuse the ops with `*` into a quantized conv3d
          """
      weight_quant_dequant = self.get_weight()
      result = F.conv3d(
          x,
          weight_quant_dequant,
          self.bias,
          self.stride,
          self.padding,
          self.dilation,
          self.groups,
      )
      return result
  
imports: import torch
  import torch.nn
  import torch.nn.functional
  from typing import Optional, Dict, Any, List
  from torch.nn.common_types import _size_1_t
  from .utils import ReferenceQuantizedModule
label_desc: Use image node_id 2 for calling the Conv3d obj's underlying member method code with example usage: obj.forward(x) and returns: result