class_docstr: Version of parlai.utils.bpe.Gpt2BpeHelper that can be TorchScripted.
class_docstr_tok: ["Version","of","parlai.utils.bpe.Gpt2BpeHelper","that","can","be","TorchScripted","."]
docstr: Decode list of tokens into text string.
  
  :param tokens:
      list of tokens
  
  :return:
      decoded text
docstr_tok: ["Decode","list","of","tokens","into","text","string",".",":","param","tokens",":","list","of","tokens",":","return",":","decoded","text"]
code: def helper_decode(self, tokens: List[str]) -> str:
      """
      Decode list of tokens into text string.
  
      :param tokens:
          list of tokens
  
      :return:
          decoded text
      """
      chars: List[str] = []
      for token in tokens:
          decoded_token = self.decoder[token]
          token_chars = self.utf8_chars(decoded_token)
          for char in token_chars:
              if not torch.jit.is_scripting():
                  # We iterate over "char", which is supposed to be a single
                  # character, because the TorchScripted version of the code
                  # correctly splits a string into single characters in
                  # self.utf8_chars() but the non-TorchScripted version doesn't
                  chars.extend(list(char))
              else:
                  chars.append(char)
      decoded_chars: List[str] = []
      for char in chars:
          decoded_chars.append(chr(self.byte_decoder[char]))
      return "".join(decoded_chars)
  
imports: from typing import Dict, List, Tuple
  import torch.jit
label_desc: Use image node_id 8 for calling the ScriptableGpt2BpeHelper obj's underlying member method code with example usage: obj.helper_decode(tokens) and returns: str