Les clients attendent des réponses instantanées à chaque interaction, qu'il s'agisse d'une recommandation affichée en quelques millisecondes, d'une transaction frauduleuse bloquée avant sa validation ou d'un résultat de recherche qui semble immédiat pour l'utilisateur. Pour monter en charge, la fourniture de ces expériences dépend de systèmes de diffusion de modèles qui restent rapides, stables et prévisibles, même sous une charge soutenue et inégale.
Lorsque le trafic atteint des dizaines ou des centaines de milliers de requêtes par seconde, de nombreuses équipes sont confrontées aux mêmes défis. La latence devient irrégulière, les coûts d'infrastructure augmentent et les systèmes nécessitent un réglage constant pour gérer les pics et les baisses de la demande. Les pannes deviennent également plus difficiles à diagnostiquer à mesure que de nouveaux composants sont assemblés, ce qui détourne les équipes de l'amélioration des modèles pour les amener à se concentrer sur le maintien en fonctionnement des systèmes de production.
Cet article explique comment Model Serving sur Databricks prend en charge les charges de travail en temps réel à QPS élevé et présente les meilleures pratiques concrètes que vous pouvez appliquer pour obtenir une faible latence, un débit élevé et des performances prévisibles en production.
Databricks Model Serving fournit une infrastructure de service entièrement gérée et évolutive, directement au sein de votre lakehouse Databricks. Il vous suffit de prendre un modèle existant dans votre registre de modèles, de le déployer et d'obtenir un endpoint REST sur une infrastructure gérée, hautement évolutive et optimisée pour un trafic à QPS élevé.
Le Model Serving de Databricks est optimisé pour les charges de travail critiques à QPS élevé :
Le Model Serving de Databricks permet à notre équipe de déployer des modèles de machine learning avec la fiabilité et la montée en charge requises pour les applications en temps réel. Il est conçu pour gérer les charges de travail à QPS élevé tout en maximisant l'utilisation du matériel. De plus, Databricks fournit une solution de Magasin de fonctionnalités de pointe avec des recherches ultra-rapides nécessaires pour de telles charges de travail. Grâce à ces capacités, nos ingénieurs ML peuvent se concentrer sur l'essentiel : affiner les performances du modèle et améliorer l'expérience utilisateur. — Bojan Babic, ingénieur de recherche, You.com
Une fois cette base en place, l'étape suivante consiste à optimiser vos Endpoints, vos modèles et vos applications clientes pour atteindre de manière constante un throughput élevé et une faible latence, en particulier lorsque le trafic augmente. Les bonnes pratiques suivantes s'appuient sur des déploiements clients réels qui exécutent des millions à des milliards d'inférences chaque jour.
Veuillez consulter notre guide des bonnes pratiques pour plus de détails.
Une première étape clé pour garantir que la couche réseau est optimisée pour un throughput/QPS élevé et une faible latence. Le Model Serving le fait pour vous via des points de terminaison à routage optimisé. Lorsque vous activez l'optimisation des routes sur un point de terminaison, Databricks Model Serving optimise le réseau et le routage pour les requêtes d'inférence, ce qui se traduit par une communication plus rapide et plus directe entre votre client et le modèle. Cela réduit considérablement le temps nécessaire à une requête pour atteindre le modèle, et est particulièrement utile pour les applications à faible latence comme les systèmes de recommandation, la recherche et la détection de fraude.
Dans les scénarios à haut throughput, la réduction de la complexité du modèle, le déchargement du traitement depuis le endpoint de service et le choix des bonnes cibles de simultanéité aident votre endpoint à Monter en charge à des volumes de requêtes importants avec la juste quantité de compute nécessaire. De cette façon, vos Endpoints sont rentables, tout en pouvant monter en charge pour atteindre les objectifs de performance.
Avec Databricks Model Serving, nous pouvons gérer des charges de travail à QPS élevé telles que la personnalisation et les recommandations en temps réel. Cette solution offre à nos marques la capacité à monter en charge et la vitesse nécessaires pour proposer des expériences de contenu sur mesure à nos millions de lecteurs. — Oscar Celma, vice-président senior de Data Science et d'analytique produit chez Conde Nast
L'optimisation du code côté client garantit un traitement rapide des requêtes et une utilisation complète de vos instances de compute d'endpoint, ce qui se traduit par un meilleur throughput de QPS, des économies de coûts et une latence plus faible.
Regrouper les requêtes batch lors de l'appel des Endpoints de Databricks Model Serving
(Cet article de blog a été traduit à l'aide d'outils basés sur l'intelligence artificielle) Article original
Produto
12 juin 2024/11 min de lecture
IA
7 janvier 2025/8 min de lecture

