code: def convert_checkpoint(
      model_name,
      checkpoint_path,
      pytorch_dump_folder_path,
      config_path=None,
      repo_id=None,
  ):
      """
      Copy/paste/tweak model's weights to transformers design.
      """
      if config_path is not None:
          config = EncodecConfig.from_pretrained(config_path)
      else:
          config = EncodecConfig()
  
      if model_name == "encodec_24khz":
          pass  # config is already correct
      elif model_name == "encodec_32khz":
          config.upsampling_ratios = [8, 5, 4, 4]
          config.target_bandwidths = [2.2]
          config.num_filters = 64
          config.sampling_rate = 32_000
          config.codebook_size = 2048
          config.use_causal_conv = False
          config.normalize = False
          config.use_conv_shortcut = False
      elif model_name == "encodec_48khz":
          config.upsampling_ratios = [8, 5, 4, 2]
          config.target_bandwidths = [3.0, 6.0, 12.0, 24.0]
          config.sampling_rate = 48_000
          config.audio_channels = 2
          config.use_causal_conv = False
          config.norm_type = "time_group_norm"
          config.normalize = True
          config.chunk_length_s = 1.0
          config.overlap = 0.01
      else:
          raise ValueError(f"Unknown model name: {model_name}")
  
      model = EncodecModel(config)
  
      feature_extractor = EncodecFeatureExtractor(
          feature_size=config.audio_channels,
          sampling_rate=config.sampling_rate,
          chunk_length_s=config.chunk_length_s,
          overlap=config.overlap,
      )
      feature_extractor.save_pretrained(pytorch_dump_folder_path)
  
      original_checkpoint = torch.load(checkpoint_path)
      if "best_state" in original_checkpoint:
          # we might have a training state saved, in which case discard the yaml results and just retain the weights
          original_checkpoint = original_checkpoint["best_state"]
      recursively_load_weights(original_checkpoint, model, model_name)
      model.save_pretrained(pytorch_dump_folder_path)
  
      if repo_id:
          print("Pushing to the hub...")
          feature_extractor.push_to_hub(repo_id)
          model.push_to_hub(repo_id)
  
imports: import argparse
  import torch
  from transformers import EncodecConfig, EncodecFeatureExtractor, EncodecModel, logging
label_desc: Use image node_id 4 for calling a global function with example usage: convert_checkpoint(model_name, checkpoint_path, pytorch_dump_folder_path, config_path, repo_id) without return types