Aller au contenu

Installer MLflow


Spark est une plateforme open-source de traitement de données volumineuses. Au fil des années, Spark s'est imposé comme l'outil de référence pour l'ingénierie de données. Dans ce guide ultime, je vous présente PySpark, l'API Python de Spark.

Installer Anaconda

Je vous recommande d'utiliser Scikit-learn avec Anaconda. Si vous n'avez pas encore Anaconda installé, suiviez ce tutoirel pour l'installer Installer Anaconda.

Créer un environnement virtuel

Scikit-learn est installé par défaut dans l'environnement de base. Toutefois je vous recommande fortement de créer un environnement virtuel afin de préserver cet environnement de base. Lancez Anaconda Prompt et faites la commande suivante:

conda create --name mlops
Cette commande va créer une environnement virtuel avec le nom ml, tapez y pour confirmer la création.

Activer l'environnement virtuel

Une fois l'environnement virtuel créé, il faut l'activer avec la commande suivante.

conda activate mlops

Installer MLflow

MLflow peut-être installé depuis le gestionnaire de packages Pypi avec la commande suivante.

pip install mlflow

Démarrer MLflow Server

mlflow server --host 127.0.0.1 --port 8080

Importer MLflow

Scikit-learn est importé sous le nom mlflow

import mlflow

Vérifier la version

Une console s'ouvre comme ci-dessous

print(mlflow.__version__)

Le code source de Scikit-learn est disponible sur MLflow @mlflow/mlflow.

Déployer avec Docker

basic_auth.ini
[mlflow]
default_permission = WRITE
database_uri = postgresql://mlflow_user:mlflow_password@192.20.15.49:5432/mlflow_db
admin_username = admin
admin_password = pwadmin
authorization_function = mlflow.server.auth:authenticate_request_basic_auth
Dockerfile.mlflow
FROM ghcr.io/mlflow/mlflow

COPY basic_auth.ini /srv
COPY requirements.txt /srv

WORKDIR /srv

RUN pip install --upgrade pip \
    && pip install -r requirements.txt

EXPOSE 8081

CMD ["mlflow", "server", "--host", "0.0.0.0", "--port", "8081"]
docker-compose.yml
services:
  mlflow_postgres:
    image: postgres:17
    container_name: mlflow_postgres
    environment:
      - POSTGRES_USER=mlflow_user
      - POSTGRES_PASSWORD=mlflow_password
      - POSTGRES_DB=mlflow_db
    ports:
      - "5430:5432"
    volumes:
      - mlflow_postgres_data:/var/lib/postgresql/data

  mlflow:
    build:
      context: .
      dockerfile: Dockerfile.mlflow
    container_name: mlflow
    ports:
      - "8081:8081"
    volumes:
      - mlflow_data:/mlflow
    environment:
      - MLFLOW_TRACKING_URI=postgresql://mlflow_user:mlflow_password@192.20.15.49:5432/mlflow_db
      - MLFLOW_AUTH_CONFIG_PATH=/srv/basic_auth.ini
    depends_on:
      - mlflow_postgres

volumes:
  mlflow_data:
  mlflow_postgres_data:

Dans le terminal, tapez la commande suivante :

deploy.sh
docker compose down

docker compose build

docker compose up -d


Votre environnement mlflow est prêt, dans la prochaine section.

Partagez sur les réseaux sociaux

Commentaires