Éliminez les silos de données : créez, déployez et servez des modèles à grande échelle avec Snowflake ML

Malgré tous les efforts de nombreuses équipes de ML, la plupart des modèles n’arrivent jamais en production en raison d’outils disparates, ce qui conduit souvent à des données et des pipelines de ML fragmentés et à une gestion complexe de l’infrastructure. Snowflake s’est constamment efforcé de faciliter et d’accélérer la mise en production de modèles avancés. En 2024, nous avons lancé plus de 200 fonctionnalités d’IA, dont une suite complète de fonctionnalités de ML de bout en bout dans Snowflake ML, notre ensemble intégré de fonctionnalités pour le développement, l’inférence et l’opérationnalisation de modèles de machine learning. Nous sommes ravis de poursuivre sur notre lancée cette année en annonçant que les fonctionnalités suivantes pour les flux de travail de ML alimentés par GPU sont désormais disponibles pour tous les workloads de production :
Développement : Snowflake Notebooks on Container Runtime, désormais disponible pour tous nos clients sur AWS et en public preview sur Azure, optimise le chargement de données et distribue l’entraînement de modèles et le réglage des hyperparamètres sur plusieurs CPU ou GPU dans un environnement de conteneur entièrement géré qui s’exécute dans votre périmètre de sécurité Snowflake, avec un accès sécurisé et instantané à vos données. Snowflake ML permet également maintenant de générer et utiliser des données synthétiques, actuellement en public preview.
Inférence : Model Serving in Snowpark Container Services, désormais disponible à la fois sur AWS et Azure, offre une inférence distribuée facile et performante avec des CPU ou des GPU pour n’importe quel modèle, quel que soit l’endroit où il a été entraîné.
Surveillance : ML Observability, désormais disponible dans toutes les régions, fournit des outils intégrés pour surveiller et définir des alertes sur des indicateurs de qualité tels que la performance et la dérive pour les modèles exécutant ou stockant l’inférence dans Snowflake.
Gouvernance : les objets et flux de travail de ML sont entièrement intégrés aux capacités de gouvernance de Snowflake Horizon, y compris les données et ML Lineage, désormais disponible pour tous nos clients.
De novembre 2024 à janvier 2025, plus de 4 000 clients ont utilisé les fonctionnalités d’IA de Snowflake chaque semaine. L’un de ces clients est Scene+, un vaste programme de fidélité client au Canada, qui utilise Snowflake ML pour simplifier et améliorer ses workloads de ML.

Développement
Les Snowflake Notebooks sur Container Runtime sont conçus pour le développement de ML à grande échelle sans aucune gestion ou configuration de l'infrastructure avec des performances d'entraînement compétitives.
Pour l’entraînement à l’aide de paramètres par défaut prêts à l’emploi pour Snowflake Notebooks sur Container Runtime, nos benchmarks montrent que XGBoost distribué sur Snowflake est plus de 2 fois plus rapide pour les données tabulaires qu’une solution Spark gérée et un service cloud concurrent. Pour les données d’image, l’exécution de PyTorch distribué sur Snowflake ML également avec des paramètres standard a entraîné un traitement plus de 10 fois plus rapide pour un jeu de données de 50 000 images comparé à la même solution Spark gérée. Grâce à Snowflake ML, les data scientists et les ML engineers consacrent beaucoup moins de temps à l’infrastructure et à l’évolutivité et peuvent consacrer plus de temps au développement et à l’optimisation de leurs modèles de ML et se concentrer sur l’impact rapide sur l’activité.

