| import asyncio |
| from python.helpers import runtime, whisper, settings |
| from python.helpers.print_style import PrintStyle |
| from python.helpers import kokoro_tts |
| import models |
|
|
|
|
| async def preload(): |
| PrintStyle().print("Preloading models...") |
| try: |
| set = settings.get_default_settings() |
|
|
| |
| async def preload_whisper(): |
| try: |
| return await whisper.preload(set["stt_model_size"]) |
| except Exception as e: |
| PrintStyle().error(f"Error in preload_whisper: {e}") |
|
|
| |
| async def preload_embedding(): |
| if set["embed_model_provider"].lower() == "huggingface": |
| try: |
| |
| emb_mod = models.get_embedding_model( |
| "huggingface", set["embed_model_name"] |
| ) |
| emb_txt = await emb_mod.aembed_query("test") |
| return emb_txt |
| except Exception as e: |
| PrintStyle().error(f"Error in preload_embedding: {e}") |
|
|
| |
| async def preload_kokoro(): |
| if set["tts_kokoro"]: |
| try: |
| return await kokoro_tts.preload() |
| except Exception as e: |
| PrintStyle().error(f"Error in preload_kokoro: {e}") |
|
|
| |
| tasks = [ |
| preload_embedding(), |
| |
| |
| ] |
|
|
| await asyncio.gather(*tasks, return_exceptions=True) |
| PrintStyle().print("Preload completed") |
| except Exception as e: |
| PrintStyle().error(f"Error in preload: {e}") |
|
|
|
|
| |
| if __name__ == "__main__": |
| PrintStyle().print("Running preload...") |
| runtime.initialize() |
| asyncio.run(preload()) |
|
|