nvflare.app_common.ccwf.comps.np_file_model_persistor module

class NPFileModelPersistor(last_global_model_file_name='last_global_model.npy', best_global_model_file_name='best_global_model.npy', model_dir='models', model_file_name='model.npy', source_ckpt_file_full_name: str | None = None)[source]

Bases: ModelPersistor

Persist numpy model to/from file system.

Parameters:
  • last_global_model_file_name – Filename for last global model.

  • best_global_model_file_name – Filename for best global model.

  • model_dir – Directory for model files (relative to run dir).

  • model_file_name – Filename for model (relative to model_dir).

  • source_ckpt_file_full_name – Full absolute path to source checkpoint file. This path may not exist locally (server-side path). If provided and exists at runtime, it takes priority over model_file_name.

get_model(model_file: str, fl_ctx: FLContext) ModelLearnable[source]

Retrieve a specific model by file name.

This method is called by get() to load a specific model from the inventory. Persistors that support multiple models (e.g., for cross-site evaluation) should override this method to load the specified model file.

Simple persistors that only work with a single model (like NPModelPersistor) do not need to implement this method.

Parameters:
  • model_file – Name or path of the model file to retrieve

  • fl_ctx – FLContext

Returns:

ModelLearnable object containing the model data

Raises:

NotImplementedError – If the persistor doesn’t support retrieving specific models

get_model_inventory(fl_ctx: FLContext) {<class 'str'>: <class 'nvflare.app_common.model_desc.ModelDescriptor'>}[source]

Get the model inventory of the ModelPersistor.

Parameters:

fl_ctx – FLContext

Returns: { model_kind: ModelDescriptor }

handle_event(event: str, fl_ctx: FLContext)[source]

Handles events.

Parameters:
  • event_type (str) – event type fired by workflow.

  • fl_ctx (FLContext) – FLContext information.

load_model(fl_ctx: FLContext) ModelLearnable[source]

Initialize and load the model.

Parameters:

fl_ctx – FLContext

Returns:

Model object

save_model(model_learnable: ModelLearnable, fl_ctx: FLContext)[source]

Persist the model object.

Parameters:
  • model – Model object to be saved

  • fl_ctx – FLContext