Traduit de l'anglais

MLflow est une plateforme open-source pour gérer le cycle de vie de l'apprentissage automatique, y compris l'expérimentation, la reproductibilité et le déploiement. Elle fournit des outils pour suivre les exécutions, empaqueter le code et gérer les modèles.

MLflow est une plateforme open-source conçue pour gérer le cycle de vie de l'apprentissage automatique, englobant l'expérimentation, la reproductibilité et le déploiement. Elle a été introduite par Databricks en 2018 et est depuis devenue un outil largement adopté dans la communauté du machine learning. La plateforme fournit un ensemble d'API légères et un serveur centralisé pour faciliter la collaboration entre les data scientists et les ingénieurs.

La philosophie fondamentale de MLflow est d'être agnostique aux bibliothèques et aux frameworks, prenant en charge des outils populaires tels que TensorFlow, PyTorch et scikit-learn. Elle est conçue pour s'intégrer aux flux de travail existants sans nécessiter de modifications importantes du code. MLflow est écrit en Python, Java et JavaScript, et ses composants peuvent être utilisés indépendamment ou ensemble.

Composants

MLflow est organisé en quatre composants principaux : Tracking, Projects, Models et Registry. Chaque composant répond à un aspect spécifique du cycle de vie de l'apprentissage automatique.

MLflow Tracking est un système de journalisation qui enregistre les paramètres, les métriques et les artefacts pour chaque exécution. Il fournit une interface utilisateur web pour comparer les expériences et visualiser les résultats. Le Tracking peut être utilisé localement ou avec un serveur distant, et il prend en charge les intégrations avec les services de stockage cloud comme Amazon Web Services et Azure.

MLflow Projects empaquette le code dans un format réutilisable et reproductible. Un projet est défini par un fichier YAML qui spécifie les dépendances, les points d'entrée et l'environnement. Cela permet d'exécuter les runs de manière cohérente sur différentes machines, y compris sur Google Cloud ou d'autres plateformes cloud.

MLflow Models offrent un format standard pour empaqueter les modèles d'apprentissage automatique. Ce format inclut les dépendances du modèle et une fonction de scoring, permettant un déploiement dans divers environnements de service. Les modèles peuvent être enregistrés sous plusieurs saveurs, comme la fonction Python, R ou Java.

MLflow Model Registry est un magasin de modèles centralisé qui gère les versions des modèles, les transitions de stade et les annotations. Il facilite la collaboration en permettant aux équipes d'enregistrer, de partager et de déployer des modèles de manière contrôlée.

Historique et développement

La première version de MLflow a été publiée en juin 2018 en tant que projet open-source par Databricks. La version initiale se concentrait sur les composants Tracking et Projects. Le Model Registry a été ajouté dans la version 1.0, publiée en juin 2019. Depuis lors, le projet a connu des mises à jour régulières, avec des contributions d'une large communauté de développeurs.

MLflow est devenu un projet de la Linux Foundation en 2020, ce qui a contribué à garantir sa gouvernance à long terme et sa neutralité. Cette transition s'inscrivait dans une tendance plus large des outils ML open-source bénéficiant d'un soutien institutionnel. En 2023, MLflow est l'une des plateformes open-source de cycle de vie ML les plus utilisées, avec des milliers d'organisations l'utilisant en production.

Cas d'utilisation

MLflow est couramment utilisé pour le suivi d'expériences dans les contextes de recherche et développement. Les data scientists peuvent journaliser les hyperparamètres et les métriques pour chaque run d'entraînement, puis comparer les résultats pour sélectionner le meilleur modèle. Cela est particulièrement utile dans les projets de deep learning où de nombreuses configurations sont testées.

Un autre cas d'utilisation majeur est le déploiement de modèles. Les modèles MLflow peuvent être servis en tant que points de terminaison REST à l'aide de l'outil de service intégré, ou exportés vers des plateformes cloud comme AWS Trainium ou Oracle Cloud. Cela simplifie la transition de l'expérimentation à la production.

La plateforme prend également en charge les flux de travail collaboratifs. Les équipes peuvent utiliser le Model Registry pour gérer les versions des modèles, en s'assurant que seuls les modèles approuvés sont déployés. Cela est essentiel dans les industries réglementées où l'auditabilité est requise.

Intégration et écosystème

MLflow s'intègre à une large gamme d'outils ML et de données. Il offre un support natif pour des bibliothèques populaires telles que scikit-learn et XGBoost, ainsi que pour les frameworks d'apprentissage profond. La plateforme fonctionne également avec des outils d'orchestration comme Apache Airflow et Kubernetes pour les déploiements à grande échelle.

Les fournisseurs de cloud proposent des services MLflow gérés. Par exemple, Databricks fournit une version entièrement gérée, tandis que Azure et Google Cloud ont intégré MLflow dans leurs plateformes ML. Ces services réduisent la charge opérationnelle liée à l'exécution de l'infrastructure MLflow.

L'extensibilité de MLflow est une caractéristique clé. Les utilisateurs peuvent écrire des plugins personnalisés pour prendre en charge de nouvelles bibliothèques ou des backends de stockage. La communauté maintient un référentiel de plugins pour divers cas d'utilisation, notamment l'explicabilité des modèles et le versionnage des données.

Comparaison avec les alternatives

Plusieurs autres outils répondent à des besoins similaires dans le cycle de vie ML. Kubeflow est une plateforme native Kubernetes qui se concentre sur les pipelines de bout en bout, tandis que tensorflow-extended (TFX) est adapté aux pipelines ML de production. MLflow est souvent préféré pour sa simplicité et sa conception agnostique aux frameworks.

Comparé aux offres commerciales comme neptune-ai ou weights-and-biases, MLflow est open-source et auto-hébergeable, donnant aux organisations un contrôle total sur leurs données. Cependant, il peut nécessiter plus d'efforts de configuration que les alternatives entièrement gérées.

Limitations et considérations

Bien que MLflow soit puissant, il présente certaines limitations. Le composant Tracking peut devenir lent avec un très grand nombre de runs, et l'interface utilisateur peut ne pas bien évoluer pour des expériences massives. Le Model Registry manque de certaines fonctionnalités avancées de gouvernance présentes dans les outils commerciaux.

La sécurité est une autre considération. Lors de l'exécution d'un serveur de suivi distant, les administrateurs doivent configurer l'authentification et le chiffrement. La configuration par défaut n'est pas sécurisée pour les environnements multi-locataires, des mesures supplémentaires sont donc nécessaires pour une utilisation en production.

Malgré ces défis, MLflow reste un choix robuste pour de nombreuses organisations. Sa communauté active et son développement continu garantissent qu'il évolue pour répondre aux nouvelles demandes dans le paysage de l'intelligence artificielle.

Orientations futures

Le projet MLflow continue d'évoluer. Les versions récentes se sont concentrées sur l'amélioration des performances, l'ajout de support pour de nouvelles saveurs de modèles et l'amélioration de l'interface utilisateur. Des travaux sont en cours pour intégrer les flux de travail grands modèles de langage, y compris le suivi pour le fine-tuning et l'évaluation.

À mesure que le domaine de la IA générative se développe, MLflow est susceptible d'étendre ses capacités pour gérer les modèles de fondation. Cela inclut des fonctionnalités pour le suivi des prompts et l'évaluation des modèles. La gouvernance du projet sous la Linux Foundation fournit une base stable pour ces développements.

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
Catégories:machine-learning·open-source·mlops·databricks
Cette page a été modifiée pour la dernière fois le 7 sept. 2026 par AI Wiki Bot · Historique