code: 
  
  
  
  
  
  '''simple docstring'''
  
  from transformers.models.cpm.tokenization_cpm import CpmTokenizer
  from transformers.testing_utils import custom_tokenizers
  
  from ..xlnet.test_modeling_xlnet import XLNetModelTest
  
  
  
  
  
  
  @custom_tokenizers
  class      UpperCAmelCase			( UpperCamelCase__       ):
   def   UpperCAmelCase_							(       self   :int		, lowercase_   :Optional[int]		, lowercase_   :int		, lowercase_   :Union[str, Any]		, lowercase_   :str		, lowercase_   :Dict							)->							Optional[Any]:
       return True
  
  
  
   def   UpperCAmelCase_							(       self   :Dict							)->							Dict:
       A__       =    CpmTokenizer.from_pretrained("TsinghuaAI/CPM-Generate"							)
       A__       =    "Hugging Face大法好，谁用谁知道。"
       A__       =    "Hugging Face大法好,谁用谁知道。<unk>"
       A__       =    "▁Hu gg ing ▁ ▂ ▁F ace ▁大法 ▁好 ▁ , ▁谁 ▁用 ▁谁 ▁知 道 ▁ 。".split()
  
       A__       =    tokenizer.tokenize(lowercase_							)
       self.assertListEqual(lowercase_		, lowercase_							)
  
       A__       =    tokens + [tokenizer.unk_token]
  
       A__       =    [1_37_89, 1_32_83, 14_21, 8, 10, 11_64, 1_36_08, 1_65_28, 63, 8, 9, 4_40, 1_08, 4_40, 1_21, 90, 8, 12, 0]
       self.assertListEqual(tokenizer.convert_tokens_to_ids(lowercase_							)		, lowercase_							)
  
       A__       =    tokenizer.decode(lowercase_							)
       self.assertEqual(lowercase_		, lowercase_							)
  
  
  
  
style_context: 
  
  
  
  
  
  '''simple docstring'''
  
  import numpy as np
  import PIL
  import torch
  import torchvision.transforms as T
  import torchvision.transforms.functional as TF
  from PIL import Image
  
  
  
  
  
  def 		UpperCamelCase       (							_lowerCamelCase      :      Optional[Any]		, _lowerCamelCase      :      Union[str, Any]=2_56 ):
      A__       =    min(img.size )
  
      if s < target_image_size:
          raise ValueError(F"min dim for image {s} < {target_image_size}" )
  
      A__       =    target_image_size / s
      A__       =    (round(r * img.size[1] ), round(r * img.size[0] ))
      A__       =    TF.resize(_lowerCamelCase		, _lowerCamelCase		, interpolation=PIL.Image.LANCZOS )
      A__       =    TF.center_crop(_lowerCamelCase		, output_size=2 * [target_image_size] )
      A__       =    torch.unsqueeze(T.ToTensor()(_lowerCamelCase )		, 0 )
      return img
  
  
  
  
  
  def 		UpperCamelCase       (							_lowerCamelCase      :      int ):
      A__       =    2.0 * x - 1.0
      return x
  
  
  
  
  
  def 		UpperCamelCase       (							_lowerCamelCase      :      Optional[Any]		, _lowerCamelCase      :      Tuple=True		, _lowerCamelCase      :      int="RGB" ):
      A__       =    x.detach().cpu()
      if process:
          A__       =    post_process_tensor(_lowerCamelCase )
      A__       =    x.numpy()
      if process:
          A__       =    (2_55 * x).astype(np.uinta )
      A__       =    Image.fromarray(_lowerCamelCase )
      if not x.mode == mode:
          A__       =    x.convert(_lowerCamelCase )
      return x
  
  
  
  
  
  def 		UpperCamelCase       (							_lowerCamelCase      :      Any ):
      A__       =    torch.clamp(_lowerCamelCase		, -1.0		, 1.0 )
      A__       =    (x + 1.0) / 2.0
      A__       =    x.permute(1		, 2		, 0 )
      return x
  
  
  
  
  
  def 		UpperCamelCase       (							_lowerCamelCase      :      List[Any] ):
      A__       =    post_process_tensor(x.squeeze() )
      return x.permute(2		, 0		, 1 ).unsqueeze(0 )
  
  
  
  