class_docstr: Test CollaborativeExperts model
code: def test_forward(self):
      batch_size = 2
      experts = {
          "audio": torch.rand(batch_size, 29, 128),
          "ocr": torch.rand(batch_size, 49, 300),
          "speech": torch.rand(batch_size, 32, 300),
      }
      ind = {
          "audio": torch.ones(
              batch_size,
          ),
          "speech": torch.ones(
              batch_size,
          ),
          "ocr": torch.ones(
              batch_size,
          ),
      }
      text = torch.randn(batch_size, 1, 37, self.text_dim)
  
      if torch.cuda.is_available():
          for key in experts:
              experts[key] = experts[key].cuda()
          for key in experts:
              ind[key] = ind[key].cuda()
          text = text.cuda()
  
      out = self.ce_net(experts, ind, text)
      self.assertEqual(
          out["cross_view_conf_matrix"].shape, (batch_size, batch_size)
      )
  
      self.assertEqual(
          out["text_embds"]["audio"].shape,
          (batch_size, 1, self.text_dim),
      )
  
      self.assertEqual(
          out["vid_embds"]["audio"].shape, (batch_size, self.text_dim)
      )
  
imports: import unittest
  from collections import OrderedDict
  import torch
  from towhee.models.collaborative_experts import create_model
label_desc: Use image node_id 1 for calling the TestCollaborativeExperts obj's underlying member method code with example usage: obj.test_forward() without return types