En quelques clics, Container Runtime réduit la gestion de l’infrastructure et accélère l’entraînement du ML en fournissant :
Une configuration simple de notebook consistant à sélectionner un pool de calcul, permettant aux data scientists de choisir parmi des pools de CPU ou de GPU pour répondre aux besoins de leurs tâches d’entraînement. Tous les comptes clients sont automatiquement provisionnés pour avoir accès à des pools de calcul par défaut de CPU et GPU, qui ne sont utilisés que pendant une session de notebook active et automatiquement suspendus en cas d’inactivité. Voir plus de détails dans la documentation.
Un ensemble d’images propres aux CPU et GPU, préinstallées avec les bibliothèques et frameworks les plus récents et les plus populaires (PyTorch, XGBoost, LightGBM, scikit-learn et beaucoup d’autres) prenant en charge le développement de ML. Ainsi, les data scientists peuvent simplement déployer un Snowflake Notebook et se plonger directement dans leur travail.
Accès sécurisé à des référentiels open source via Pip et possibilité d’intégrer n’importe quel modèle à partir de hubs tels que Hugging Face (voir l’exemple ici).
API d’ingestion de données optimisées, qui offrent une matérialisation efficace des tables Snowflake sous forme de pandas ou de DataFrames PyTorch. Les données sont intégrées efficacement en parallèle et remontées dans le notebook sous forme de DataFrame en parallélisant plusieurs CPU ou GPU. Voir plus de détails dans la documentation.
API d’entraînement de modèles et d’optimisation d’hyperparamètres distribués, qui étendent les interfaces open source familières fournies par XGBoost, LightGBM et PyTorch, mais distribuent le traitement sur plusieurs CPU ou GPU sans avoir besoin d’orchestrer l’infrastructure sous-jacente (voir l’exemple ici).
De nombreuses entreprises utilisent déjà Container Runtime pour créer des cas d'usage de ML avancés à moindre coût avec un accès facile aux GPU. Notamment CHG Healthcare, Keysight Technologies et Avios.
CHG Healthcare
CHG Healthcare, entreprise spécialisée dans le recrutement de personnel de santé avec plus de 45 ans d’expérience dans le secteur, utilise l’IA et le ML pour alimenter ses solutions de recrutement de 700 000 médecins représentant 130 spécialités médicales. CHG construit et commercialise ses modèles de ML de bout en bout dans Snowflake ML.
« L’utilisation des GPU de Snowflake Notebooks sur Container Runtime s’est avérée être la solution la plus rentable pour nos besoins de machine learning », confie Andrew Christensen, Data Scientist, CHG Healthcare. « Nous avons apprécié la possibilité de tirer parti du traitement parallèle de Snowflake avec n'importe quelle bibliothèque open source dans Snowflake ML, offrant ainsi une flexibilité et une efficacité améliorées pour nos flux de travail. »
Keysight Technologies
Keysight Technologies est un fournisseur majeur de solutions de conception et de test électroniques. Avec plus de 5,5 milliards de dollars de revenus mondiaux et plus de 33 000 clients dans 13 secteurs, Keysight détient plus de 3 800 brevets pour ses innovations. Keysight crée des modèles de prévisions et de ventes évolutifs dans Snowflake ML avec Container Runtime.
« Après avoir essayé Snowflake Notebooks sur Container Runtime, nous pouvons dire que l’expérience a été remarquable », souligne Krishna Moleyar, Analytics and Automation for IT Global Applications, Keysight Technologies. « L'infrastructure de conteneur flexible prise en charge par le traitement distribué à la fois sur les CPU et les GPU, le chargement optimisé de données et l'intégration transparente avec [Snowflake] Model Registry ont amélioré l'efficacité de notre flux de travail. »
Avios
Avios, leader des programmes de fidélité de voyage avec plus de 40 millions de membres et 1 500 partenaires, utilise Snowflake Notebooks sur Container Runtime pour effectuer des analyses plus approfondies et des analyses de données avec la flexibilité dont l’entreprise a besoin.
« J’ai beaucoup aimé utiliser Snowflake Notebooks sur Container Runtime pour la flexibilité et la rapidité qu’ils offrent », confie Olivia Brooker, Data Scientist chez Avios. « Je peux exécuter mon code sans me soucier de son expiration ou de l'oubli des variables. En permettant l’intégration PyPI, j’ai également l’avantage d’utiliser une plus grande gamme de packages Python, ce qui rend mes tâches d’analyse et de data science plus flexibles. »
Pour créer des modèles tout en préservant la confidentialité des jeux de données sensibles ou pour générer facilement de nouvelles données afin d’enrichir l’entraînement, Snowflake prend également en charge la génération de données synthétiques facile et sécurisée (public preview). Il s’agit d’une fonctionnalité puissante qui permet aux data scientists de créer des pipelines et des modèles sur des données sans compromettre les attributs sensibles et sans attendre des processus d’approbation longs et lourds. Le jeu de données synthétiques présente les mêmes caractéristiques que le jeu de données source, telles que le nom, le nombre et le type de données des colonnes, et le même nombre ou moins de lignes.
Distribution de modèles en production
Peu importe où votre modèle est construit, Snowflake ML facilite l’inférence au niveau production et la gestion du cycle de vie du modèle avec une sécurité et une gouvernance intégrées. Une fois qu’un modèle est enregistré dans Snowflake Model Registry, il peut être fourni en toute transparence pour l’inférence distribuée à l’aide de Model Serving in Snowpark Container Services (SPCS). Avec cette capacité, vos workloads d’inférence peuvent tirer parti des clusters de calcul de GPU, exécuter de grands modèles tels que les intégrations Hugging Face ou d’autres modèles de transformeurs et utiliser tous les packages Python à partir de référentiels open source ou privés. Vous pouvez également déployer des modèles sur un point de terminaison API REST pour vos applications afin d’invoquer l’inférence de votre modèle pour les applications à faible latence (le point de terminaison en ligne est en public preview). Avec les solutions de registre et d’inférence de modèles, les utilisateurs peuvent désormais facilement utiliser n’importe quel modèle de ML entraîné à l’intérieur ou à l’extérieur de Snowflake, à l’aide d’un des types de modèle intégrés ou à l’aide de l’API de modèle personnalisée pour introduire tout autre type de modèle, y compris les pipelines de pré et post-traitement et les modèles partitionnés, pour exécuter une inférence évolutive et distribuée, soit dans des entrepôts virtuels, soit dans SPCS en fonction des besoins du workload.

