lomas_core package
Subpackages
- lomas_core.models package
- Submodules
- lomas_core.models.collections module
BooleanMetadataBoundedColumnMetadataCategoricalColumnMetadataColumnMetadataDSAccessDSInfoDSPathAccessDSS3AccessDatasetOfUserDatasetsCollectionDatetimeMetadataFloatMetadataIntCategoricalMetadataIntMetadataMetadataStrCategoricalMetadataStrMetadataUserUserCollectionUserIdget_column_metadata_discriminator()
- lomas_core.models.config module
- lomas_core.models.constants module
- lomas_core.models.exceptions module
- lomas_core.models.requests module
DiffPrivLibDummyQueryModelDiffPrivLibQueryModelDiffPrivLibRequestModelDummyQueryModelGetDummyDatasetLomasRequestModelOpenDPDummyQueryModelOpenDPQueryModelOpenDPRequestModelQueryModelSmartnoiseSQLDummyQueryModelSmartnoiseSQLQueryModelSmartnoiseSQLRequestModelSmartnoiseSynthDummyQueryModelSmartnoiseSynthQueryModelSmartnoiseSynthRequestModelSmartnoiseSynthRequestModel.constraintsSmartnoiseSynthRequestModel.deltaSmartnoiseSynthRequestModel.epsilonSmartnoiseSynthRequestModel.model_configSmartnoiseSynthRequestModel.nullableSmartnoiseSynthRequestModel.select_colsSmartnoiseSynthRequestModel.synth_nameSmartnoiseSynthRequestModel.synth_params
model_input_to_lib()
- lomas_core.models.requests_examples module
- lomas_core.models.responses module
- lomas_core.models.utils module
- Module contents
Submodules
lomas_core.constants module
- class lomas_core.constants.DPLibraries(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]
Bases:
StrEnumName of DP Library used in the query.
- DIFFPRIVLIB = 'diffprivlib'
- OPENDP = 'opendp'
- OPENDP_POLARS = 'opendp_polars'
- SMARTNOISE_SQL = 'smartnoise_sql'
- SMARTNOISE_SYNTH = 'smartnoise_synth'
- class lomas_core.constants.OpenDpMechanism(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]
Bases:
StrEnumName of OpenDP mechanisms.
- GAUSSIAN = 'gaussian'
- LAPLACE = 'laplace'
- class lomas_core.constants.OpenDpPipelineType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]
Bases:
StrEnumName of OpenDP pipelines.
- LEGACY = 'legacy'
- POLARS = 'polars'
- class lomas_core.constants.SSynthGanSynthesizer(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]
Bases:
StrEnumGAN Synthesizer models for smartnoise synth.
- DP_CTGAN = 'dpctgan'
- DP_GAN = 'dpgan'
- PATE_CTGAN = 'patectgan'
- PATE_GAN = 'pategan'
lomas_core.error_handler module
- exception lomas_core.error_handler.ExternalLibraryException(library: DPLibraries, error_message: str)[source]
Bases:
ExceptionCustom exception for issues within external libraries.
This exception will occur when the processes fail within the external libraries (smartnoise-sql, opendp, diffprivlib)
- exception lomas_core.error_handler.InternalServerException(error_message: str)[source]
Bases:
ExceptionCustom exception for issues within server internal functionalities.
- exception lomas_core.error_handler.InvalidQueryException(error_message: str)[source]
Bases:
ExceptionCustom exception for invalid queries.
- For example, this exception will occur when the query:
is not an opendp measurement
cannot be reconstructed properly (for opendp and diffprivlib)
- exception lomas_core.error_handler.UnauthorizedAccessException(error_message: str)[source]
Bases:
ExceptionCustom exception for unauthorized access:
(unknown user, no access to dataset, etc)
- lomas_core.error_handler.add_exception_handlers(app: FastAPI) None[source]
Translates custom exceptions to JSONResponses.
- Parameters:
app (FastAPI) – A fastapi App.
- lomas_core.error_handler.raise_error_from_model(error_model: Annotated[InvalidQueryExceptionModel | ExternalLibraryExceptionModel | UnauthorizedAccessExceptionModel | InternalServerExceptionModel, FieldInfo(annotation=NoneType, required=True, discriminator='type')]) Never[source]
Raise error message based on Server Error Model.
- Parameters:
error_model
- Raises:
Server Error –
lomas_core.instrumentation module
- lomas_core.instrumentation.init_logs_exporter(resource: Resource, telemetry_config: Telemetry) None[source]
Initializes the OpenTelemetry logs exporter with a given resource.
- Parameters:
resource (Resource) – The resource to associate with the log telemetry.
- lomas_core.instrumentation.init_metrics_exporter(resource: Resource, telemetry_config: Telemetry) None[source]
Initializes the OpenTelemetry metrics exporter with a given resource.
- Parameters:
resource (Resource) – The resource to associate with the metric telemetry.