AhmadMustafa commited on
Commit
41e1888
·
1 Parent(s): daaccd0
Files changed (1) hide show
  1. app.py +24 -7
app.py CHANGED
@@ -1,4 +1,6 @@
1
  import time
 
 
2
 
3
  import gradio as gr
4
  import spaces
@@ -18,7 +20,7 @@ device = "cuda" if torch.cuda.is_available() else "cpu"
18
 
19
 
20
  def _load_pipeline_internal(
21
- pretrained_model_path="THUDM/CogVideoX-5b",
22
  ef_net_path="weights/EF_Net.pth",
23
  dtype_str="bfloat16",
24
  ):
@@ -31,19 +33,34 @@ def _load_pipeline_internal(
31
 
32
  dtype = torch.float16 if dtype_str == "float16" else torch.bfloat16
33
 
34
- # Load models
 
 
 
 
 
 
 
 
 
 
 
 
 
35
  tokenizer = T5Tokenizer.from_pretrained(
36
- pretrained_model_path, subfolder="tokenizer"
37
  )
38
  text_encoder = T5EncoderModel.from_pretrained(
39
- pretrained_model_path, subfolder="text_encoder"
40
  )
41
  transformer = CustomCogVideoXTransformer3DModel.from_pretrained(
42
- pretrained_model_path, subfolder="transformer"
 
 
 
43
  )
44
- vae = AutoencoderKLCogVideoX.from_pretrained(pretrained_model_path, subfolder="vae")
45
  scheduler = CogVideoXDDIMScheduler.from_pretrained(
46
- pretrained_model_path, subfolder="scheduler"
47
  )
48
 
49
  # Load EF-Net
 
1
  import time
2
+ import os
3
+ from huggingface_hub import hf_hub_download
4
 
5
  import gradio as gr
6
  import spaces
 
20
 
21
 
22
  def _load_pipeline_internal(
23
+ pretrained_model_path="LiuhanChen/Sci-Fi",
24
  ef_net_path="weights/EF_Net.pth",
25
  dtype_str="bfloat16",
26
  ):
 
33
 
34
  dtype = torch.float16 if dtype_str == "float16" else torch.bfloat16
35
 
36
+ # Download EF-Net weights if not exists
37
+ if not os.path.exists(ef_net_path):
38
+ print("Downloading EF-Net weights from Hugging Face...")
39
+ os.makedirs("weights", exist_ok=True)
40
+ ef_net_path = hf_hub_download(
41
+ repo_id="LiuhanChen/Sci-Fi",
42
+ subfolder="EF_Net",
43
+ filename="EF_Net.pth",
44
+ local_dir="weights"
45
+ )
46
+ ef_net_path = "weights/EF_Net/EF_Net.pth"
47
+ print(f"EF-Net weights downloaded to {ef_net_path}")
48
+
49
+ # Load models from Hugging Face
50
  tokenizer = T5Tokenizer.from_pretrained(
51
+ pretrained_model_path, subfolder="CogVideoX-5b-I2V/tokenizer"
52
  )
53
  text_encoder = T5EncoderModel.from_pretrained(
54
+ pretrained_model_path, subfolder="CogVideoX-5b-I2V/text_encoder"
55
  )
56
  transformer = CustomCogVideoXTransformer3DModel.from_pretrained(
57
+ pretrained_model_path, subfolder="CogVideoX-5b-I2V/transformer"
58
+ )
59
+ vae = AutoencoderKLCogVideoX.from_pretrained(
60
+ pretrained_model_path, subfolder="CogVideoX-5b-I2V/vae"
61
  )
 
62
  scheduler = CogVideoXDDIMScheduler.from_pretrained(
63
+ pretrained_model_path, subfolder="CogVideoX-5b-I2V/scheduler"
64
  )
65
 
66
  # Load EF-Net