J Z commited on
Update float_lipsync.py
Browse files- float_lipsync.py +13 -0
float_lipsync.py
CHANGED
|
@@ -45,6 +45,19 @@ try:
|
|
| 45 |
except Exception as e:
|
| 46 |
logger.warning(f"[FLOAT] Failed to patch torch.load safety check: {e}")
|
| 47 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 48 |
# Import FLOAT model from cloned repo
|
| 49 |
from models.float.FLOAT import FLOAT
|
| 50 |
|
|
|
|
| 45 |
except Exception as e:
|
| 46 |
logger.warning(f"[FLOAT] Failed to patch torch.load safety check: {e}")
|
| 47 |
|
| 48 |
+
# Workaround: newer transformers defaults wav2vec2 to SDPA attention which doesn't support
|
| 49 |
+
# output_attentions=True (needed by FLOAT's wav2vec2.py). Force eager attention.
|
| 50 |
+
try:
|
| 51 |
+
from transformers import Wav2Vec2Config as _W2VConfig
|
| 52 |
+
_orig_init = _W2VConfig.__init__
|
| 53 |
+
def _patched_init(self, *args, **kwargs):
|
| 54 |
+
_orig_init(self, *args, **kwargs)
|
| 55 |
+
self._attn_implementation = "eager"
|
| 56 |
+
_W2VConfig.__init__ = _patched_init
|
| 57 |
+
logger.info("[FLOAT] Patched Wav2Vec2Config to use eager attention")
|
| 58 |
+
except Exception as e:
|
| 59 |
+
logger.warning(f"[FLOAT] Failed to patch Wav2Vec2Config: {e}")
|
| 60 |
+
|
| 61 |
# Import FLOAT model from cloned repo
|
| 62 |
from models.float.FLOAT import FLOAT
|
| 63 |
|