def METHOD_NAME(self, fl_ctx: FLContext):
    # convert str model description to model
    if isinstance(self.model, str):
        # treat it as model component ID
        model_component_id = self.model
        engine = fl_ctx.get_engine()
        self.model = engine.get_component(model_component_id)
        if not self.model:
            self.system_panic(
                reason=f"cannot find model component '{model_component_id}'",
                fl_ctx=fl_ctx,
            )
            return
        if not isinstance(self.model, torch.nn.Module):
            self.system_panic(
                reason=f"expect model component '{model_component_id}' to be torch.nn.Module but got {type(self.model_selector)}",
                fl_ctx=fl_ctx,
            )
            return
    elif self.model and not isinstance(self.model, torch.nn.Module):
        self.system_panic(
            reason=f"expect model to be torch.nn.Module but got {type(self.model)}",
            fl_ctx=fl_ctx,
        )
        return
    # only include params requires_grad for cosine similarity computation
    for name, param in self.model.named_parameters():
        if param.requires_grad:
            self.fedce_cos_param_list.append(name)
    self.log_info(fl_ctx, "FedCE model assembler initialized")