00:00:00RunPod vient de sortir un nouvel outil de service assez génial appelé RunPod Flash.
00:00:04Il est conçu pour simplifier le déploiement de fonctions GPU serverless.
00:00:09Auparavant, porter un script Python local vers un GPU cloud nécessitait de créer une image Docker,
00:00:14de configurer l'environnement, de la pousser sur un registre et de gérer un déploiement distinct.
00:00:19Mais Flash élimine cette contrainte en vous permettant de transformer des fonctions Python standards
00:00:24en points de terminaison cloud via de simples décorateurs exécutables à la demande.
00:00:29Dans la vidéo d'aujourd'hui, nous allons examiner RunPod Flash de plus près, voir comment il fonctionne,
00:00:33et le tester nous-mêmes en créant un générateur de vidéo par IA à la demande.
00:00:38Ça va être très intéressant, alors plongeons dans le vif du sujet.
00:00:41RunPod Flash fonctionne essentiellement en faisant totalement abstraction de la couche infrastructure.
00:00:50Au lieu de gérer le déploiement, le SDK Flash package votre code et vos dépendances,
00:00:55puis les envoie vers un worker géré, qui n'existe que le temps de l'exécution de votre fonction.
00:01:01L'une des meilleures fonctionnalités est la synchronisation automatique de l'environnement.
00:01:04Je code ceci sur un Mac, mais Flash s'occupe de toute la complexité multiplateforme,
00:01:09s'assurant que chaque bibliothèque est correctement compilée pour les workers GPU Linux dès que je lance l'exécution.
00:01:15Il provisionne ensuite discrètement un point de terminaison serverless pour chaque fonction,
00:01:20ce qui signifie que vous obtenez une mise à l'échelle et du matériel indépendants pour chaque tâche dédiée
00:01:26sans jamais toucher à un fichier de configuration. Mais la vraie magie opère lors de l'intégration
00:01:31dans un service backend. Comme chaque fonction décorée est un point de terminaison d'API actif,
00:01:36vous pouvez les déclencher depuis une application web, un bot Discord ou un backend mobile sans configuration supplémentaire.
00:01:42Et l'architecture est parfaite pour le passage à l'échelle, car vous pouvez lancer des dizaines de tâches en parallèle.
00:01:48Par exemple, si 10 utilisateurs attendent de générer des vidéos par IA, Flash lance simplement 10
00:01:54workers indépendants, puis éteint tout dès qu'ils ont terminé. Ainsi, vous n'êtes pas
00:01:59bloqué à attendre qu'un seul GPU termine toute la file d'attente. L'infrastructure s'adapte
00:02:05selon votre trafic. On pourrait penser qu'un pipeline à plusieurs étapes comme celui-ci,
00:02:10mélangeant différents matériels et données, nécessiterait une couche d'orchestration complexe. Mais avec Flash,
00:02:16il suffit littéralement de passer une variable d'une fonction à une autre. Pour vous montrer sa puissance,
00:02:21nous allons construire un pipeline multi-étapes. D'abord, nous utiliserons un worker CPU simple et peu coûteux
00:02:27pour gérer le pré-traitement. Ici, nous allons redimensionner des images d'entrée de manière adaptative.
00:02:33Puis nous passerons ces données, donc l'image redimensionnée, à un GPU RTX 5090 haut de gamme
00:02:41pour générer une vidéo haute fidélité avec le modèle Cog Video X. Cela garantit que nous ne gaspillons pas
00:02:47d'argent sur un GPU de pointe pour des tâches simples comme le redimensionnement d'image. Nous ne l'appelons
00:02:52que pour les fonctions nécessitant une grande puissance de calcul. Pour commencer, nous créons un environnement virtuel
00:02:59avec UV, ajoutons RunPod Flash, puis rechargeons l'environnement pour nous assurer que tout fonctionne,
00:03:03notamment les variables de chemin. Ensuite, vous devez vous connecter à votre compte RunPod via "Flash login".
00:03:09À partir de là, nous pouvons passer à la configuration de nos points de terminaison. J'ai ici un fichier
00:03:14Python tout simple. Comme vous voyez, il est court et contient deux points de terminaison Flash.
00:03:19L'un effectue le redimensionnement adaptatif des images d'entrée, comme mentionné précédemment.
00:03:24Il utilise un simple CPU et appelle un redimensionneur d'image. Rien de complexe, car nous n'avons
00:03:31pas besoin de puissance excessive pour cela. Mais sur le second point de terminaison, nous avons notre pipeline
00:03:37de génération vidéo personnalisé, où nous activons une instance GPU dédiée avec une RTX 5090.
00:03:43Nous utilisons le modèle Cog Video X de 5 milliards de paramètres pour créer une vidéo à partir de l'image redimensionnée.
00:03:51Voyons maintenant ce que ça donne à l'exécution. Nous ajoutons une simple image de ce chien,
00:03:57puis nous fournissons le prompt qui sera utilisé pour la génération vidéo. Si nous retournons
00:04:02sur RunPod, nous voyons deux workers dédiés avec une file d'attente active qui traitent
00:04:07notre image et notre vidéo. Je précise que lors de la toute première exécution de ces points de terminaison,
00:04:12le pipeline peut être un peu plus long. C'est parce que RunPod doit installer toutes les dépendances
00:04:17et télécharger les poids du modèle, mais chaque exécution suivante sera considérablement plus rapide.
00:04:22Attendons maintenant quelques secondes que le pipeline se termine.
00:04:28Et voilà, nous obtenons notre petite vidéo de sortie.
00:04:33Dans l'onglet analytique de RunPod, nous pouvons aussi suivre le nombre de déploiements,
00:04:39les succès, les échecs et garder un œil sur la facturation. Voilà donc RunPod Flash
00:04:43en résumé. Je pense sincèrement que c'est une fonctionnalité géniale si vous développez
00:04:49un service backend nécessitant des tâches d'IA lourdes à la demande, comme la génération d'images,
00:04:56de vidéos, l'analyse documentaire complexe ou tout autre type de traitement similaire. Mais qu'en pensez-vous ?
00:05:01Trouvez-vous cette fonctionnalité utile ? L'avez-vous testée ? L'utiliseriez-vous ? Dites-le nous en commentaire.
00:05:06Et si vous appréciez ce genre de démonstrations techniques, faites-le moi savoir
00:05:10en cliquant sur le bouton j'aime sous la vidéo. N'oubliez pas non plus de vous abonner
00:05:15à notre chaîne. C'était Andris de Betterstack, et je vous retrouve dans les prochaines vidéos.