flip.constants

FLIP Constants module containing configuration and enumerations.

Exports:
  • FlipConstants: Environment-aware configuration singleton

  • DevSettings: Development environment settings

  • ProdSettings: Production environment settings

  • ResourceType: Enum for imaging resource types (DICOM, NIFTI, etc.)

  • ModelStatus: Enum for model training status

  • FlipEvents: Event name constants

  • FlipTasks: Task name constants

  • FlipMetaKey: Metadata key constants

  • FlipMetricsLabel: Metrics label constants

  • PTConstants: PyTorch-related constants

  • JobType: Enum for FLIP job types

Submodules

Attributes

FlipConstants

Classes

DevSettings

Development environment configuration.

FlipEvents

Event names used in FLIP workflows.

FlipMetaKey

Metadata keys FLIP components attach to DXO meta.

FlipMetricsLabel

Standard metric labels for FLIP metrics reporting.

FlipProps

fl_ctx property names FLIP components use to share round telemetry.

FlipTasks

Task names used in FLIP workflows.

ModelStatus

Model job status values.

ProdSettings

Production environment configuration.

ResourceType

Types of imaging resources available in XNAT.

JobType

Enumeration of supported FLIP job types.

PTConstants

Constants for PyTorch model handling in federated learning.

Package Contents

class flip.constants.DevSettings

Bases: _Common

Development environment configuration.

Used when LOCAL_DEV=true. Requires local paths for test data.

LOCAL_DEV: bool = True
DEV_DATAFRAME: str = ''
DEV_IMAGES_DIR: str = ''
flip.constants.FlipConstants
class flip.constants.FlipEvents

Event names used in FLIP workflows.

Note: This is a class with class attributes rather than an Enum because NVFLARE events are string constants.

TRAINING_INITIATED = '_training_initiated'
RESULTS_UPLOAD_STARTED = '_results_upload_started'
RESULTS_UPLOAD_COMPLETED = '_results_upload_completed'
SEND_RESULT = '_send_result'
LOG_EXCEPTION = '_log_exception'
ABORTED = '_aborted'
TASK_INITIATED = '_task_initiated'
class flip.constants.FlipMetaKey

Bases: enum.StrEnum

Metadata keys FLIP components attach to DXO meta.

STAGE = 'stage'
EVAL_MODEL_NAME = 'flip_eval_model_name'
class flip.constants.FlipMetricsLabel

Bases: enum.StrEnum

Standard metric labels for FLIP metrics reporting.

LOSS_FUNCTION = 'LOSS_FUNCTION'
DL_RESULT = 'DL_RESULT'
AVERAGE_SCORE = 'AVERAGE_SCORE'
class flip.constants.FlipProps

fl_ctx property names FLIP components use to share round telemetry.

Set (sticky, so they survive across NVFLARE contexts) by the FLIP ScatterAndGather controller as client results are accepted; read by ServerEventHandler when relaying ROUND_DONE to the hub as a ROUND_AGGREGATED event.

ROUND_RETURNED = '_flip_round_returned'
ROUND_EXPECTED = '_flip_round_expected'
class flip.constants.FlipTasks

Bases: enum.StrEnum

Task names used in FLIP workflows.

INIT_TRAINING = 'init_training'
POST_VALIDATION = 'post_validation'
CLEANUP = 'cleanup'
INIT_TASK = 'init_task'
POST_TASK = 'post_task'
class flip.constants.ModelStatus

Bases: enum.StrEnum

Model job status values.

PENDING = 'PENDING'
INITIATED = 'INITIATED'
PREPARED = 'PREPARED'
RUNNING = 'RUNNING'
RESULTS_UPLOADED = 'RESULTS_UPLOADED'
ERROR = 'ERROR'
STOPPED = 'STOPPED'
RESULTS_UPLOAD_FAILED = 'RESULTS_UPLOAD_FAILED'
class flip.constants.ProdSettings

Bases: _Common

Production environment configuration.

Used when LOCAL_DEV=false. Settings are grouped by which FL role uses them: - Server-only (fl-server on Central Hub): FLIP_API_INTERNAL_URL, INTERNAL_SERVICE_KEY* - Client-only (fl-client on trust side): DATA_ACCESS_API_URL, IMAGING_API_URL,

TRUST_INTERNAL_SERVICE_KEY*

  • Shared: IMAGES_DIR, NET_ID, UPLOADED_FEDERATED_DATA_BUCKET

LOCAL_DEV: bool = False
FLIP_API_INTERNAL_URL: pydantic.HttpUrl = 'http://localhost:8000'
INTERNAL_SERVICE_KEY_HEADER: str = 'X-Internal-Service-Key'
INTERNAL_SERVICE_KEY: str = ''
SERVER_CHECKPOINT_ROOT: str = '/app/server-checkpoints'
DATA_ACCESS_API_URL: pydantic.HttpUrl = 'http://localhost:8001'
IMAGING_API_URL: pydantic.HttpUrl = 'http://localhost:8002'
TRUST_INTERNAL_SERVICE_KEY_HEADER: str = 'X-Trust-Internal-Service-Key'
TRUST_INTERNAL_SERVICE_KEY: str = ''
IMAGES_DIR: str = ''
NET_ID: str = 'default'
UPLOADED_FEDERATED_DATA_BUCKET: str = 's3://default-bucket'
classmethod _validate_s3_url(v: str) str
class flip.constants.ResourceType

Bases: enum.StrEnum

Types of imaging resources available in XNAT.

DICOM = 'DICOM'
NIFTI = 'NIFTI'
SEGMENTATION = 'SEG'
ALL = 'ALL'
class flip.constants.JobType

Bases: enum.StrEnum

Enumeration of supported FLIP job types.

STANDARD = 'standard'
EVALUATION = 'evaluation'
FED_OPT = 'fed_opt'
DIFFUSION = 'diffusion_model'
class flip.constants.PTConstants

Constants for PyTorch model handling in federated learning.

PTServerName = 'server'
PTModelName = 'model.pt'
PTFileModelName = 'FL_global_model.pt'
PTLocalModelName = 'local_model.pt'
PTModelsDir = 'models'
CrossValResultsJsonFilename = 'cross_val_results.json'
EvalResultsFilename = 'evaluation_results.json'
EvalFailuresFilename = 'evaluation_failures.json'
EvalDir = 'evaluation_results'
EvalTaskName = 'evaluation'