Spaces:
Running
Running
load models only if cuda available
Browse files
app.py
CHANGED
|
@@ -21,29 +21,31 @@ from huggingface_hub import hf_hub_download
|
|
| 21 |
# Ensure 'checkpoint' directory exists
|
| 22 |
os.makedirs("checkpoints", exist_ok=True)
|
| 23 |
|
| 24 |
-
|
| 25 |
-
hf_hub_download(
|
| 26 |
-
repo_id="wenqsun/DimensionX",
|
| 27 |
-
filename="orbit_left_lora_weights.safetensors",
|
| 28 |
-
local_dir="checkpoints"
|
| 29 |
-
)
|
| 30 |
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 36 |
|
| 37 |
-
# Load models in the global scope
|
| 38 |
-
model_id = "THUDM/CogVideoX-5b-I2V"
|
| 39 |
-
transformer = CogVideoXTransformer3DModel.from_pretrained(model_id, subfolder="transformer", torch_dtype=torch.float16).to("cpu")
|
| 40 |
-
text_encoder = T5EncoderModel.from_pretrained(model_id, subfolder="text_encoder", torch_dtype=torch.float16).to("cpu")
|
| 41 |
-
vae = AutoencoderKLCogVideoX.from_pretrained(model_id, subfolder="vae", torch_dtype=torch.float16).to("cpu")
|
| 42 |
-
tokenizer = T5Tokenizer.from_pretrained(model_id, subfolder="tokenizer")
|
| 43 |
-
pipe = CogVideoXImageToVideoPipeline.from_pretrained(model_id, tokenizer=tokenizer, text_encoder=text_encoder, transformer=transformer, vae=vae, torch_dtype=torch.float16)
|
| 44 |
|
| 45 |
-
# Add this near the top after imports
|
| 46 |
-
os.environ['PYTORCH_CUDA_ALLOC_CONF'] = 'expandable_segments:True'
|
| 47 |
|
| 48 |
def calculate_resize_dimensions(width, height, max_width=1024):
|
| 49 |
"""Calculate new dimensions maintaining aspect ratio"""
|
|
|
|
| 21 |
# Ensure 'checkpoint' directory exists
|
| 22 |
os.makedirs("checkpoints", exist_ok=True)
|
| 23 |
|
| 24 |
+
if not is_shared_ui and is_gpu_associated:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 25 |
|
| 26 |
+
# Download LoRA weights
|
| 27 |
+
hf_hub_download(
|
| 28 |
+
repo_id="wenqsun/DimensionX",
|
| 29 |
+
filename="orbit_left_lora_weights.safetensors",
|
| 30 |
+
local_dir="checkpoints"
|
| 31 |
+
)
|
| 32 |
+
|
| 33 |
+
hf_hub_download(
|
| 34 |
+
repo_id="wenqsun/DimensionX",
|
| 35 |
+
filename="orbit_up_lora_weights.safetensors",
|
| 36 |
+
local_dir="checkpoints"
|
| 37 |
+
)
|
| 38 |
|
| 39 |
+
# Load models in the global scope
|
| 40 |
+
model_id = "THUDM/CogVideoX-5b-I2V"
|
| 41 |
+
transformer = CogVideoXTransformer3DModel.from_pretrained(model_id, subfolder="transformer", torch_dtype=torch.float16).to("cpu")
|
| 42 |
+
text_encoder = T5EncoderModel.from_pretrained(model_id, subfolder="text_encoder", torch_dtype=torch.float16).to("cpu")
|
| 43 |
+
vae = AutoencoderKLCogVideoX.from_pretrained(model_id, subfolder="vae", torch_dtype=torch.float16).to("cpu")
|
| 44 |
+
tokenizer = T5Tokenizer.from_pretrained(model_id, subfolder="tokenizer")
|
| 45 |
+
pipe = CogVideoXImageToVideoPipeline.from_pretrained(model_id, tokenizer=tokenizer, text_encoder=text_encoder, transformer=transformer, vae=vae, torch_dtype=torch.float16)
|
| 46 |
|
| 47 |
+
# Add this near the top after imports
|
| 48 |
+
os.environ['PYTORCH_CUDA_ALLOC_CONF'] = 'expandable_segments:True'
|
| 49 |
|
| 50 |
def calculate_resize_dimensions(width, height, max_width=1024):
|
| 51 |
"""Calculate new dimensions maintaining aspect ratio"""
|