MiniMax H3 Fun ControlNet Union 2.0 dans ComfyUI : huit contrôles

ComfyUI Wikinews

Le ControlNet Union 2.0 d'Alibaba PAI pour MiniMax H3 ajoute les contrôles Scribble, Layout et Gray et double les blocs d'injection, avec une prise en charge ComfyUI le jour même.

MiniMax H3 Fun ControlNet Union 2.0 (Hugging Face | VideoX-Fun | ComfyUI PR #16471) est la deuxième version du ControlNet-Union d'Alibaba PAI pour MiniMax H3, publiée le 22 septembre 2026. Elle passe de cinq conditions de contrôle à huit en ajoutant Scribble, Layout et Gray, et double le nombre de points d'injection du contrôle dans le transformer de base.

Le précédent checkpoint (MiniMax H3 Fun ControlNet Union, 24 août 2026) proposait Canny, Depth, HED, MLSD et Pose avec cinq blocs de contrôle. La version 2.0 conserve cette interface et reconstruit la branche de contrôle : le nouveau checkpoint pèse environ 13,5 Go et ComfyUI le prend en charge nativement le jour même de sa publication.

Ce qui change en 2.0

v1 (août 2026)v2.0 (cette version)
Conditions de contrôle5 : Canny, Depth, HED, MLSD, Pose8 : ajoute Scribble, Layout, Gray
Profondeur de la branche de contrôle5 blocs de contrôle (0, 10, 20, 30, 40)10 blocs de contrôle (0, 5, 10, ..., 45)
Recette d'inpainting des pixels masquéspre_norm (trous ≈ -2, proche du noir)post_norm (trous à 0, gris moyen)
Contenu du checkpointcontrol_proj_in + 5 blocs (~6,8 Go)control_proj_in + 10 blocs (~13,5 Go)
Config requiseminimax_h3_control.yamlminimax_h3_control_inpaint_post_norm.yaml

Tout le reste est conservé : control_in_dim = 49 (latent + latent masqué + masque, donc une seule branche gère à la fois le contrôle et l'inpainting), control_apply_audio = false, des poids distillés par guidance qui tournent à guidance_scale = 1.0, et un ajout de skip à porte zéro dans la branche principale.

La disposition des injections est le changement notable. Les signaux de contrôle se rattachent désormais à dix des 50 blocs du transformer au lieu de cinq, ce qui double environ les points d'injection ; la fiche du modèle attribue à cela une adhérence structurelle plus étroite.

Huit conditions de contrôle

ConditionSignal de contrôleNouveau en 2.0
CannyCarte de contours Canny
DepthCarte de profondeur monoculaire
HEDDétection de contours HED
MLSDDétection de segments de ligne
PoseSquelette DWPose
ScribbleLignes à main levée ou de croquis
LayoutVidéo de disposition par boîtes englobantes
GrayVidéo en niveaux de gris (luminance)

Layout suit la recette de layout de Wan2.1-VACE : les boîtes de chaque sujet sont rendues sous forme de rectangles codés par couleur sur un arrière-plan blanc, puis fournies comme une vidéo RGB ordinaire. La sortie générée suit la vidéo de contrôle pour le nombre de frames (aligné vers le bas sur le plus grand 17 * n + 5 que le VAE vidéo peut décoder, plafonné à 15 secondes), le ratio d'image et un débit fixe de 24 fps.

L'utiliser dans ComfyUI

ComfyUI a ajouté la prise en charge du nouveau checkpoint dans la PR #16471 (CORE-462, fusionnée le 22 septembre 2026), qui met à jour le chemin de contrôle MiniMax H3 à trois endroits :

  • comfy/ldm/minimax/controlnet.py apprend le drapeau inpaint_post_norm, de sorte que les pixels masqués sont mis à zéro après la normalisation VAE au lieu d'avant.
  • comfy_extras/nodes_minimax_h3.py réinjecte la moyenne ImageNet dans la région masquée lorsque ce drapeau est activé, ce qui correspond à la façon dont le checkpoint 2.0 a été entraîné.
  • comfy_extras/nodes_model_patch.py déduit désormais les calques d'injection du checkpoint lui-même (range(0, 50, 50 // num_blocks)), de sorte qu'un seul loader gère à la fois les fichiers de poids v1 à 5 blocs et v2.0 à 10 blocs.

Dans un graphique, vous utilisez les deux mêmes nœuds qu'auparavant : ModelPatchLoader pour la branche de contrôle et MiniMaxH3FunControlNetApply pour lier la vidéo de contrôle à l'échantillonneur. Le checkpoint publié est la branche de contrôle brute ; les utilisateurs de ComfyUI chargent donc plutôt l'un des correctifs convertis du référentiel MiniMax H3 de Kijai :

Le modèle officiel fourni avec ComfyUI, video_minimax_h3_fun_controlnet_union, câble déjà toute la chaîne pour le contrôle de pose (sélecteur de résolution, nœud H3 reference-to-video, paire de VAE, sous-graphe de prétraitement de pose vidéo SDPose et échantillonneur). Remplacez le fichier de correctif dans ModelPatchLoader par la version 2.0 et il exécute le nouveau checkpoint.

Aperçu du modèle officiel MiniMax H3 Fun ControlNet Union

Image d'aperçu fournie avec le modèle officiel de contrôle de pose dans ComfyUI

Aperçu du modèle officiel MiniMax H3 Fun ControlNet Union, seconde image

Seconde image d'aperçu du même modèle

Résultats

La fiche du modèle publie une vidéo de contrôle et une sortie générée pour chaque condition, toutes à 40 étapes d'inférence avec guidance_scale = 1.0 et control_context_scale = 1.00. Dans chaque paire ci-dessous, l'image de gauche est le signal de contrôle et celle de droite la sortie.

Contrôle de poseSortie de pose
Vidéo de contrôle de poseSortie générée
Contrôle LayoutSortie Layout
Vidéo de contrôle Layout (nouveau en 2.0)Sortie générée
Contrôle ScribbleSortie Scribble
Vidéo de contrôle Scribble (nouveau en 2.0)Sortie générée

Les clips complets, y compris la paire d'inpainting, sont sur la page du modèle.

Disponibilité

Le checkpoint s'exécute via le pipeline d'inférence VideoX-Fun, comme pour la v1 : clonez VideoX-Fun, placez le modèle MiniMax H3 de base et la branche de contrôle de 13,5 Go dans models/Diffusion_Transformer/, et pointez examples/minimax_h3_fun/predict_v2v_control.py vers les nouveaux poids. La fiche du modèle signale un piège en particulier : charger la config v1 (minimax_h3_control.yaml) avec le checkpoint 2.0 est un échec silencieux, car seule la moitié de la branche de contrôle est construite ; control_blocks.5~9 sont alors ignorés comme clés inattendues et le reste est mal placé. Utilisez toujours minimax_h3_control_inpaint_post_norm.yaml.

control_context_scale met toujours à l'échelle chaque skip de contrôle avant son ajout à la branche principale : 1.0 pour le contrôle le plus fort, des valeurs plus faibles pour un guidage plus léger, et 0.0 pour désactiver complètement la branche de contrôle.

Commentaires

Connectez-vous avec GitHub pour rejoindre la discussion.

Chargement des commentaires…
MiniMax H3 Fun ControlNet Union 2.0 dans ComfyUI : huit contrôles | ComfyUI Wiki