eshwar06 commited on
Commit
abf73e0
·
verified ·
1 Parent(s): 86af2d0

Update TFG/__init__.py

Browse files
Files changed (1) hide show
  1. TFG/__init__.py +16 -48
TFG/__init__.py CHANGED
@@ -1,48 +1,16 @@
1
- # Optional imports - gracefully handle missing dependencies
2
- try:
3
- from .SadTalker import SadTalker
4
- SADTALKER_AVAILABLE = True
5
- except ImportError as e:
6
- SadTalker = None
7
- SADTALKER_AVAILABLE = False
8
- print(f"⚠️ SadTalker not available: {e}")
9
-
10
- try:
11
- from .Wav2Lip import Wav2Lip
12
- WAV2LIP_AVAILABLE = True
13
- except ImportError as e:
14
- Wav2Lip = None
15
- WAV2LIP_AVAILABLE = False
16
- print(f"⚠️ Wav2Lip not available: {e}")
17
-
18
- try:
19
- from .Wav2Lipv2 import Wav2Lipv2
20
- WAV2LIPV2_AVAILABLE = True
21
- except ImportError as e:
22
- Wav2Lipv2 = None
23
- WAV2LIPV2_AVAILABLE = False
24
- print(f"⚠️ Wav2Lipv2 not available: {e}")
25
-
26
- try:
27
- from .NeRFTalk import NeRFTalk
28
- NERFTALK_AVAILABLE = True
29
- except ImportError as e:
30
- NeRFTalk = None
31
- NERFTALK_AVAILABLE = False
32
- print(f"⚠️ NeRFTalk not available: {e}")
33
-
34
- try:
35
- # Changed from MuseTalk to MuseTalk_RealTime to match webui.py
36
- from .MuseTalk import MuseTalk_RealTime
37
- # Also expose as MuseTalk for backward compatibility if needed
38
- MuseTalk = MuseTalk_RealTime
39
- MUSETALK_AVAILABLE = True
40
- except ImportError as e:
41
- MuseTalk_RealTime = None
42
- MuseTalk = None
43
- MUSETALK_AVAILABLE = False
44
- print(f"⚠️ MuseTalk not available: {e}")
45
-
46
- # Export availability flags
47
- __all__ = ['SadTalker', 'Wav2Lip', 'Wav2Lipv2', 'NeRFTalk', 'MuseTalk_RealTime', 'MuseTalk',
48
- 'SADTALKER_AVAILABLE', 'WAV2LIP_AVAILABLE', 'WAV2LIPV2_AVAILABLE', 'NERFTALK_AVAILABLE', 'MUSETALK_AVAILABLE']
 
1
+ # ⚠️ INTENTIONALLY LEFT EMPTY FOR LAZY LOADING ⚠️
2
+ #
3
+ # To prevent Out-Of-Memory (OOM - Exit Code 137) crashes on Hugging Face Spaces:
4
+ # We must NOT import heavy modules (SadTalker, MuseTalk, Wav2Lip) here.
5
+ #
6
+ # Doing so would trigger their internal imports (PyTorch, MoviePy, OpenCV) immediately
7
+ # at startup, consuming all 16GB of RAM before the user clicks anything.
8
+ #
9
+ # USAGE GUIDE:
10
+ # Instead of: from TFG import SadTalker
11
+ # Use: from TFG.SadTalker import SadTalker (Inside your function)
12
+ #
13
+ # Example in webui.py:
14
+ # def load_sadtalker():
15
+ # from TFG.SadTalker import SadTalker <-- Loads strictly on demand
16
+ # return SadTalker(...)