code: def make_byte_inputs(
      batch: List[List[str]],
      max_byte_len: int,
      offset_for_non_padding: int = 0,
  ) -> Tuple[torch.Tensor, torch.Tensor]:
      seq_lens = make_sequence_lengths(batch)
      max_num_tokens = max(seq_lens)
      bytes = torch.zeros(
          len(batch), max_num_tokens, max_byte_len, dtype=torch.long
      )
  
      for batch_index in range(len(batch)):
          sentence = batch[batch_index]
          for token_index in range(len(sentence)):
              token = sentence[token_index]
              for byte_index in range(min(len(token), max_byte_len)):
                  s = token[byte_index]
                  # use empty string as eos because torchscript not support chr()
                  if s == "":
                      v = 256
                  else:
                      v = ord(s)
                  # add offset_for_non_padding to conform to Fairseq pre-training
                  bytes[batch_index][token_index][byte_index] = (
                      v + offset_for_non_padding
                  )
  
      return bytes, torch.tensor(seq_lens)
  
imports: from typing import List, NamedTuple, Optional, Tuple
  import torch
  from torch import Tensor
label_desc: Use image node_id 15 for calling a global function with example usage: make_byte_inputs(batch, max_byte_len, offset_for_non_padding) and returns: bytes,  torch