Jahez Group, une société de livraison de repas en ligne basée en Arabie saoudite, utilise des modèles dans SPCS pour produire des modèles qui optimisent la logistique et la satisfaction des clients en assurant des livraisons à ces derniers dans les 30 minutes suivant la commande.
« Model Serving in Snowpark Container Services nous a énormément aidés dans notre cycle d’itération entre les versions de modèles, en permettant des mises à jour rapides et en réduisant les retards de déploiement », explique Marwan AlShehri, Senior Data Engineer, Jahez Group. « Grâce à la prise en charge des capacités de mise à l'échelle automatique, la production de modèles est plus simple que jamais. Le soutien incroyable de l’équipe Snowflake nous a aidés à obtenir une inférence en ligne inférieure à une seconde pour les prédictions en temps réel dans notre cas d’usage de l’heure d’arrivée estimée. Cela nous a permis d’améliorer l’affectation des commandes par messagerie et d’optimiser le processus de livraison, et ainsi de réduire nos coûts et d’augmenter notre efficacité. »
Surveillance et alerte
En production, le comportement des modèles peut évoluer avec le temps en raison d’une compréhension incomplète du monde des données d’entraînement, de dérives des données d’entrée et de problèmes de qualité des données. Des changements dans les données ou l’environnement peuvent avoir un impact considérable sur la qualité du modèle.
Snowflake ML Observability offre la possibilité de surveiller les performances des modèles, la dérive du score des modèles et la dérive de la valeur des features lorsque les inférences/journaux de prédiction sont stockés dans une table Snowflake, quel que soit l’endroit où le modèle a été entraîné ou déployé. Les résultats de la surveillance peuvent être interrogés à l'aide d'API Python ou SQL et visualisés à partir de l'interface utilisateur liée au registre de votre modèle, avec la possibilité de définir facilement des alertes sur vos seuils personnalisés.

Storio Group, leader européen des produits photo personnalisés et des cadeaux pour plus de 11 millions de clients, produit des modèles avec des fonctionnalités MLOps intégrées dans Snowflake, y compris l’observabilité du ML.
« Chez Storio, nous avons créé une plateforme MLOps utilisable, évolutive et bien gouvernée en seulement quelques mois, de la conception à la production dans Snowflake ML », affirme Dennis Verheijden, Senior ML Engineer, Storio Group. « En combinant la nouvelle fonctionnalité ML Observability avec les fonctionnalités Snowflake existantes, telles que les Dynamic Tables et ML Lineage, nous avons pu automatiser l’observabilité des modèles entraînés sur notre plateforme. Le résultat est que pour chaque modèle déployé, nous disposons de tableaux de bord automatisés, décrivant l’évaluation et la comparaison des modèles en direct, ainsi que la dérive des fonctionnalités au fil du temps. Cela permet aux data scientists de se concentrer sur la création de valeur, tout en déchargeant la mise en œuvre de l’observabilité et de la surveillance sur la plateforme. »
Gouvernance sous-jacente
À la base de Snowflake ML se trouve l’intégration complète avec Snowflake Horizon Catalog, la solution de découverte et de gouvernance des données intégrée qui inclut des fonctionnalités de conformité, de sécurité, de confidentialité et de collaboration. Toutes les données, fonctionnalités et tous les modèles dans Snowflake sont gouvernés par des contrôles d’accès basés sur les rôles (RBAC) dans tous les clouds, ce qui permet aux entreprises de gérer l’accès à grande échelle, limitant l’accès confidentiel aux rôles appropriés. Snowflake Model Management s’appuie sur cette stratégie rigoureuse de gouvernance des données et offre des moyens flexibles et sécurisés de gérer le cycle de vie des modèles en production.
Pour suivre la traçabilité, l’historique d’accès et les logs des données et artefacts de ML, les données et ML Lineage de Snowflake permettent de visualiser facilement le flux des données de leur source à leur destination finale. Le graphique de traçabilité prend entièrement en charge tous les objets de ML créés dans Snowflake (features, jeux de données et modèles), ce qui permet une traçabilité complète des pipelines de ML, et facilite ainsi la conformité réglementaire et l’audit, ainsi que la reproductibilité et la robustesse améliorée des workloads de ML.

Premiers pas
Grâce à ces dernières annonces de disponibilité générale, les data scientists et les ML engineers peuvent adapter en toute confiance les flux de travail en production dans Snowflake ML.
Les ressources suivantes sont le moyen le plus simple de se lancer avec ces nouvelles fonctionnalités :
Développement : essayez ce quickstart d’introduction à Container Runtime, qui vous présente l’expérience de la création d’un notebook et de la création d’un modèle de ML simple, et suivez cette vidéo pour débutants.
Inférence : débutez avec cet exemple de génération d’intégrations et une vidéo d’aperçu complémentaire.
Surveillance : suivez ce quickstart pour vous lancer avec ML Observability et regardez ici une démo dirigée par des experts.
Pour obtenir d’autres cas d’usage avancés, consultez les solutions suivantes :