def METHOD_NAME(self, ctx):
    self.manifest = ctx.manifest
    properties = ctx.system_properties
    model_dir = properties.get("model_dir")
    serialized_file = self.manifest['model']['serializedFile']
    model_pt_path = os.path.join(model_dir, serialized_file)
    self.map_location = "cuda" if torch.cuda.is_available() else "cpu"
    self.device = torch.device(
        self.map_location + ":" + str(properties.get("gpu_id"))
        if torch.cuda.is_available()
        else self.map_location
    )
    # reading the csv file which include all the labels in the dataset to make the class/index mapping
    # and matching the output of the model with num labels from dataset
    df = pd.read_csv('./charades_action_lables.csv')
    label_set = set()
    df['action_labels'] = df['action_labels'].str.replace('"','')
    labels_initial = df['action_labels'].tolist()
    labels = []
    for sublist in labels_initial:
        new_sublist = ast.literal_eval(sublist)
        labels.append(new_sublist)
        for item in new_sublist:
            label_set.add(item)
    classes = sorted(list(label_set))
    self.class_to_idx = {classes[i]: i for i in range(len(classes))}
    self.classes = classes
    self.labels = labels
    self.idx_to_class = classes
    config = OmegaConf.load('config.yaml')
    print("*********** config keyssss **********", config.keys())
    setup_very_basic_config()
    setup_imports()
    self.model = MMFTransformer(config.model_config.mmf_transformer)
    self.model.build()
    self.model.init_losses()
    self.processor = build_processors(
        config.dataset_config["charades"].processors
    )
    state_dict = torch.load(serialized_file, map_location=self.device)
    self.model.load_state_dict(state_dict)
    self.model.to(self.device)
    self.model.eval()
    self.initialized = True
    print("********* files in temp direcotry that .mar file got extracted *********", os.listdir(model_dir))