Skip to main content

fluid_volume_screening_protocol

Fluid Volume multi-algorithm protocol.

First runs a model inference on the Fluid Volume model, then the Fluid Volume algorithm to compute the volume affected by WetAMD. Then CSV Report get generated.

Classes

FluidVolumeScreeningProtocol

class FluidVolumeScreeningProtocol(    *,    algorithm: Sequence[Union[ModelInference, FluidVolumeCalculationAlgorithm, CSVReportGeneratorOphthalmologyAlgorithm]],    results_notification_email: Optional[bool] = False,    trial_name: Optional[str] = None,    rename_columns: Optional[Mapping[str, str]] = None,    **kwargs: Any,):

Protocol for running Fluid Volume Algorithms sequentially.

Ancestors

Variables

  • algorithms : list - Returns the algorithms in the protocol.

Methods


dump

def dump(self)> SerializedProtocol:

Inherited from:

BaseProtocolFactory.dump :

Returns the JSON-serializable representation of the protocol.

modeller

def modeller(    self,    *,    mailbox: _ModellerMailbox,    context: Optional[ProtocolContext] = None,    **kwargs: Any,)> GenericOphthalmologyModellerSide:

Returns the Modeller side of the protocol.

run

def run(    self,    pod_identifiers: Collection[str],    session: Optional[BitfountSession] = None,    username: Optional[str] = None,    hub: Optional[BitfountHub] = None,    ms_config: Optional[MessageServiceConfig] = None,    message_service: Optional[_MessageService] = None,    pod_public_key_paths: Optional[Mapping[str, Path]] = None,    identity_verification_method: IdentityVerificationMethod = IdentityVerificationMethod.OIDC_DEVICE_CODE,    private_key_or_file: Optional[Union[RSAPrivateKey, Path]] = None,    idp_url: Optional[str] = None,    require_all_pods: bool = False,    run_on_new_data_only: bool = False,    project_id: Optional[str] = None,    batched_execution: Optional[bool] = None,    test_run: bool = False,    force_rerun_failed_files: bool = True,)> Optional[Any]:

Inherited from:

BaseProtocolFactory.run :

Sets up a local Modeller instance and runs the protocol.

Arguments

  • pod_identifiers: The BitfountHub pod identifiers to run against.
  • session: Optional. Session to use for authenticated requests. Created if needed.
  • username: Username to run as. Defaults to logged in user.
  • hub: BitfountHub instance. Default: hub.bitfount.com.
  • ms_config: Message service config. Default: messaging.bitfount.com.
  • message_service: Message service instance, created from ms_config if not provided. Defaults to "messaging.bitfount.com".
  • pod_public_key_paths: Public keys of pods to be checked against.
  • identity_verification_method: The identity verification method to use.
  • private_key_or_file: Private key (to be removed).
  • idp_url: The IDP URL.
  • require_all_pods: If true raise PodResponseError if at least one pod identifier specified rejects or fails to respond to a task request.
  • run_on_new_data_only: Whether to run the task on new datapoints only. Defaults to False.
  • project_id: The project ID to run the task under.
  • batched_execution: Whether to run the task in batched mode. Defaults to False.
  • test_run: If True, runs the task in test mode, on a limited number of datapoints. Defaults to False.
  • force_rerun_failed_files: If True, forces a rerun on files that the task previously failed on. If False, the task will skip files that have previously failed. Note: This option can only be enabled if both enable_batch_resilience and individual_file_retry_enabled are True. Defaults to True.

Returns Results of the protocol.

Raises

  • PodResponseError: If require_all_pods is true and at least one pod identifier specified rejects or fails to respond to a task request.
  • ValueError: If attempting to train on multiple pods, and the DataStructure table name is given as a string.

worker

def worker(    self,    *,    mailbox: _WorkerMailbox,    hub: BitfountHub,    context: Optional[ProtocolContext] = None,    **kwargs: Any,)> _WorkerSide:

Returns worker side of the FluidVolumeScreeningProtocol protocol.

Arguments

  • mailbox: Worker mailbox instance to allow communication to the modeller.
  • hub: BitfountHub object to use for communication with the hub.
  • context: Optional. Run-time protocol context details for running.
  • ****kwargs**: Additional keyword arguments.