code: def test_multiple_inputs_dataloader(self):
      # legal dataloader 1: Tuple(torch.Tensor), torch.Tensor
      dataset = ChainTensorDataset(
          ChainTensorDataset(input1, input2),
          ChainTensorDataset(label1, label2),
      )
      loader = DataLoader(dataset, batch_size=5)
      model = ModelWithMultipleInputs()
      trainer = Trainer()
      loss = lambda x, y: torch.mean(x[0] + x[1] + y[0] + y[1])
      model = trainer.compile(
          model,
          loss,
          optimizer=torch.optim.SGD(params=model.parameters(), lr=0.01),
      )
  
      (x1, x2), (y1, y2) = next(iter(loader))
      assert (
          isinstance(x1, torch.Tensor)
          and isinstance(x2, torch.Tensor)
          and isinstance(y1, torch.Tensor)
          and isinstance(y2, torch.Tensor)
      )
  
      trainer.quantize(model, calib_data=loader)
  
imports: from unittest import TestCase
  import operator
  import pytest
  import torch
  from torch.utils.data import TensorDataset, DataLoader, Dataset
  from torch import nn
  import torchmetrics
  from bigdl.nano.pytorch import Trainer
  from bigdl.nano.utils.common import compare_version
label_desc: Use image node_id 1 for calling the TestDataloader obj's underlying member method code with example usage: obj.test_multiple_inputs_dataloader() without return types