Spaces:
Build error
Build error
Update app.py
Browse files
app.py
CHANGED
@@ -1,84 +1,63 @@
|
|
1 |
import os
|
2 |
-
import
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
try:
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
print(f"❌ Checkpoint file not found at {checkpoint_fp8}. Cannot run sampling.")
|
47 |
-
sys.exit(1)
|
48 |
-
|
49 |
-
cmd = [
|
50 |
-
"python3", "hymm_sp/sample_gpu_poor.py",
|
51 |
-
"--input", "assets/test.csv",
|
52 |
-
"--ckpt", checkpoint_fp8,
|
53 |
-
"--sample-n-frames", "129",
|
54 |
-
"--seed", "128",
|
55 |
-
"--image-size", "704",
|
56 |
-
"--cfg-scale", "7.5",
|
57 |
-
"--infer-steps", "50",
|
58 |
-
"--use-deepcache", "1",
|
59 |
-
"--flow-shift-eval-video", "5.0",
|
60 |
-
"--save-path", OUTPUT_BASEPATH,
|
61 |
-
"--use-fp8",
|
62 |
-
"--cpu-offload",
|
63 |
-
"--infer-min"
|
64 |
-
]
|
65 |
-
|
66 |
-
env = os.environ.copy()
|
67 |
-
env["PYTHONPATH"] = "./"
|
68 |
-
env["MODEL_BASE"] = WEIGHTS_DIR
|
69 |
-
env["CPU_OFFLOAD"] = "1"
|
70 |
-
env["CUDA_VISIBLE_DEVICES"] = "0"
|
71 |
-
|
72 |
-
print("🎬 Running sample_gpu_poor.py ...")
|
73 |
-
proc = subprocess.run(cmd, env=env)
|
74 |
-
if proc.returncode != 0:
|
75 |
-
print("❌ sample_gpu_poor.py failed.")
|
76 |
-
sys.exit(1)
|
77 |
-
print("✅ sample_gpu_poor.py completed successfully.")
|
78 |
-
|
79 |
-
def main():
|
80 |
-
download_ckpts()
|
81 |
-
run_sample_gpu_poor()
|
82 |
|
83 |
if __name__ == "__main__":
|
84 |
-
|
|
|
|
|
|
1 |
import os
|
2 |
+
from huggingface_hub import hf_hub_download
|
3 |
+
|
4 |
+
REPO_ID = "tencent/HunyuanVideo-Avatar"
|
5 |
+
BASE_PATH = "ckpts"
|
6 |
+
LOCAL_BASE = os.path.join(os.getcwd(), "weights", "ckpts")
|
7 |
+
|
8 |
+
# List of essential files/folders to download (you can expand this if needed)
|
9 |
+
ESSENTIAL_PATHS = [
|
10 |
+
# Transformers checkpoints
|
11 |
+
"hunyuan-video-t2v-720p/transformers/mp_rank_00_model_states_fp8.pt",
|
12 |
+
"hunyuan-video-t2v-720p/transformers/mp_rank_00_model_states.pt",
|
13 |
+
"hunyuan-video-t2v-720p/transformers/mp_rank_00_model_states_fp8_map.pt",
|
14 |
+
|
15 |
+
# VAE
|
16 |
+
"hunyuan-video-t2v-720p/vae/config.json",
|
17 |
+
"hunyuan-video-t2v-720p/vae/pytorch_model.pt",
|
18 |
+
|
19 |
+
# llava_llama_image shard files (adjust count if needed)
|
20 |
+
"llava_llama_image/model-00001-of-00004.safetensors",
|
21 |
+
"llava_llama_image/model-00002-of-00004.safetensors",
|
22 |
+
"llava_llama_image/model-00003-of-00004.safetensors",
|
23 |
+
"llava_llama_image/model-00004-of-00004.safetensors",
|
24 |
+
"llava_llama_image/config.json",
|
25 |
+
|
26 |
+
# text_encoder_2
|
27 |
+
"text_encoder_2/config.json",
|
28 |
+
"text_encoder_2/pytorch_model.bin",
|
29 |
+
|
30 |
+
# whisper-tiny
|
31 |
+
"whisper-tiny/config.json",
|
32 |
+
"whisper-tiny/pytorch_model.bin",
|
33 |
+
"whisper-tiny/tokenizer.json",
|
34 |
+
"whisper-tiny/tokenizer_config.json",
|
35 |
+
"whisper-tiny/vocab.json",
|
36 |
+
|
37 |
+
# det_align
|
38 |
+
"det_align/config.json",
|
39 |
+
"det_align/pytorch_model.bin",
|
40 |
+
]
|
41 |
+
|
42 |
+
def download_files():
|
43 |
+
for relative_path in ESSENTIAL_PATHS:
|
44 |
+
source_path = f"{BASE_PATH}/{relative_path}"
|
45 |
+
local_dir = os.path.join(LOCAL_BASE, os.path.dirname(relative_path))
|
46 |
+
os.makedirs(local_dir, exist_ok=True)
|
47 |
+
|
48 |
+
print(f"⬇️ Downloading {source_path} ...")
|
49 |
try:
|
50 |
+
hf_hub_download(
|
51 |
+
repo_id=REPO_ID,
|
52 |
+
filename=source_path,
|
53 |
+
repo_type="model",
|
54 |
+
local_dir=local_dir,
|
55 |
+
local_dir_use_symlinks=False
|
56 |
+
)
|
57 |
+
except Exception as e:
|
58 |
+
print(f"❌ Failed to download {source_path}: {e}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
59 |
|
60 |
if __name__ == "__main__":
|
61 |
+
download_files()
|
62 |
+
print("\n✅ All selected model weights downloaded to:")
|
63 |
+
print(f"{os.path.abspath(LOCAL_BASE)}")
|