SIENTIAPDE-1231

Refactor `force_memory_release` function in model_repository.py to improve logging

- Updated the `force_memory_release` function to remove metadata parameter and enhance logging by using `logger.info()` instead of `logger.custom_info()`.
- Adjusted calls to `force_memory_release` in the MLFlowRepository to pass the logger instance, ensuring consistent logging during memory management operations.
This commit is contained in:
vitor-aignosi
2025-10-13 15:59:10 -03:00
parent a3989b84af
commit a5d2b0d3fd

View File

@@ -36,16 +36,16 @@ TRANSFORMED_COMPRESSED_PATH = "artifacts/training_transformer.pkl"
PREDICTION_COMPRESSED_PATH = "artifacts/stacking_model.pkl"
def force_memory_release(logger: Logger, metadata: dict):
def force_memory_release(logger: Logger):
gc.collect()
try:
ctypes.CDLL("libc.so.6").malloc_trim(0)
logger.custom_info(
f"Memory released", metadata)
logger.info(
f"Memory released")
except Exception as e:
logger.custom_info(
f"Memory release failed: {e}", metadata)
logger.info(
f"Memory release failed: {e}")
class MLFlowRepository():
@@ -630,7 +630,7 @@ class MLFlowRepository():
f"Deleting model {model_name} from memory")
del model
force_memory_release()
force_memory_release(self.logger)
return prediction
@@ -659,7 +659,7 @@ class MLFlowRepository():
f"Deleting model {model_name} from memory")
del model
force_memory_release()
force_memory_release(self.logger)
return prediction