from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from api.v1.chat import router as v1_router from core.config import DEEPSEEK_API_KEY from core.llm import create_client app = FastAPI() # --------------------------------------------------------------------------- # Middleware # --------------------------------------------------------------------------- app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) # --------------------------------------------------------------------------- # Singletons (stored on app.state so every module can reach them via Depends) # --------------------------------------------------------------------------- app.state.llm_client = create_client(DEEPSEEK_API_KEY) # --------------------------------------------------------------------------- # Routers # --------------------------------------------------------------------------- app.include_router(v1_router, prefix="/v1")