class_docstr: Pytorch version >= 1.10 and <1.12, bfloat16 precision is supported.
  But there is no optimization on bfloat16.
code: def test_bf16_channels_last_3d_various_input_sample(self):
      import torch.nn as nn
  
      class DummyModelWith3d(nn.Module):
          """
          A simple model for test various inputs of channels last format
          """
  
          def __init__(self):
              super(DummyModelWith3d, self).__init__()
              self.conv3d_1 = nn.Conv3d(3, 33, 3, stride=2)
  
          def forward(self, x1, x2: int):
              return self.conv3d_1(x1), x2
  
      model = DummyModelWith3d()
      x1 = torch.rand(32, 3, 3, 224, 224)  # 5-dim input test
      x2 = 3
  
      bf16_channels_3d_last_model = InferenceOptimizer.quantize(
          model, precision="bf16", channels_last=True
      )
  
      with InferenceOptimizer.get_context(bf16_channels_3d_last_model):
          bf16_channels_3d_last_model(x1, x2)
  
      with tempfile.TemporaryDirectory() as tmp_dir_name:
          InferenceOptimizer.save(
              bf16_channels_3d_last_model, tmp_dir_name
          )
          load_model = InferenceOptimizer.load(tmp_dir_name, model)
          load_model(x1, x2)
  
imports: from unittest import TestCase
  import pytest
  import torch
  from bigdl.nano.pytorch import InferenceOptimizer
  from torchvision.models.resnet import resnet18
  from unittest.mock import MagicMock, PropertyMock, patch
  from bigdl.nano.utils.pytorch import TORCH_VERSION_LESS_1_12
  import tempfile
label_desc: Use image node_id 9 for calling the Pytorch1_12 obj's underlying member method code with example usage: obj.test_bf16_channels_last_3d_various_input_sample() and returns: self,  x2