📅 2024-04-15 — Session: Configured MLflow for Docker and Flask Integration

🕒 15:45–17:20
🏷️ Labels: Mlflow, Docker, Flask, Mlops, Experiment Tracking
📂 Project: Dev
⭐ Priority: MEDIUM

Session Goal:

The session aimed to integrate MLflow with Docker and Flask applications to enhance MLOps capabilities, focusing on experiment tracking, model versioning, and artifact management.

Key Activities:

  • Explored MLOps tools like MLflow, DVC, and Kubeflow for managing model and data versioning.
  • Created a workflow diagram using Graphviz to illustrate MLflow and DVC integration.
  • Configured MLflow’s tracking URI for local and remote setups.
  • Set up MLflow in a Docker container, modifying the Dockerfile and application settings for experiment tracking.
  • Enhanced a Flask endpoint with MLflow for improved model retraining and experiment tracking.
  • Resolved MLflow-related permission errors and tracking URI path issues.
  • Implemented a naming convention for MLflow experiments to ensure meaningful and unique identifiers.
  • Addressed file path discrepancies in Python for model saving/loading.
  • Adjusted model loading in Flask applications to use standardized temporary directories.
  • Updated model retrieval and dropdown selection in APIs to ensure accessibility of models.

Achievements:

  • Successfully configured MLflow with Docker and Flask, resolving several configuration and permission issues.
  • Developed a robust workflow for experiment tracking and model management in MLOps.

Pending Tasks:

  • Further testing of the integrated system in a production-like environment to ensure stability and performance.
  • Continuous monitoring and optimization of the MLflow setup as new requirements arise.