multimodalart HF Staff commited on
Commit
4091d2d
·
verified ·
1 Parent(s): d73341d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -10
app.py CHANGED
@@ -14,16 +14,13 @@ if not os.path.exists(LTX_REPO_DIR):
14
  print(f"Cloning {LTX_REPO_URL}...")
15
  subprocess.run(["git", "clone", "--depth", "1", LTX_REPO_URL, LTX_REPO_DIR], check=True)
16
 
17
- try:
18
- import ltx_pipelines # noqa: F401
19
- except ImportError:
20
- print("Installing ltx-core and ltx-pipelines...")
21
- subprocess.run(
22
- [sys.executable, "-m", "pip", "install", "-e",
23
- os.path.join(LTX_REPO_DIR, "packages", "ltx-core"),
24
- "-e", os.path.join(LTX_REPO_DIR, "packages", "ltx-pipelines")],
25
- check=True,
26
- )
27
 
28
  sys.path.insert(0, os.path.join(LTX_REPO_DIR, "packages", "ltx-pipelines", "src"))
29
  sys.path.insert(0, os.path.join(LTX_REPO_DIR, "packages", "ltx-core", "src"))
@@ -93,6 +90,26 @@ pipeline = DistilledPipeline(
93
  quantization=QuantizationPolicy.fp8_cast(),
94
  )
95
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
96
  # Connect to text encoder space
97
  print(f"Connecting to text encoder space: {TEXT_ENCODER_SPACE}")
98
  try:
 
14
  print(f"Cloning {LTX_REPO_URL}...")
15
  subprocess.run(["git", "clone", "--depth", "1", LTX_REPO_URL, LTX_REPO_DIR], check=True)
16
 
17
+ print("Installing ltx-core and ltx-pipelines from cloned repo...")
18
+ subprocess.run(
19
+ [sys.executable, "-m", "pip", "install", "--force-reinstall", "--no-deps", "-e",
20
+ os.path.join(LTX_REPO_DIR, "packages", "ltx-core"),
21
+ "-e", os.path.join(LTX_REPO_DIR, "packages", "ltx-pipelines")],
22
+ check=True,
23
+ )
 
 
 
24
 
25
  sys.path.insert(0, os.path.join(LTX_REPO_DIR, "packages", "ltx-pipelines", "src"))
26
  sys.path.insert(0, os.path.join(LTX_REPO_DIR, "packages", "ltx-core", "src"))
 
90
  quantization=QuantizationPolicy.fp8_cast(),
91
  )
92
 
93
+ # Preload all models so first request is fast.
94
+ # On ZeroGPU, .to('cuda') is intercepted and actual GPU allocation
95
+ # happens inside the @spaces.GPU decorated function.
96
+ print("Preloading models...")
97
+ ledger = pipeline.model_ledger
98
+ _transformer = ledger.transformer()
99
+ _video_encoder = ledger.video_encoder()
100
+ _video_decoder = ledger.video_decoder()
101
+ _audio_decoder = ledger.audio_decoder()
102
+ _vocoder = ledger.vocoder()
103
+ _spatial_upsampler = ledger.spatial_upsampler()
104
+
105
+ ledger.transformer = lambda: _transformer
106
+ ledger.video_encoder = lambda: _video_encoder
107
+ ledger.video_decoder = lambda: _video_decoder
108
+ ledger.audio_decoder = lambda: _audio_decoder
109
+ ledger.vocoder = lambda: _vocoder
110
+ ledger.spatial_upsampler = lambda: _spatial_upsampler
111
+ print("All models preloaded!")
112
+
113
  # Connect to text encoder space
114
  print(f"Connecting to text encoder space: {TEXT_ENCODER_SPACE}")
115
  try: