import logging from contextlib import asynccontextmanager from fastapi import FastAPI from api.db.connection import wait_for_postgres, init_db from api.route import default, llm, pipeline, videos logging.basicConfig( level=logging.INFO, format="%(asctime)s %(levelname)s %(name)s: %(message)s", ) @asynccontextmanager async def lifespan(app: FastAPI): await wait_for_postgres() await init_db() yield app = FastAPI(title="LLM-infa API", version="0.3.0", lifespan=lifespan) app.include_router(default.router) app.include_router(pipeline.router) app.include_router(videos.router) app.include_router(llm.router)