code: def _prepare_init_params_from_job_description(cls, job_details, model_channel_name=None):
          
          init_params = super(Chainer, cls)._prepare_init_params_from_job_description(job_details, model_channel_name)
  
          for argument in [Chainer._use_mpi, Chainer._num_processes, Chainer._process_slots_per_host,
                           Chainer._additional_mpi_options]:
  
              value = init_params['hyperparameters'].pop(argument, None)
              if value:
                  init_params[argument[len('sagemaker_'):]] = value
  
          image_name = init_params.pop('image')
          framework, py_version, tag, _ = framework_name_from_image(image_name)
  
          if not framework:
              # If we were unable to parse the framework name from the image it is not one of our
              # officially supported images, in this case just add the image to the init params.
              init_params['image_name'] = image_name
              return init_params
  
          init_params['py_version'] = py_version
          init_params['framework_version'] = framework_version_from_tag(tag)
  
          training_job_name = init_params['base_job_name']
  
          if framework != cls.__framework_name__:
              raise ValueError("Training job: {} didn't use image for requested framework".format(training_job_name))
          return init_params
docs: Convert the job description to init params that can be handled by the class constructor
  
          Args:
              job_details: the returned job details from a describe_training_job API call.
              model_channel_name (str): Name of the channel where pre-trained model data will be downloaded.
  
          Returns:
               dictionary: The transformed init_params