huggingface / huggingface/diffusers

MiniMax H3 unnecessarily swapped w1 in VAE

Offen
#14,410 3 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
34.5k
Forks
7.3k
Ø Merge
3 T. 3 Std.
Gemergte PRs (30 T.)
91

Beschreibung

The MiniMax H3 model is very popular, congratulations to the MiniMax team.

However, there's currently an issue caused by the Diffusers' team once again modifying the layout of the model for seemingly no reason.

The video VAE's weights are reorganised from `[gate, up]` to `[up, gate]`.

why? why does this keep happening? what is the actual reason for the swap?

It's caused an enormous amount of time waste to try and make the two weight setups both loadable and function correctly during training and inference.

This isn't the first time it's happened, but it's the first time it's been done in a way that is **extremely difficult to track down the issue**. Usually, the unnecessary change arises from qkv projections being split when the upstream model release had them fused (and oftentimes their paper eg. Flux.1 and others have mentioned qkv fusion as ultimately required to achieve high levels of hardware utilisation)

Look at the result:

https://github.com/user-attachments/assets/766ea4b9-49dc-40f0-bdf4-af43b4cd9265

It's probably too late to fix it now, just like every other time the Diffusers pipeline has been released without enough time to absorb community feedback. Now we're stuck with two, incompatible sets of weights being distributed for H3 probably forever.

I understand that the tone of this post is going to upset people, but I'm not really worried about it. The time wasted through debugging this issue is worse. It's going to keep affecting people until either the weights are recalled and replaced or another model comes along to replace H3.

Can you simply stop making these changes, especially ones that don't cause obvious errors?

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Der Bericht nennt keine Diffusers-Datei, keinen Test und keinen Einstiegspunkt. Beginne damit, den Gewichts-Layout-Mismatch der MiniMax H3 VAE zu reproduzieren und nachzuverfolgen, wo `[gate, up]` zu `[up, gate]` wird; abgeschlossen wäre die Arbeit, wenn ein abgestimmter Kompatibilitäts- oder Korrekturpfad vorhanden wäre, der das Verhalten bei Training und Inferenz bewahrt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python, pytorch
Bereich
machine-learning
Issue-Typ
Bug
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Ruhig
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.