lenML/ChatTTS-Forge
301
1import argparse2import logging3import os4 5import dotenv6from fastapi import FastAPI7 8from launch import setup_uvicon_args9from modules.ffmpeg_env import setup_ffmpeg_path10from modules.models_setup import process_model_args, setup_model_args11 12setup_ffmpeg_path()13logging.basicConfig(14 level=os.getenv("LOG_LEVEL", "INFO"),15 format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",16)17 18from modules import config19from modules.api.api_setup import process_api_args, setup_api_args20from modules.api.app_config import app_description, app_title, app_version21from modules.utils.torch_opt import configure_torch_optimizations22 23dotenv.load_dotenv(24 dotenv_path=os.getenv("ENV_FILE", ".env.api"),25)26parser = argparse.ArgumentParser(27 description="Start the FastAPI server with command line arguments"28)29setup_api_args(parser)30setup_model_args(parser)31setup_uvicon_args(parser)32 33args = parser.parse_args()34 35app = FastAPI(36 title=app_title,37 description=app_description,38 version=app_version,39 redoc_url=None if config.runtime_env_vars.no_docs else "/redoc",40 docs_url=None if config.runtime_env_vars.no_docs else "/docs",41)42 43process_model_args(args)44process_api_args(args, app)45 46configure_torch_optimizations()47 