Un pas supplémentaire vient d’être franchi dans cette révolution technologique en cours.
Mise en œuvre d’un pipeline de génération multimodale de vidéo et d’audio MiniMax-H3 à l’aide des API ComfyUI
Dans ce tutoriel, nous mettons en œuvre un workflow complet de génération de vidéos MiniMax-H3 en utilisant ComfyUI comme backend d’inférence sans interface graphique. Nous configurons l’environnement en fonction de la mémoire du GPU, de la capacité du disque, de la précision du modèle, de la résolution, de la durée, de la stratégie d’échantillonnage et de différents modes de génération, tout en sélectionnant de manière dynamique un profil de poids adapté en fonction du matériel disponible. Nous installons et lançons ComfyUI par programmation, téléchargeons les poids nécessaires pour la diffusion, l’encodeur de texte, le VAE vidéo et le VAE audio depuis Hugging Face, puis communiquons avec le serveur en cours d’exécution via ses API HTTP et WebSocket. Nous construisons également le graphe d’exécution de ComfyUI directement en Python, validons les schémas des nœuds par rapport au point de terminaison /object_info en temps réel, et prenons en charge la conversion texte-vidéo, la génération conditionnée par la première et la dernière image, ainsi que la génération conditionnée par une image de référence. En combinant la configuration automatisée des modèles, la construction de graphes tenant compte du schéma, le décodage conjoint vidéo-audio, le suivi de la progression et la collecte des résultats, nous créons un pipeline reproductible permettant d’expérimenter MiniMax-H3 sans avoir recours à l’interface graphique ComfyUI.
Fait intéressant, nous définissons la configuration de base de MiniMax-H3, les profils de modèles, les paramètres de génération et les fonctions utilitaires partagées utilisées tout au long du flux de travail. Nous calculons le nombre d’images valides et les dimensions de la zone de travail tout en vérifiant les capacités du GPU, la mémoire VRAM proposé, la prise en charge de BF16 et l’espace disque avant le début de l’inférence. Nous sélectionnons également automatiquement le profil de système le plus adapté afin que le pipeline soit compatible avec le matériel proposée dans notre environnement d’exécution Colab.
Nous installons et configurons ComfyUI, préparons la structure du répertoire des modèles externes et activons la prise en charge de MiniMax-H3 dans l’environnement Colab. Nous téléchargeons depuis Hugging Face les poids nécessaires du modèle d’IA de diffusion, de l’encodeur de texte, du VAE vidéo et du VAE audio, tout en réutilisant les fichiers mis en cache dans la mesure du possible. Nous pouvons également, si nous le souhaitons, récupérer la configuration Turbo LoRA, ce qui nous autorise, si nécessaire, de privilégier une inférence plus rapide au détriment d’une certaine qualité de génération.
Dans la foulée, nous créons une couche de gestion du serveur qui lance ComfyUI en tant que sous-processus en arrière-plan et vérifie qu’il est accessible via son API. Nous surveillons le démarrage du serveur, analysons les statistiques de mémoire du GPU, libérons de la VRAM si nécessaire et arrêtons le serveur en toute sécurité une fois l’exécution terminée. Nous développons aussi un utilitaire d’inspection de schéma qui lit en temps réel les définitions des nœuds de ComfyUI afin de valider les entrées du graphe et de détecter dynamiquement les emplacements de nœuds pris en charge.
Point notable, nous construisons le graphe de workflow MiniMax-H3 ComfyUI entièrement en Python à l’aide de méthodes réutilisables de création de nœuds. Nous assemblons les étapes suivantes : structure de base du modèle, pipeline de conditionnement, échantillonneur, planificateurs, décodage latent conjoint, création de vidéo et enregistrement de la sortie, tant pour la configuration standard que pour la configuration Turbo. Nous prenons aussi en charge la conversion de texte en vidéo, la génération de vidéos conditionnées par la première et la dernière image, ainsi que la génération de vidéos conditionnées par une image de référence, grâce à cette même architecture de graphe programmable.
Notons par ailleurs, nous gérons le téléchargement d’images, la soumission du graphe, le suivi de la progression via WebSocket, la détection des résultats et l’ensemble du flux d’exécution du tutoriel. Nous soumettons le graphe généré à ComfyUI, surveillons l’exécution de chaque nœud et la progression de l’échantillonnage, récupérons les fichiers vidéo obtenus et affichons les résultats exploitables directement dans Colab. Nous coordonnons enfin tous les composants précédents via la fonction principale, en gérant le flux de travail depuis la vérification préalable du matériel et le chargement du modèle jusqu’à la génération synchronisée de la vidéo et de l’audio par MiniMax-H3.
En conclusion, nous avons mis en œuvre un pipeline d’inférence MiniMax-H3 entièrement programmable, qui couvre toutes les étapes, de la validation matérielle et de l’acquisition du modèle jusqu’à l’exécution du graphe et à la génération finale synchronisée de contenu vidéo et audio. Nous avons utilisé ComfyUI comme serveur sans interface graphique tout en contrôlant l’ensemble du flux de travail depuis Python, ce qui nous a permis d’accéder directement à la configuration, au chargement des modèles, au conditionnement, à l’échantillonnage, au décodage, à la gestion du cycle de vie du serveur et aux résultats générés. Nous avons en outre renforcé la robustesse du pipeline en inspectant de manière dynamique les schémas des nœuds ComfyUI, en adaptant les profils de modèles à la mémoire vidéo disponible, en alignant le nombre d’images par seconde sur les exigences de MiniMax-H3 et en prenant en charge plusieurs modes de conditionnement grâce à cette même architecture réutilisable. À l’issue du workflow, nous disposons d’une base flexible que nous pouvons étendre à l’aide de différentes invites, informations de départ, images de référence, contraintes d’encadrement, accélération LoRA, résolutions et stratégies d’échantillonnage, tout en conservant un processus de génération MiniMax-H3 cohérent et automatisé.
Cette nouvelle étape pose plusieurs questions qui restent ouvertes.
À lire également :
- OpenAI rachète NextSlide, une start-up spécialisée dans les présentations | TechCrunch
- Répondre aux nouveaux défis en matière de capacités cybercritiques
Article original : MarkTechPost : MarkTechPost