Partager via


Ajouter une ressource d’expérience MLflow à une application Databricks

Ajoutez des expériences MLflow en tant que ressources Databricks Apps pour activer le suivi des expériences de Machine Learning au sein de vos applications. Les expériences MLflow offrent un moyen structuré d’organiser et de journaliser les exécutions d’entraînement, de suivre les paramètres, les métriques et les artefacts tout au long du cycle de vie du développement du modèle.

Lorsque vous ajoutez une expérience MLflow en tant que ressource, votre application peut :

  • Consigner les exécutions d’entraînement avec des paramètres et des métriques
  • Récupérer des données d’expérience et comparer les performances du modèle
  • Accéder aux métadonnées d’expérience et à l’historique des exécutions
  • Gérer le cycle de vie ML par programmation

Ajouter une ressource d’expérience MLflow

Avant d’ajouter une expérience MLflow en tant que ressource, passez en revue les prérequis des ressources d’application.

  1. Lorsque vous créez ou modifiez une application, accédez à l’étape Configurer .
  2. Dans la section Ressources de l’application , cliquez sur + Ajouter une ressource.
  3. Sélectionnez l’expérience MLflow comme type de ressource.
  4. Choisissez une expérience MLflow dans la liste des expériences disponibles dans votre espace de travail.
  5. Sélectionnez le niveau d’autorisation approprié pour votre application :
    • Peut lire : Accorde à l’application l’autorisation d’afficher les métadonnées d’expérience, les exécutions, les paramètres et les métriques. Utiliser pour les applications qui affichent les résultats de l’expérience.
    • Peut modifier : Octroie à l’application l’autorisation de modifier les paramètres et les métadonnées de l’expérience.
    • Peut gérer : Accorde à l’application un accès administratif complet à l’expérience.
  6. (Facultatif) Spécifiez une clé de ressource personnalisée, c’est-à-dire la façon dont vous référencez l’expérience dans la configuration de votre application. La clé par défaut est experiment.

Lorsque vous ajoutez une ressource d’expérience MLflow :

  • Azure Databricks accorde au principal de service de votre application les autorisations spécifiées sur l’expérience sélectionnée.
  • L’application peut journaliser les exécutions d’entraînement et accéder aux données d’expérience via l’API MLflow Tracking.
  • L’accès est limité à l’expérience sélectionnée uniquement. Votre application ne peut pas accéder à d’autres expériences, sauf si vous les ajoutez en tant que ressources distinctes.

Variables d’environnement

Lorsque vous déployez une application avec une ressource d’expérience MLflow, Azure Databricks expose l’ID d’expérience via des variables d’environnement que vous pouvez référencer à l’aide du valueFrom champ dans votre app.yaml configuration.

Exemple de configuration :

env:
  - name: MLFLOW_EXPERIMENT_ID
    valueFrom: experiment # Use your custom resource key if different

Utilisation de l’ID d’expérience dans votre application :

import os
import mlflow

# Access the experiment using the injected environment variable
experiment_id = os.getenv("MLFLOW_EXPERIMENT_ID")

# Set the experiment for tracking
mlflow.set_experiment(experiment_id=experiment_id)

# Log parameters and metrics
with mlflow.start_run():
    mlflow.log_param("learning_rate", 0.01)
    mlflow.log_metric("accuracy", 0.95)
    mlflow.log_artifact("model.pkl")

Pour plus d’informations, consultez Les variables d’environnement Access à partir de ressources.

Supprimer une ressource d’expérience MLflow

Lorsque vous supprimez une ressource MLflow Experiment d’une application, le principal de service de l’application perd l’accès à l’expérience. L’expérience elle-même reste inchangée et continue d’être disponible pour d’autres utilisateurs et applications disposant d’autorisations appropriées.

Meilleures pratiques

Suivez ces bonnes pratiques lorsque vous utilisez des ressources d’expérience MLflow :

  • Organisez les expériences logiquement par type de projet ou de modèle pour améliorer la détectabilité.
  • Utilisez des conventions d’affectation de noms cohérentes pour les exécutions et les paramètres au sein de votre organisation.
  • Envisagez d’expérimenter les stratégies de rétention et la gestion du stockage pour les projets de longue durée.