Spaces:
Running
Running
| # download_model.py | |
| # Utility script to download the Dia model and dependencies without starting the server. | |
| import logging | |
| import os | |
| import engine # Import the engine module to trigger its loading logic | |
| # Configure basic logging for the script | |
| logging.basicConfig( | |
| level=logging.INFO, format="%(asctime)s [%(levelname)s] %(message)s" | |
| ) | |
| logger = logging.getLogger("ModelDownloader") | |
| if __name__ == "__main__": | |
| logger.info("--- Starting Dia Model Download ---") | |
| # Ensure cache directory exists (redundant if engine.load_model does it, but safe) | |
| try: | |
| from config import get_model_cache_path | |
| cache_path = get_model_cache_path() | |
| os.makedirs(cache_path, exist_ok=True) | |
| logger.info( | |
| f"Ensured model cache directory exists: {os.path.abspath(cache_path)}" | |
| ) | |
| except Exception as e: | |
| logger.warning(f"Could not ensure cache directory exists: {e}") | |
| # Trigger the model loading function from the engine | |
| logger.info("Calling engine.load_model() to initiate download if necessary...") | |
| success = engine.load_model() | |
| if success: | |
| logger.info("--- Model download/load process completed successfully ---") | |
| else: | |
| logger.error( | |
| "--- Model download/load process failed. Check logs for details. ---" | |
| ) | |
| exit(1) # Exit with error code | |
| logger.info("You can now start the server using 'python server.py'") | |