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
Classes
Development environment configuration. |
|
Event names used in FLIP workflows. |
|
Metadata keys FLIP components attach to DXO meta. |
|
Standard metric labels for FLIP metrics reporting. |
|
fl_ctx property names FLIP components use to share round telemetry. |
|
Task names used in FLIP workflows. |
|
Model job status values. |
|
Production environment configuration. |
|
Types of imaging resources available in XNAT. |
|
Enumeration of supported FLIP job types. |
|
Constants for PyTorch model handling in federated learning. |
Package Contents
- class flip.constants.DevSettings
Bases:
_CommonDevelopment 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.StrEnumMetadata keys FLIP components attach to DXO meta.
- STAGE = 'stage'
- EVAL_MODEL_NAME = 'flip_eval_model_name'
- class flip.constants.FlipMetricsLabel
Bases:
enum.StrEnumStandard 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.StrEnumTask 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.StrEnumModel 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:
_CommonProduction 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.StrEnumTypes of imaging resources available in XNAT.
- DICOM = 'DICOM'
- NIFTI = 'NIFTI'
- SEGMENTATION = 'SEG'
- ALL = 'ALL'
- class flip.constants.JobType
Bases:
enum.StrEnumEnumeration 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'