GCP a mis à jour son service de calcul géré Cloud Run avec une fonctionnalité qui permettra aux entreprises d'exécuter leurs applications d'inférence IA en temps réel utilisant de grands modèles de langage (LLM) sur les GPU L4 de Nvidia. Cette fonctionnalité est importante pour les développeurs, car la prise en charge des GPU Nvidia améliorera les capacités de Cloud Run en accélérant le temps de calcul nécessaire à l'inférence et en contribuant à réduire les dépenses. Cloud Run, qui a été présenté pour la première fois en avril 2019, propose aux entreprises d'exécuter des conteneurs sans état qui sont invocables via des requêtes HTTP. Le service de calcul géré ou serverless est également disponible sur Google Kubernetes Engine (GKE), permettant aux développeurs d'exécuter des charges de travail HTTP conteneurisées sur un cluster Kubernetes géré. On peut dire que le service est populaire chez les développeurs, car il exécute des calculs ou des charges de travail à la demande - ce qui contraste fortement avec une instance cloud typique qui fonctionne pendant une durée spécifique et qui est toujours disponible.
Cependant, la demande croissante pour la possibilité d'exécuter des charges de travail liées à l'IA, qui plus est via un service de calcul sans serveur, a contraint Google à ajouter la prise en charge du GPU à Cloud Run. Selon les analystes, la combinaison de la prise en charge des GPU et de la nature serverless du service devrait profiter aux entreprises qui tentent d'exécuter des charges de travail d'IA, car avec Cloud Run, elles n'ont pas besoin d'acheter et de mobiliser des ressources de calcul matérielles sur site et ne dépensent pas relativement plus en faisant tourner une instance cloud typique. « Lorsque votre application n'est pas utilisée, le service est automatiquement réduit à zéro afin que vous ne soyez pas facturé », a écrit Google dans un billet de blog. L'hyperscaler affirme que cette fonctionnalité ouvre de nouveaux cas d'utilisation pour les développeurs, notamment l'inférence en temps réel avec des modèles ouverts légers tels que les modèles ouverts Gemma (2B/7B) de Google ou Llama 3 (8B) de Meta pour créer des chatbots personnalisés ou résumer des documents à la volée, tout en s'adaptant pour gérer un trafic d'utilisateurs irrégulier. Un autre cas d'utilisation consiste à servir des modèles d'IA génériques personnalisés, tels que la génération d'images adaptées à la marque de votre entreprise, et à réduire l'échelle pour optimiser les coûts lorsque personne ne les utilise. En outre, Google a déclaré que le service pouvait être utilisé pour accélérer les services Cloud Run à forte intensité de calcul, tels que la reconnaissance d'images à la demande, le transcodage et le streaming vidéo, et le rendu 3D.
Quelles sont les limites ?
Pour commencer, les entreprises peuvent s'inquiéter du démarrage à froid - un phénomène courant avec les services serverless. Le démarrage à froid fait référence au temps nécessaire pour que le service se charge avant de s'exécuter activement. Ce point est important pour les entreprises, car il a une relation et un effet directs avec la latence. Par exemple, le temps nécessaire au LLM pour répondre à une requête d'un utilisateur via une application d'entreprise. Toutefois, Google semble avoir pris les choses en main. « Les instances Cloud Run dotées d'un GPU L4 avec pilote préinstallé démarrent en 5 secondes environ, après quoi les processus s'exécutant dans votre conteneur peuvent commencer à utiliser le GPU. Ensuite, vous aurez besoin de quelques secondes supplémentaires pour que le cadre et le modèle se chargent et s'initialisent », explique l'entreprise dans son billet de blog.
En outre, pour renforcer la confiance des entreprises dans cette fonctionnalité de Cloud Run, l'hyperscaler a indiqué les temps de démarrage à froid de plusieurs modèles légers. Les temps de démarrage à froid pour les modèles Gemma 2b, Gemma2 9b, Llama2 7b/13b, et Llama3.1 8b avec le framework Ollama, vont de 11 à 35 secondes, écrit le fournisseur, ajoutant que la durée fournie mesure le temps nécessaire pour démarrer une instance à partir de 0, charger le modèle dans le GPU, et pour que le LLM renvoie son premier mot. Les autres frameworks pris en charge par le service sont vLLM et PyTorch. Cloud Run peut également être déployé via Nvidia NIM.