Spaces:
Configuration error
Configuration error
| from datetime import datetime | |
| from os import getenv | |
| from pathlib import Path | |
| from dotenv import load_dotenv | |
| from huggingface_hub import snapshot_download | |
| from loguru import logger | |
| from torch import cuda | |
| load_dotenv() | |
| DEBUG: bool = getenv(key="DEBUG", default="True").lower() == "true" | |
| SERVER_NAME: str = getenv(key="GRADIO_SERVER_NAME", default="localhost") | |
| SERVER_PORT: int = int(getenv(key="GRADIO_SERVER_PORT", default="8080")) | |
| CURRENT_DATE: str = datetime.now().strftime("%Y-%m-%d_%H-%M-%S") | |
| BASE_DIR: Path = Path.cwd() | |
| RESULTS_DIR: Path = BASE_DIR / "results" | |
| LOG_DIR: Path = BASE_DIR / "logs" | |
| CHECKPOINT_DIR: Path = BASE_DIR / "ckpts" | |
| AUDIO_FILE_PATH: Path = RESULTS_DIR / f"{CURRENT_DATE}.wav" | |
| LOG_FILE_PATH: Path = LOG_DIR / f"{CURRENT_DATE}.log" | |
| CUDA_AVAILABLE: bool = cuda.is_available() | |
| FRAMES_RESULT_SAVED_PATH: Path = RESULTS_DIR / "frames" | |
| STAGE_1_CHECKPOINT_PATH = CHECKPOINT_DIR / "stage1.ckpt" | |
| VIDEO_PATH = RESULTS_DIR / f"{CURRENT_DATE}.mp4" | |
| RESULTS_DIR.mkdir(exist_ok=True) | |
| LOG_DIR.mkdir(exist_ok=True) | |
| CHECKPOINT_DIR.mkdir(exist_ok=True) | |
| FRAMES_RESULT_SAVED_PATH.mkdir(exist_ok=True) | |
| MOTION_DIM: int = 20 | |
| TMP_MP4: str = ".tmp.mp4" | |
| logger.add( | |
| sink=LOG_FILE_PATH, | |
| format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}", | |
| colorize=True, | |
| ) | |
| logger.info(f"CUDA Available: {CUDA_AVAILABLE}") | |
| logger.info(f"Current date: {CURRENT_DATE}") | |
| logger.info(f"Base directory: {BASE_DIR}") | |
| logger.info(f"Results directory: {RESULTS_DIR}") | |
| logger.info(f"Log directory: {LOG_DIR}") | |
| logger.info(f"Checkpoint directory: {CHECKPOINT_DIR}") | |
| model_mapping: dict[str, str] = { | |
| "mfcc_pose_only": f"{CHECKPOINT_DIR}/stage2_pose_only_mfcc.ckpt", | |
| "mfcc_full_control": f"{CHECKPOINT_DIR}/stage2_more_controllable_mfcc.ckpt", | |
| "hubert_audio_only": f"{CHECKPOINT_DIR}/stage2_audio_only_hubert.ckpt", | |
| "hubert_pose_only": f"{CHECKPOINT_DIR}/stage2_pose_only_hubert.ckpt", | |
| "hubert_full_control": f"{CHECKPOINT_DIR}/stage2_full_control_hubert.ckpt", | |
| } | |
| snapshot_download( | |
| repo_id="taocode/anitalker_ckpts", local_dir=CHECKPOINT_DIR, repo_type="model" | |
| ) | |