code: def get_B1_T10_U3_D4_data(
      random=False,
      dtype=torch.float32,
      device=CPU_DEVICE,
  ):
      B, T, U, D = 2, 10, 3, 4
  
      logits = torch.rand(B, T, U, D, dtype=dtype, device=device)
      if not random:
          logits.fill_(0.1)
      logits.requires_grad_(True)
  
      def grad_hook(grad):
          logits.saved_grad = grad.clone()
  
      logits.register_hook(grad_hook)
  
      data = {}
      data["logits"] = logits
      data["logit_lengths"] = torch.tensor(
          [10, 10], dtype=torch.int32, device=device
      )
      data["target_lengths"] = torch.tensor(
          [2, 2], dtype=torch.int32, device=device
      )
      data["targets"] = torch.tensor(
          [[1, 2], [1, 2]], dtype=torch.int32, device=device
      )
      data["blank"] = 0
      data["fused_log_softmax"] = False
  
      return data
  
imports: import random
  import unittest
  import numpy
  import torch
  from torchaudio.functional import rnnt_loss
label_desc: Use image node_id 4 for calling a global function with example usage: get_B1_T10_U3_D4_data(random, dtype, device) and returns: data