Files
ChatAIBot/main.py
T
2026-05-28 08:42:46 +03:00

40 lines
1.0 KiB
Python

import logging
from contextlib import asynccontextmanager
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
from fastapi.responses import FileResponse
from routers import chat, personas, sessions, characters, images, translate
from database.db import init_db
from services.persona_seed import seed_default_personas
logging.basicConfig(level=logging.INFO, format="%(levelname)s %(name)s: %(message)s")
@asynccontextmanager
async def lifespan(app: FastAPI):
await init_db()
await seed_default_personas()
yield
app = FastAPI(title="AI Chat Bot", lifespan=lifespan)
app.include_router(chat.router)
app.include_router(personas.router)
app.include_router(sessions.router)
app.include_router(characters.router)
app.include_router(images.router)
app.include_router(translate.router)
app.mount("/static", StaticFiles(directory="static"), name="static")
@app.get("/")
async def root():
return FileResponse("static/index.html")
@app.get("/health")
async def health():
return {"status": "ok"}